1. 11 6月, 2008 3 次提交
  2. 04 6月, 2008 5 次提交
    • S
      DTT: Issue one-shot command on AD7414 (LM75 code) to read temp · 4d91d1df
      Stefan Roese 提交于
      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
      incorrect.
      Signed-off-by: NStefan Roese <sr@denx.de>
      4d91d1df
    • H
      SPI Flash subsystem · d25ce7d2
      Haavard Skinnemoen 提交于
      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
      well.
      Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
      d25ce7d2
    • H
      atmel_spi: Driver for the Atmel SPI controller · 60445cb5
      Hans-Christian Egtvedt 提交于
      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: NHaavard Skinnemoen <hskinnemoen@atmel.com>
      60445cb5
    • H
      SPI API improvements · d255bb0e
      Haavard Skinnemoen 提交于
      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
          drivers
        - 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: NHaavard Skinnemoen <hskinnemoen@atmel.com>
      Tested-by: NGuennadi Liakhovetski <lg@denx.de>
      d255bb0e
    • K
      Fix warnings from gcc-4.3.0 build on a ppc host · f979690e
      Kumar Gala 提交于
      * 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: NKumar Gala <galak@kernel.crashing.org>
      f979690e
  3. 29 5月, 2008 1 次提交
    • D
      nand: Correct NAND erase percentage output · 9723bbb4
      Dirk Behme 提交于
      For NAND erase sizes smaller than one NAND erase block, erase
      percentage output becomes grater than 100% e.g.
      
      -- cut --
        > nand info
      Device 0: NAND 64MiB 1,8V 8-bit, sector size 16 KiB
        > nand erase 0x100000 0x2000
      NAND erase: device 0 offset 0x100000, size 0x2000
      Erasing at 0x100000 -- 200% complete.
      OK
        >
      -- cut --
      
      Correct this and give user a warning that more is erased than specified:
      
      -- cut --
        > nand erase 0x100000 0x2000
      NAND erase: device 0 offset 0x100000, size 0x2000
      Warning: Erase size 0x00002000 smaller than one erase block 0x00004000
                 Erasing 0x00004000 instead
      Erasing at 0x100000 -- 100% complete.
      OK
        >
      -- cut --
      Signed-off-by: NDirk Behme <dirk.behme@gmail.com>
      9723bbb4
  4. 27 5月, 2008 1 次提交
  5. 22 5月, 2008 2 次提交
  6. 21 5月, 2008 1 次提交
    • W
      Big white-space cleanup. · 53677ef1
      Wolfgang Denk 提交于
      This commit gets rid of a huge amount of silly white-space issues.
      Especially, all sequences of SPACEs followed by TAB characters get
      removed (unless they appear in print statements).
      
      Also remove all embedded "vim:" and "vi:" statements which hide
      indentation problems.
      Signed-off-by: NWolfgang Denk <wd@denx.de>
      53677ef1
  7. 19 5月, 2008 1 次提交
  8. 12 5月, 2008 1 次提交
  9. 10 5月, 2008 5 次提交
  10. 09 5月, 2008 1 次提交
  11. 04 5月, 2008 4 次提交
  12. 02 5月, 2008 1 次提交
  13. 01 5月, 2008 1 次提交
  14. 29 4月, 2008 3 次提交
  15. 28 4月, 2008 1 次提交
  16. 25 4月, 2008 5 次提交
  17. 24 4月, 2008 3 次提交
  18. 21 4月, 2008 1 次提交