Kernel 2.6 hangs at m82xx_board_init
alebas at televes.com
alebas at televes.com
Wed Nov 24 06:06:20 EST 2004
Hi all,
I was trying to get kernel 2.6.10-rc1 running in mpc8272ads board,
but i have some problems.
Debugging with BDI2000 + gdb i have arrived to m82xx_board_init call,
which is coded in arch/ppc/platforms/pq2ads.c as:
void __init
m82xx_board_init(void)
{
/* Enable the 2nd UART port */
*(volatile uint *)(BCSR_ADDR + 4) &= ~BCSR1_RS232_EN2;
}
When this code is executed, the kernel jumps directly to another
address, 0xc000984c, which is inside the __delay function, and
execution stays here in an infinite loop.
I get the following disassemble from objdump:
c01bf908 <m82xx_board_init>:
c01bf908: 3d 20 f4 50 lis r9,-2992
c01bf90c: 61 29 00 04 ori r9,r9,4
c01bf910: 80 09 00 00 lwz r0,0(r9) <=======
c01bf914: 54 00 02 0c rlwinm r0,r0,0,8,6
c01bf918: 90 09 00 00 stw r0,0(r9)
c01bf91c: 4e 80 00 20 blr
and the marked instruction is the last one executed before the jump.
Any idea? Why this instruction is braching without control?
As bootloader i am using uboot-1.1.2.
Thanks.
Alex
More information about the Linuxppc-embedded
mailing list