Kernel 2.6.10-rc1 yet not running on ads8272
alebas at televes.com
alebas at televes.com
Mon Nov 29 23:51:52 EST 2004
Hi all,
After commenting out the BCSR lines on m82xx_board_init as Dan
suggested, some problem still prevents kernel 2.6.10-rc1 from
running in ads8272 board.
After running MMU_init, next step in head.S is this
/*
* Go back to running unmapped so we can load up new values
* for SDR1 (hash table pointer) and the segment registers
* and change to using our exception vectors.
*/
lis r4,2f at h
ori r4,r4,2f at l
tophys(r4,r4)
li r3,MSR_KERNEL & ~(MSR_IR|MSR_DR)
FIX_SRR1(r3,r5)
mtspr SRR0,r4
mtspr SRR1,r3
SYNC
RFI
/* Load up the kernel context */
2: bl load_up_mmu
which is not clear for me. Here, the execution flow breaks
in RFI and never arrives to "bl load_up_mmu". The value of
SRR0 and SRR1 before RFI is:
8272>rd srr0
srr0: 0x000035f8 13816
8272>rd srr1
srr1: 0x00001002 4098
SRR0=0x35f8 is the EA where "bl load_up_mmu" instruction is
supposed to be.
So now I have no idea about what or why this is not working.
Any help would be very valuable. My knowledge about this
stuff is actually very limited.
Thanks,
Alex Bastos
Dan Malek <dan at embeddededge.com> wrote
> > When this code is executed, the kernel jumps directly to another
> > address, 0xc000984c,
>
> I suspect the MMU isn't yet set up to map the address of the BCSR.
> Access the address causes a fault, and the "jump" you see is the
> result of executing a bunch of exception handler instructions that
> you won't single step due to the exception priorities.
>
> -- Dan
More information about the Linuxppc-embedded
mailing list