Hi again, seems that there is a problem with gd - at least your test breaks...
I added unsigned long temp at the end of gd. And added unsigned long a=0; a=gd->temp; gd->temp = 4; to calc_divisor Here is a part of the debugging session: Breakpoint 1, calc_divisor (port=<optimized out>) at serial.c:171 171 a = gd->temp; (gdb) p/x a $1 = 0x0 (gdb) s ^C Program received signal SIGINT, Interrupt. 0x00014010 in ?? () had to use Strg+C to get back a gdb prompt. But if do: p *gd The output seems to be ok (for this stage of the SPL): $3 = {bd = 0x40203df0, flags = 1, baudrate = 115200, have_console = 0, env_addr = 0, env_valid = 0, fb_base = 0, timer_rate_hz = 0, tbl = 0, tbu = 0, timer_reset_value = 0, lastinc = 0, relocaddr = 0, ram_size = 0, mon_len = 0, irq_sp = 0, start_addr_sp = 0, reloc_off = 0, tlb_addr = 0, jt = 0x0, env_buf = '\000' <repeats 31 times>, temp = 0} Ideas? A Problem with the linker script maybe? Regards Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot