[U-Boot] [PATCH V3 3/6] mpc85xx boards: initdram() cleanup/bugfix
Wolfgang Denk
wd at denx.de
Wed May 4 23:53:41 CEST 2011
Dear Becky Bruce,
In message <1292627879-9027-4-git-send-email-beckyb at kernel.crashing.org> you wrote:
> Correct initdram to use phys_size_t to represent the size of
> dram; instead of changing this all over the place, and correcting
> all the other random errors I've noticed, create a
> common initdram that is used by all non-corenet 85xx parts. Most
> of the initdram() functions were identical, with 2 common differences:
>
> 1) DDR tlbs for the fixed_sdram case were set up in initdram() on
> some boards, and were part of the tlb_table on others. I have
> changed them all over to the initdram() method - we shouldn't
> be accessing dram before this point so they don't need to be
> done sooner, and this seems cleaner.
>
> 2) Parts that require the DDR11 erratum workaround had different
> implementations - I have adopted the version from the Freescale
> errata document. It also looks like some of the versions were
> buggy, and, depending on timing, could have resulted in the
> DDR controller being disabled. This seems bad.
>
> The xpedite boards had a common/fsl_8xxx_ddr.c; with this
> change only the 517 board uses this so I have moved the ddr code
> into that board's directory in xpedite517x.c
>
> The ATUM8548 board didn't appear to set up any tlbs in the
> fixed_sdram case; this patch fixes that.
>
> Signed-off-by: Becky Bruce <beckyb at kernel.crashing.org>
> Tested-by: Paul Gortmaker <paul.gortmaker at windriver.com>
> ---
> arch/powerpc/cpu/mpc85xx/cpu.c | 52 +++++++++++++++++
> arch/powerpc/cpu/mpc8xxx/fsl_lbc.c | 10 +++
> arch/powerpc/include/asm/fsl_ddr_sdram.h | 13 ++++
> arch/powerpc/include/asm/fsl_lbc.h | 4 +
> board/freescale/mpc8536ds/mpc8536ds.c | 21 -------
> board/freescale/mpc8540ads/mpc8540ads.c | 52 +----------------
> board/freescale/mpc8540ads/tlb.c | 19 ------
> board/freescale/mpc8541cds/mpc8541cds.c | 43 --------------
> board/freescale/mpc8544ds/mpc8544ds.c | 17 ------
> board/freescale/mpc8548cds/mpc8548cds.c | 38 ------------
> board/freescale/mpc8555cds/mpc8555cds.c | 45 --------------
> board/freescale/mpc8560ads/mpc8560ads.c | 52 +----------------
> board/freescale/mpc8560ads/tlb.c | 19 ------
> board/freescale/mpc8568mds/mpc8568mds.c | 38 ------------
> board/freescale/mpc8569mds/mpc8569mds.c | 36 ------------
> board/freescale/mpc8572ds/mpc8572ds.c | 19 ------
> board/freescale/p1022ds/p1022ds.c | 13 ----
> board/freescale/p1_p2_rdb/ddr.c | 15 +-----
> board/freescale/p2020ds/p2020ds.c | 34 ++---------
> board/sbc8548/sbc8548.c | 45 +--------------
> board/sbc8548/tlb.c | 34 ++++-------
> board/sbc8560/sbc8560.c | 93 +-----------------------------
> board/socrates/sdram.c | 15 +-----
> board/stx/stxgp3/stxgp3.c | 32 ----------
> board/stx/stxssa/stxssa.c | 33 -----------
> board/tqc/tqm85xx/sdram.c | 37 ------------
> board/tqc/tqm85xx/tlb.c | 47 ---------------
> board/xes/common/Makefile | 2 -
> board/xes/common/fsl_8xxx_ddr.c | 46 ---------------
> board/xes/xpedite517x/xpedite517x.c | 13 ++++
> include/configs/TQM85xx.h | 4 +
> 31 files changed, 121 insertions(+), 820 deletions(-)
> delete mode 100644 board/xes/common/fsl_8xxx_ddr.c
As it turns out, the TQM85xx boards don't boot any more; they hang in
the RAM init code.
git bisect says:
38dba0c2ff685e3f8276a236bd70eaa09c84ead5 is the first bad commit
commit 38dba0c2ff685e3f8276a236bd70eaa09c84ead5
Author: Becky Bruce <beckyb at kernel.crashing.org>
Date: Fri Dec 17 17:17:56 2010 -0600
mpc85xx boards: initdram() cleanup/bugfix
Please help with a fix!
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Life would be so much easier if everyone read the manual.
More information about the U-Boot
mailing list