[U-Boot] OMAP3/devkit8000 division/multiplication function problems

Simon Schwarz simonschwarzcor at googlemail.com
Tue Jun 14 10:52:30 CEST 2011


Hi List,

as some may know I'am working on an SPL for the devkit8000.
Now I have a problem with the UART init where I hope someone on the
list can help.

My problem is in drivers/serial/serial.c with the function
calc_divisor. With my defines this function is essentially just this:
return (CONFIG_SYS_NS16550_CLK + (gd->baudrate * (MODE_X_DIV / 2))) /
(MODE_X_DIV * gd->baudrate);

(Where MODE_X_DIV=16)

If i try to execute this line (with the step instruction of
gdb/openOCD) the debugger just does not return and I have to use
Strg+c to get a prompt.

Then the PC is 0x4020ffd4 (upper region of SRAM) and the CPSR is 0x600001d7

I think I have some problem with the division/multiplication functions
as there is nothing else in this line which may cause trouble (returns
and function calls worked before).

U-boot is running in SRAM no SDRAM init yet.

Has someone an idea where I can start looking? Maybe a known pitfall
for beginners? More information needed?

Thanks!
Simon


More information about the U-Boot mailing list