1. 28 Sep, 2009 1 commit
  2. 26 Aug, 2009 1 commit
  3. 16 Jul, 2009 1 commit
  4. 07 Jul, 2009 3 commits
    • David Brownell's avatar
      davinci_nand chipselect/init cleanup · 154b5484
      David Brownell authored
      
      
      Update chipselect handling in davinci_nand.c so that it can
      handle 2 GByte chips the same way Linux does:  as one device,
      even though it has two halves with independent chip selects.
      For such chips the "nand info" command reports:
      
        Device 0: 2x nand0, sector size 128 KiB
      
      Switch to use the default chipselect function unless the board
      really needs its own.  The logic for the Sonata board moves out
      of the driver into board-specific code.  (Which doesn't affect
      current build breakage if its NAND support is enabled...)
      Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      154b5484
    • David Brownell's avatar
      davinci_nand: cleanup II (CONFIG_SYS_DAVINCI_BROKEN_ECC) · 6e29ed8e
      David Brownell authored
      
      
      Remove CONFIG_SYS_DAVINCI_BROKEN_ECC option.  It's not just nasty;
      it's also unused by any current boards, and doesn't even match the
      main U-Boot distributions from TI (which use soft ECC, or 4-bit ECC
      on newer chips that support it).
      
      DaVinci GIT kernels since 2.6.24, and mainline Linux since 2.6.30,
      match non-BROKEN code paths for 1-bit HW ECC.  The BROKEN code paths
      do seem to partially match what MontaVista/TI kernels (4.0/2.6.10,
      and 5.0/2.6.18) do ... but only for small pages.  Large page support
      is really broken (and it's unclear just what software it was trying
      to match!), and the ECC layout was making three more bytes available
      for use by filesystem (or whatever) code.
      
      Since this option itself seems broken, remove it.  Add a comment
      about the MV/TI compat issue, and the most straightforward way to
      address it (should someone really need to solve it).
      Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      6e29ed8e
    • David Brownell's avatar
      davinci_nand: cleanup I (minor) · fcb77477
      David Brownell authored
      
      
      Minor cleanup for DaVinci NAND code:
      
       - Use I/O addresses from nand_chip; CONFIG_SYS_NAND_BASE won't
         be defined when there are multiple chipselect lines in use
         (as with common 2 GByte chips).
      
       - Cleanup handling of EMIF control registers
          * Only need one pointer pointing to them
          * Remove incorrect and unused struct supersetting them
      
       - Use the standard waitfunc; we don't need a custom version
      
       - Partial legacy cleanup:
          * Don't initialize every board like it's a DM6446 EVM
          * #ifdef a bit more code for BROKEN_ECC
      
      Sanity checked with small page NAND on dm355 and dm6446 EVMs;
      and large page on dm355 EVM (packaged as two devices, not one).
      Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      fcb77477
  5. 06 Jul, 2009 1 commit
    • Thomas Lange's avatar
      ARM DaVinci: EMIF settings · d583ef51
      Thomas Lange authored
      
      
      NAND module should not modify EMIF registers unrelated to CS2
      that is used for NAND, i.e. do not modify EWAIT config register
      or registers for other Chip Selects.
      
      Without this patch, EMIF configurations made in board_init()
      will be invalidated.
      Signed-off-by: default avatarThomas Lange <thomas@corelatus.se>
      d583ef51
  6. 30 Mar, 2009 1 commit
  7. 18 Oct, 2008 1 commit
  8. 10 Sep, 2008 1 commit
    • Hugo Villeneuve's avatar
      ARM DaVinci: Fix broken HW ECC for large page NAND. · 9b05aa78
      Hugo Villeneuve authored
      
      
      Based on original patch by Bernard Blackham <bernard@largestprime.net>
      
      U-boot's HW ECC support for large page NAND on Davinci is completely
      broken.  Some kernels, such as the 2.6.10 one supported by
      MontaVista for DaVinci, rely upon this broken behaviour as they
      share the same code for ECCs. In the existing scheme, error
      detection *might* work on large page, but error correction
      definitely does not.  Small page ECC correction works, but the
      format is not compatible with the mainline git kernel.
      
      This patch adds ECC code that matches what is currently in the
      Davinci git repository (since NAND support was added in 2.6.24).
      This makes the ECC and OOB layout written by u-boot compatible with
      Linux for both small page and large page devices and fixes ECC
      correction for large page devices.
      
      The old behaviour can be restored by defining the macro
      CFG_DAVINCI_BROKEN_ECC, which is undefined by default.
      Signed-off-by: default avatarHugo Villeneuve <hugo.villeneuve@lyrtech.com>
      Acked-by: default avatarSergey Kubushyn <ksi@koi8.net>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      9b05aa78
  9. 25 Aug, 2008 2 commits
  10. 12 Aug, 2008 5 commits
  11. 09 Jul, 2008 1 commit
  12. 20 May, 2008 1 commit
    • Wolfgang Denk's avatar
      Big white-space cleanup. · 53677ef1
      Wolfgang Denk authored
      
      
      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: default avatarWolfgang Denk <wd@denx.de>
      53677ef1
  13. 11 Apr, 2008 1 commit
  14. 30 Mar, 2008 1 commit
  15. 10 Aug, 2007 1 commit
    • Sergey Kubushyn's avatar
      [ARM] TI DaVinci support, hopefully final · c74b2108
      Sergey Kubushyn authored
      Add support for the following DaVinci boards:
      - DV_EVM
      - SCHMOOGIE
      - SONATA
      
      Changes:
      
      - Split into separate board directories
      - Removed changes to MTD_DEBUG (or whatever it's called)
      - New CONFIG_CMD party line followed
      - Some cosmetic fixes, cleanup etc.
      - Patches against the latest U-Boot tree as of now.
      - Fixed CONFIG_CMD_NET in net files.
      - Fixed CONFIG_CMD_EEPROM for schmoogie.
      - Made sure it compiles and works (forceenv() link problem) on SCHMOOGIE and
         DV_EVM. Can't check if it works on SONATA, don't have a board any more,
         but it at least compiles.
      
      Here is an excerpt from session log on SCHMOOGIE...
      
      U-Boot 1.2.0-g6c33c785
      
      -dirty (Aug  7 2007 - 13:07:17)
      
      DRAM:  128 MB
      NAND:  128 MiB
      In:    serial
      Out:   serial
      Err:   serial
      ARM Clock : 297MHz
      DDR Clock : 162MHz
      ETH PHY   : DP83848 @ 0x01
      U-Boot > iprobe
      Valid chip addresses: 1B 38 3A 3D 3F 50 5D 6F
      U-Boot > ping 192.168.253.10
      host 192.168.253.10 is alive
      U-Boot >
      Signed-off-by: default avatarSergey Kubushyn <ksi@koi8.net>
      Acked-by: default avatarDirk Behme <dirk.behme@gmail.com>
      Acked-by: default avatarZach Sadecki <Zach.Sadecki@ripcode.com>
      Acked-by: default avatarStefan Roese <sr@denx.de>
      c74b2108