Skip to content
Snippets Groups Projects
  1. Jan 21, 2014
    • York Sun's avatar
      powerpc/mpc85xx: Revise workaround for DDR-A003 · 76356eb5
      York Sun authored
      
      Existing workaround only handles one RDIMM on reference design. In case
      of two RDIMMs being used, the workaround requires two separate writes to
      DDR_SDRAM_MD_CNTL register.
      
      This patch also restores two debug registers changed by the workaround.
      
      Signed-off-by: default avatarYork Sun <yorksun@freescale.com>
      CC: Ben Collins <ben.c@servergy.com>
      CC: James Yang <James.Yang@freescale.com>
      76356eb5
  2. Nov 25, 2013
  3. Aug 09, 2013
    • York Sun's avatar
      powerpc/mpc8xxx: Add memory reset control · c63e1370
      York Sun authored
      
      JEDEC spec requires the clocks to be stable before deasserting reset
      signal for RDIMMs. Clocks start when any chip select is enabled and
      clock control register is set. This patch also adds the interface to
      toggle memory reset signal if needed by the boards.
      
      Signed-off-by: default avatarYork Sun <yorksun@freescale.com>
      c63e1370
    • York Sun's avatar
      mpc85xx: Base emulator support · cb93071b
      York Sun authored
      
      Prepare for emulator support for mpc85xx parts.
      Disable DDR training and skip wrlvl_cntl_2 and wrlvl_cntl_3 registers.
      These two registers improve stability but not supported by emulator.
      Add CONFIG_FSL_TBCLK_EXTRA_DIV for possible adjustment to time base.
      
      Signed-off-by: default avatarYork Sun <yorksun@freescale.com>
      cb93071b
  4. May 14, 2013
  5. Nov 27, 2012
    • Andy Fleming's avatar
      8xxx: Change all 8*xx_DDR addresses to 8xxx · e76cd5d4
      Andy Fleming authored
      
      There were a number of shared files that were using
      CONFIG_SYS_MPC85xx_DDR_ADDR, or CONFIG_SYS_MPC86xx_DDR_ADDR, and
      several variants (DDR2, DDR3). A recent patchset added
      85xx-specific ones to code which was used by 86xx systems.
      After reviewing places where these constants were used, and
      noting that the type definitions of the pointers assigned to
      point to those addresses were the same, the cleanest approach
      to fixing this problem was to unify the namespace for the
      85xx, 83xx, and 86xx DDR address definitions.
      
      This patch does:
      
      s/CONFIG_SYS_MPC8.xx_DDR/CONFIG_SYS_MPC8xxx_DDR/g
      
      All 85xx, 86xx, and 83xx have been built with this change.
      
      Signed-off-by: default avatarAndy Fleming <afleming@freescale.com>
      Tested-by: default avatarAndy Fleming <afleming@freescale.com>
      Acked-by: default avatarKim Phillips <kim.phillips@freescale.com>
      e76cd5d4
  6. Oct 22, 2012
  7. Aug 23, 2012
  8. Aug 08, 2012
  9. Nov 29, 2011
    • York Sun's avatar
      powerpc/85xx: Add workaround for erratum A-003474 · 4108508a
      York Sun authored
      
      Erratum A-003474: Internal DDR calibration circuit is not supported
      
      Impact:
      Experience shows no significant benefit to device operation with
      auto-calibration enabled versus it disabled. To ensure consistent timing
      results, Freescale recommends this feature be disabled in future customer
      products. There should be no impact to parts that are already operating
      in the field.
      
      Workaround:
      Prior to setting DDR_SDRAM_CFG[MEM_EN]=1, do the following:
      1. Write a value of 0x0000_0015 to the register at offset
      	CCSRBAR + DDR OFFSET + 0xf30
      2. Write a value of 0x2400_0000 to the register at offset
      	CCSRBAR + DDR OFFSET + 0xf54
      
      Signed-off-by: default avatarYork Sun <yorksun@freescale.com>
      Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
      4108508a
  10. Mar 24, 2011
  11. Feb 03, 2011
  12. Jan 20, 2011
  13. Jul 26, 2010
  14. Apr 21, 2010
  15. Apr 13, 2010
  16. Oct 03, 2009
  17. Sep 08, 2009
  18. Mar 30, 2009
  19. Mar 09, 2009
  20. Feb 17, 2009
  21. Oct 24, 2008
    • Dave Liu's avatar
      85xx: Fix the incorrect register used for DDR erratum1 · ae5f943b
      Dave Liu authored
      
      The 8572 DDR erratum1:
      DDR controller may enter an illegal state when operating
      in 32-bit bus mode with 4-beat bursts.
      
      Description:
      When operating with a 32-bit bus, it is recommended that
      DDR_SDRAM_CFG[8_BE] is cleared when DDR2 memories are used.
      This forces the DDR controller to use 4-beat bursts when
      communicating to the DRAMs. However, an issue exists that
      could lead to data corruption when the DDR controller is
      in 32-bit bus mode while using 4-beat bursts.
      
      Projected Impact:
      If the DDR controller is operating in 32-bit bus mode with
      4-beat bursts, then the controller may enter into a bad state.
      All subsequent reads from memory is corrupted.
      Four-beat bursts with a 32-bit bus only is used with DDR2 memories.
      Therefore, this erratum does not affect DDR3 mode.
      
      Work Arounds:
      To work around this issue, software must set DEBUG_1[31] in
      DDR memory mapped space (CCSRBAR offset + 0x2f00 for DDR_1
      and CCSRBAR offset + 0x6f00 for DDR_2).
      
      Currenlty, the code is using incorrect register DDR_SDRAM_CFG_2
      as condition, but it should be DDR_SDRAM_CFG register.
      
      Signed-off-by: default avatarDave Liu <daveliu@freescale.com>
      ae5f943b
  22. Oct 18, 2008
  23. Aug 27, 2008
Loading