[U-Boot-Users] Re: MPPC8560ADS and U-Boot 1.1.1 problems ?
Yuli Barcohen
yuli at arabellasw.com
Tue Jun 29 10:13:11 CEST 2004
>>>>> Scott Harper writes:
Scott> I am working with the MPPC8540ADS and I am having problems.
Scott> I have followed the discussion about the MPPC8560ADS and have
Scott> tried the top of the CVS tree.
Scott> I have the following undefined. Note I have defined these in
Scott> include/asm-ppc/processor.h
Scott> #define SVR_MAJ SVR_MJREV
Scott> #define SVR_MIN SVR_MNREV
Scott> #define SVR_8540 0x80300010
Scott> #define SVR_8560 0x80700010
Scott> #define SVR_8541 0x80b00010 // Just guesses
Scott> #define SVR_8555 0x80f00010 // Just guesses
Scott> #define PVR_85xx_REV1 0x80200010
Scott> #define PVR_85xx_REV2 0x80200020
Scott> #define PVR_85xx 0x80200020
Scott> My problem is that I am stuck looping through at 0xfff81400
Scott> <DataTLBError>
Scott> I have other software working on the board so I am pretty sure
Scott> that the board works. My chip is a REV2.
Scott> I would appreciate any help any one has.
Jon> Excellent. So you have applied the patch of 17-June-2004 as well,
Jon> right? It is necessary as the top-of-CVS is broken and will not
Jon> compile as it is now.
Wolfgang already described the patch when tried to apply it so I doubt
it would help. I work with MPC8560ADS and I managed to get working
U-Boot from the CVS top with some changes. Maybe some of the changes are
included in the patch, I didn't check. It looks like they can be
relevant for 8540 too but I haven't got the hardware to verify this
assumption. First of all, I changed the memory map to make it consistent
with the README, i.e.
#define CFG_CCSRBAR 0xE0000000
#define CFG_LBC_SDRAM_BASE 0xf0000000
#define CFG_PCI_MEM_BASE 0x80000000
#define CFG_PCI_MEM_PHYS 0x80000000
#define CFG_PCI_MEM_SIZE 0x20000000
#define CFG_PCI_IO_BASE 0xe2000000
#define CFG_RAPID_IO_BASE 0xc0000000
Then I noted that TSEC initialisation (tsec_initialize in
cpu/mpc85xx/tsec.c) is defined with two parameters but called with
one. I just hard-coded the missing parameter (TSEC number) to zero. I
also commented out all the version check code in checkcpu
function. After making these changes, I was able to compile and run the
U-Boot ... until the first saveenv command. A quick look into the
configuration file showed that the environment is placed in the middle
of the U-Boot's code. I moved the environment to (CFG_MONITOR_BASE -
0x40000) and now it's OK.
A note about building the U-Boot. I don't what tool chain you're using
but if it's not Freescale-tweaked GCC 2.95 you probably will have a
problem because target CPU type is missing from cpu/mpc85xx/config.mk. I
added `-mcpu=8540 -mno-string' to PLATFORM_RELFLAGS.
I could submit a patch cleaning up all this (and many other things) but
IMHO preparing a patch against current CVS top does not make sense
because Jon is working on a new version of his patch. We'll be just
removing each other's code.
Hope this helps,
--
========================================================================
Yuli Barcohen | Phone +972-9-765-1788 | Software Project Leader
yuli at arabellasw.com | Fax +972-9-765-7494 | Arabella Software, Israel
========================================================================
More information about the U-Boot
mailing list