1. 03 Jun, 2008 19 commits
    • Peter Tyser's avatar
      Additional fix to readline_into_buffer() with CONFIG_CMDLINE_EDITING before relocating · 35ef877f
      Peter Tyser authored
      Removed unneeded command line history initialization.  Also, the original
      code would access the 'initted' variable before relocation to SDRAM
      which resulted in erratic behavior since the bss is not initialized when
      executing from flash.
      Signed-off-by: default avatarPeter Tyser <ptyser@xes-inc.com>
    • Grant Erickson's avatar
      PPC4xx: Simplified post_word_{load, store} · 22f371b6
      Grant Erickson authored
      This patch simplifies post_word_{load,store} by using the preprocessor
      to eliminate redundant, copy-and-pasted code.
      Signed-off-by: default avatarGrant Erickson <gerickson@nuovations.com>
    • Stefan Roese's avatar
      DTT: Issue one-shot command on AD7414 (LM75 code) to read temp · 4d91d1df
      Stefan Roese authored
      On AD7414 the first value upon bootup is not read correctly.
      This is most likely because of the 800ms update time of the
      temp register in normal update mode. To get current values
      each time we issue the "dtt" command including upon powerup
      we switch into one-short mode.
      This patch fixes the problem on AD7414 equipped boards (Sequoia,
      Canyonlands etc), that temp value printed in the bootup log was
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
    • Haavard Skinnemoen's avatar
      Add support for environment in SPI flash · 8c66497e
      Haavard Skinnemoen authored
      This is pretty incomplete...it doesn't handle reading the environment
      before relocation, it doesn't support redundant environment, and it
      doesn't support embedded environment. But apart from that, it does
      seem to work.
      Signed-off-by: default avatarHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
    • Haavard Skinnemoen's avatar
      SPI Flash: Add "sf" command · b6368467
      Haavard Skinnemoen authored
      This adds a new command, "sf" which can be used to manipulate SPI
      flash. Currently, initialization, reading, writing and erasing is
      Signed-off-by: default avatarHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
    • Haavard Skinnemoen's avatar
      SPI Flash subsystem · d25ce7d2
      Haavard Skinnemoen authored
      This adds a new SPI flash subsystem.
      Currently, only AT45 DataFlash in non-power-of-two mode is supported,
      but some preliminary support for other flash types is in place as
      Signed-off-by: default avatarHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
    • Hans-Christian Egtvedt's avatar
      atmel_spi: Driver for the Atmel SPI controller · 60445cb5
      Hans-Christian Egtvedt authored
      This adds a driver for the SPI controller found on most AT91 and AVR32
      chips, implementing the new SPI API.
      Changed in v4:
        - Update to new API
        - Handle zero-length transfers appropriately. The user may send a
          zero-length SPI transfer with SPI_XFER_END set in order to
          deactivate the chip select after a series of transfers with chip
          select active. This is useful e.g. when polling the status
          register of DataFlash.
      Signed-off-by: default avatarHaavard Skinnemoen <hskinnemoen@atmel.com>
    • Haavard Skinnemoen's avatar
      SPI API improvements · d255bb0e
      Haavard Skinnemoen authored
      This patch gets rid of the spi_chipsel table and adds a handful of new
      functions that makes the SPI layer cleaner and more flexible.
      Instead of the spi_chipsel table, each board that wants to use SPI
      gets to implement three hooks:
        * spi_cs_activate(): Activates the chipselect for a given slave
        * spi_cs_deactivate(): Deactivates the chipselect for a given slave
        * spi_cs_is_valid(): Determines if the given bus/chipselect
          combination can be activated.
      Not all drivers may need those extra functions however. If that's the
      case, the board code may just leave them out (assuming they know what
      the driver needs) or rely on the linker to strip them out (assuming
      --gc-sections is being used.)
      To set up communication parameters for a given slave, the driver needs
      to call spi_setup_slave(). This returns a pointer to an opaque
      spi_slave struct which must be passed as a parameter to subsequent SPI
      calls. This struct can be freed by calling spi_free_slave(), but most
      driver probably don't want to do this.
      Before starting one or more SPI transfers, the driver must call
      spi_claim_bus() to gain exclusive access to the SPI bus and initialize
      the hardware. When all transfers are done, the driver must call
      spi_release_bus() to make the bus available to others, and possibly
      shut down the SPI controller hardware.
      spi_xfer() behaves mostly the same as before, but it now takes a
      spi_slave parameter instead of a spi_chipsel function pointer. It also
      got a new parameter, flags, which is used to specify chip select
      behaviour. This may be extended with other flags in the future.
      This patch has been build-tested on all powerpc and arm boards
      involved. I have not tested NIOS since I don't have a toolchain for it
      installed, so I expect some breakage there even though I've tried
      fixing up everything I could find by visual inspection.
      I have run-time tested this on AVR32 ATNGW100 using the atmel_spi and
      DataFlash drivers posted as a follow-up. I'd like some help testing
      other boards that use the existing SPI API.
      But most of all, I'd like some comments on the new API. Is this stuff
      usable for everyone? If not, why?
      Changed in v4:
        - Build fixes for various boards, drivers and commands
        - Provide common struct spi_slave definition that can be extended by
        - Pass a struct spi_slave * to spi_cs_activate and spi_cs_deactivate
        - Make default bus and mode build-time configurable
        - Override default SPI bus ID and mode on mx32ads and imx31_litekit.
      Changed in v3:
        - Add opaque struct spi_slave for controller-specific data associated
          with a slave.
        - Add spi_claim_bus() and spi_release_bus()
        - Add spi_free_slave()
        - spi_setup() is now called spi_setup_slave() and returns a
          struct spi_slave
        - soft_spi now supports four SPI modes (CPOL|CPHA)
        - Add bus parameter to spi_setup_slave()
        - Convert the new i.MX32 SPI driver
        - Convert the new MC13783 RTC driver
      Changed in v2:
        - Convert the mpc8xxx_spi driver and the mpc8349emds board to the
          new API.
      Signed-off-by: default avatarHaavard Skinnemoen <hskinnemoen@atmel.com>
      Tested-by: default avatarGuennadi Liakhovetski <lg@denx.de>
    • Haavard Skinnemoen's avatar
      Move definition of container_of() to common.h · 28901120
      Haavard Skinnemoen authored
      AVR32 and AT91SAM9 both have their own identical definitions of
      container_of() taken from the Linux kernel. Move it to common.h so
      that all architectures can use it.
      container_of() is already used by some drivers, and will be used
      extensively by the new and improved SPI API.
      Signed-off-by: default avatarHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
    • Haavard Skinnemoen's avatar
      soft_i2c: Pull SDA high before reading · 110e006f
      Haavard Skinnemoen authored
      Spotted by Dean Capindale.
      Systems that support open-drain GPIO properly are allowed provide an
      empty I2C_TRISTATE define. However, this means that we need to be
      careful not to drive SDA low when the slave is expected to respond.
      This patch adds a missing I2C_SDA(1) to read_byte() required to
      tristate the SDA line on systems that support open-drain GPIO.
      Signed-off-by: default avatarHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
    • Kumar Gala's avatar
      Fix warnings from gcc-4.3.0 build on a ppc host · f979690e
      Kumar Gala authored
      * The cfi_flash.c memset fix actual allows the board to boot so there is
        a bit more going on here than just resolving warnings associated with
        uninitialized variables.
      * include/asm/bitops.h:302: warning: '__swab32p' is static but used in
        inline function 'ext2_find_next_zero_bit' which is not static
      Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
    • Becky Bruce's avatar
      MPC512x: Change traps.c to not reference non-addressable memory · 9b124a68
      Becky Bruce authored
      Currently, END_OF_RAM is used by the trap code to determine if
      we should attempt to access the stack pointer or not. However,
      on systems with a lot of RAM, only a subset of the RAM is
      guaranteed to be mapped in and accessible.  Change END_OF_RAM
      to use get_effective_memsize() instead of using the raw ram
      size out of the bd.
      Signed-off-by: default avatarBecky Bruce <becky.bruce@freescale.com>
    • Kumar Gala's avatar
      Make sure common.h is the first include. · 81673e9a
      Kumar Gala authored
      If common.h isn't first we can get CONFIG_ options defined in the
      board config file ignored.  This can cause an issue if any of those
      config options impact the size of types of data structures
      (eg CONFIG_PHYS_64BIT).
      Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
    • Marian Balakowicz's avatar
      Avoid initrd and logbuffer area overlaps · 95d449ad
      Marian Balakowicz authored
      Add logbuffer to reserved LMB areas to prevent initrd allocation
      from overlaping with it.
      Make sure to use correct logbuffer base address.
      Signed-off-by: default avatarMarian Balakowicz <m8@semihalf.com>
    • Sascha Laue's avatar
    • Becky Bruce's avatar
    • Becky Bruce's avatar
      PPC: Add print_bats() to lib_ppc/bat_rw.c · d5b9b8cd
      Becky Bruce authored
      This function prints the values of all the BAT register
      pairs - I needed this for debug earlier this week; adding it to
      lib_ppc so others can use it (and add it to reginfo commands
      if so desired).
      Signed-off-by: default avatarBecky Bruce <becky.bruce@freescale.com>
    • Becky Bruce's avatar
      PPC: Change lib_ppc/bat_rw.c to use high bats · c148f24c
      Becky Bruce authored
      Currently, this code only deals with BATs 0-3, which makes
      it useless on systems that support BATs 4-7.  Add the
      support for these registers.
      Signed-off-by: default avatarBecky Bruce <Becky.bruce@freescale.com>
    • Becky Bruce's avatar
      PPC: Create and use CONFIG_HIGH_BATS · 31d82672
      Becky Bruce authored
      Change all code that conditionally operates on high bat
      registers (that is, BATs 4-7) to look at CONFIG_HIGH_BATS
      instead of the myriad ways this is done now.  Define the option
      for every config for which high bats are supported (and
      enabled by early boot, on parts where they're not always
      Signed-off-by: default avatarBecky Bruce <becky.bruce@freescale.com>
  2. 02 Jun, 2008 5 commits
  3. 29 May, 2008 6 commits
  4. 28 May, 2008 5 commits
  5. 27 May, 2008 5 commits