Please help with the OMAP static mapping mess
Nicolas Pitre
nico at fluxnic.net
Mon Oct 3 18:39:27 EDT 2011
On Mon, 3 Oct 2011, Nicolas Pitre wrote:
> On Mon, 3 Oct 2011, Tony Lindgren wrote:
>
> > * Nicolas Pitre <nico at fluxnic.net> [111003 11:26]:
> > >
> > > Furthermore... there is also a static mapping for physical address
> > > 0x4e000000 using virtual address 0xff100000 which is already reserved
> > > for other purposes i.e. the consistent DMA area. It is not immediately
> > > obvious where this comes from without being intimate with the OMAP code.
> > > Can this be fixed as well i.e. moved elsewhere please?
> >
> > This sounds like a bug somewhere. Which omap are you seeing this on?
>
> OMAP4430 on a Panda board.
>
> Here are the static mappings I'm seeing:
>
> phys = 0x44000000 virt = 0xf8000000 size = 0x100000
> phys = 0x4a000000 virt = 0xfc000000 size = 0x400000
> phys = 0x50000000 virt = 0xf9000000 size = 0x100000
> phys = 0x4c000000 virt = 0xfd100000 size = 0x100000
> phys = 0x4d000000 virt = 0xfe100000 size = 0x100000
> phys = 0x4e000000 virt = 0xff100000 size = 0x100000 <---
> phys = 0x48000000 virt = 0xfa000000 size = 0x400000
> phys = 0x54000000 virt = 0xfe800000 size = 0x800000
It looks like this comes from OMAP44XX_DMM_VIRT.
#define OMAP44XX_DMM_PHYS OMAP44XX_DMM_BASE
/* 0x4e000000 --> 0xfd300000 */
#define OMAP44XX_DMM_VIRT (OMAP44XX_DMM_PHYS + OMAP4_L3_PER_IO_OFFSET)
#define OMAP44XX_DMM_SIZE SZ_1M
The comment suggesting a mapping correspondance is obviously wrong. We have:
#define OMAP44XX_DMM_BASE 0x4e000000
#define OMAP4_L3_PER_IO_OFFSET 0xb1100000
Hence 0x4e000000 + 0xb1100000 = 0xff100000.
Nicolas
>
> It is also possible that I might have screwed something up on my side.
> What is located at 0x4e000000?
>
>
> Nicolas
>
More information about the linux-arm-kernel
mailing list