MPC8240 PTE setup

Robert Morin rmorin at miranda.com
Tue Apr 23 05:08:10 EST 2002


Hi Dan,

> > I have based my work on the Linux kernel 2.5.8 ....
>
> You don't want to use that yet :-)  Use the 2_4_devel kernel.
>

Ok, I will look to it.

> > ....I can see with my BDI2000 that the
> > MMU is not translating correctly virtual addresses to physical
> > addresses.
>
> The mmu always translates correctly, your programming of it
> is probably incorrect :-)
>

This is my problem and I think it's related to the pSOS bootloader
but I have difficulties pointing to the problem.

> > .... I made a patch to use a BAT instead of PTE but
> > this cause only to move the problem further upstream
>
> What BAT did you change, and to what?
>

In my file mxhost2_setup.c in function mxhost2_map_io(), I've
added:

    io_block_mapping(0xfdf00000, 0xfdf00000, 0x00100000, _PAGE_IO );

as a work-around and modify also my find_bridge() to prevent using the
ioremap_base.


> > I have check the parameter passed with ioremap() and it's
> > ok. With the BDI2000, I get this with the phys command:
> >
> > 	phys 0xfdfd0000          (virtual address returned by ioremap)
> >
> > 	PHYS = 0xfffff000	END = 0xffffffff
> > instead of
> > 	PHYS 0xfdf40000 END = 0xfdffffff
>
> So, you did 'virt = ioremap(0xfdf40000)' and virt == 0xfdfd0000?
> Where did you call ioremap()?  Are you trying to remap the EUMB registers
> again (this is done in mpc10x_common.c for 82xx boards)?
>

I made my trace inside the mpc10x_common.c to have this result. I am
not making changes in the kernel, I want to keep as is as much as
possible.

For the moment, I will move my platform into 2_4_devel to see if
the situation improved.

>
> 	-- Dan

Thanks.

Robert

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/





More information about the Linuxppc-embedded mailing list