[U-Boot-Users] Unexpected crash in init_baudrate

I am porting U-Boot over to a new product running an MPC855T processor, 512KB of flash, 16MB of SDRAM, and a 32KB Simtek NVRAM. I have the board booting up to the point where it tries to read the baudrate for the RS-232 port (init_baudrate). When it goes into the getenv_r function from within init_baudrate, it seems to eventually crash before it comes back with an answer. The system seems to read from the NVRAM fine when it boots and runs crc32 on it. It also crashes if I change CFG_ENV_SIZE to 0x4 and force it to read the default values (env_get_char_init). Does anyone have any ideas as to what can be causing this? I'm going to keep poking around myself, but I just wanted to see if anyone else has had a problem like this while porting U-Boot.
Thanks in advance, Jeff Stevens
__________________________________ Do you Yahoo!? Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes http://hotjobs.sweepstakes.yahoo.com/signingbonus

In message 20040107215219.40742.qmail@web41413.mail.yahoo.com you wrote:
I am porting U-Boot over to a new product running an MPC855T processor, 512KB of flash, 16MB of SDRAM, and a 32KB Simtek NVRAM. I have the board booting up to the point where it tries to read the baudrate for the
Remember that at this time there is just the (small) stack: no writable data segment, no standard C global data.
RS-232 port (init_baudrate). When it goes into the getenv_r function from within init_baudrate, it seems to eventually crash before it comes back with an answer. The system seems to read from the NVRAM fine when it boots and runs crc32 on it. It also crashes if I change CFG_ENV_SIZE to 0x4 and force it to read
Ummm... an environment size of 0x4 = 4 Bytes??? Are you sure??
the default values (env_get_char_init). Does anyone have any ideas as to what can be causing this? I'm going to keep poking around myself, but I just wanted to see if anyone else has had a problem like this while porting U-Boot.
For a start, put the environment in flash. (It's probably more reliable anyway as you can configure for redundand storage).
Best regards,
Wolfgang Denk

My real CFG_ENV_SIZE is 0x3000, however, I made it 0x4 to force it to go pretty much straight to the default configurations to see if that would work, but it didn't. Doesn't U-Boot first go to where you have configured it to use for env (in my case NVRAM) and then if it can't find what it's looking for there it goes to the defaults?
I'm just trying to get this to boot for the first time. After that, I'll worry about getting the env where I want it. I just don't understand why it's crashing. I haven't altered to code in any way here, so I assume I'm configuring something wrong, but I'm not sure what? What configuration parameters should I look at in my board_config.h file?
I'll try putting the env in flash for starters, but eventually I need to put it in NVRAM. The flash I'm working with now will eventually be a backup flash, and there is a bigger flash that will normally be the boot flash. So I'd like to have the env separate in case the user messes up the normal boot flash, they can still boot normally. Thanks for the reply!
Regards, Jeff Stevens
--- Wolfgang Denk wd@denx.de wrote:
In message 20040107215219.40742.qmail@web41413.mail.yahoo.com you wrote:
I am porting U-Boot over to a new product running
an
MPC855T processor, 512KB of flash, 16MB of SDRAM,
and
a 32KB Simtek NVRAM. I have the board booting up
to
the point where it tries to read the baudrate for
the
Remember that at this time there is just the (small) stack: no writable data segment, no standard C global data.
RS-232 port (init_baudrate). When it goes into
the
getenv_r function from within init_baudrate, it
seems
to eventually crash before it comes back with an answer. The system seems to read from the NVRAM
fine
when it boots and runs crc32 on it. It also
crashes
if I change CFG_ENV_SIZE to 0x4 and force it to
read
Ummm... an environment size of 0x4 = 4 Bytes??? Are you sure??
the default values (env_get_char_init). Does
anyone
have any ideas as to what can be causing this?
I'm
going to keep poking around myself, but I just
wanted
to see if anyone else has had a problem like this while porting U-Boot.
For a start, put the environment in flash. (It's probably more reliable anyway as you can configure for redundand storage).
Best regards,
Wolfgang Denk
-- Software Engineering: Embedded and Realtime Systems, Embedded Linux Phone: (+49)-8142-4596-87 Fax: (+49)-8142-4596-88 Email: wd@denx.de Worlds may change, galaxies disintegrate, but a woman always remains a woman. -- Kirk, "The Conscience of the King", stardate 2818.9
-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html _______________________________________________ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users
__________________________________ Do you Yahoo!? Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes http://hotjobs.sweepstakes.yahoo.com/signingbonus

In message 20040108131600.33768.qmail@web41407.mail.yahoo.com you wrote:
My real CFG_ENV_SIZE is 0x3000, however, I made it 0x4 to force it to go pretty much straight to the default configurations to see if that would work, but it didn't. Doesn't U-Boot first go to where you have configured it to use for env (in my case NVRAM) and then if it can't find what it's looking for there it goes to the defaults?
If the NVRAM accesses fail it does not matter if they are failing when trying to read 4 bytes or 12 k bytes.
not sure what? What configuration parameters should I look at in my board_config.h file?
Everything that might be imprtant for NVRAM access.
Best regards,
Wolfgang Denk
participants (2)
-
Jeff Stevens
-
Wolfgang Denk