Please help with the OMAP static mapping mess
Nicolas Pitre
nico at fluxnic.net
Tue Oct 4 17:10:36 EDT 2011
On Mon, 3 Oct 2011, Russell King - ARM Linux wrote:
> On Mon, Oct 03, 2011 at 06:09:57PM -0400, Nicolas Pitre wrote:
> > On Mon, 3 Oct 2011, Tony Lindgren wrote:
> > > Having the SRAM base address move around with different sizes also
> > > requires the SoC detection.. Otherwise we can end up mapping wrong
> > > size and end up trying to access secure SRAM that will hang the system.
> > >
> > > The way to fix it is to move SRAM init happen much later so we don't
> > > have to map it early. I guess now we could use ioremap for SRAM,
> > > although we may not want device attributes for the executable code?
> > > Got any suggestions here on how we should map SRAM later on?
> >
> > You can use a variant of ioremap() such as __arm_ioremap() which let you
> > specify the memory attribute.
>
> Just be aware that __arm_ioremap() always ends up with stuff in the
> kernel domain, but that's not what you end up with using create_mapping().
> So I'd prefer it if you didn't suggest that __arm_ioremap() should be used
> with types not listed in asm/io.h.
Well, here we're talking about MT_MEMORY and MT_MEMORY_NONCACHED, and
they are using DOMAIN_KERNEL already. So no difference there.
Which makes me think... with all those architectures intercepting
ioremap calls in order to provide an equivalent static mapping address,
they already get an unexpected domain given that static mappings are
mostly DOMAIN_IO and not DOMAIN_KERNEL as would result from an non
intercepted ioremap call.
Nicolas
More information about the linux-arm-kernel
mailing list