Static mappings at boottime

Khushhua Mogambo mogambo.kztrj at gmail.com
Sat Jan 30 10:13:42 EST 2010


On Sat, Jan 30, 2010 at 11:55 PM, Russell King - ARM Linux
<linux at arm.linux.org.uk> wrote:
> On Sat, Jan 30, 2010 at 11:47:36PM +0900, Khushhua Mogambo wrote:
>> And pass already mapped Virtual addr(and not phys addr) to device drivers
>>  via IORESOURCE_MEM.
>
> But you can't do this.  Resources take physical addresses, not virtual
> addresses.
 but phys addr and virt addr is both u32 numbers
 how can kernel detect i passes virt and not phys address?

>> i thinks that way i can do most use of virtual address space for ioremap
>> and I can set VMALLOC size to maximum possible. also drivers doesnt have
>> to worry about mapping(and no addr space is mapped twice in two code pieces)
>>
>> is it considered good kernel porting practice? can we face any problem
>> after some times?
>
> Definitely not.
sorry i asks two opposite qeustions same time.
i am hopeful "Definitely not" is reply of second question ^^

> The "simple" approach to your proposal is to map the device space
> statically and then intercept ioremap().  When you detect a request
> for a range which is already statically mapped, then return the
> already mapped virtual address.
i almost forgets the __arch_ioremap. thanks.



More information about the linux-arm-kernel mailing list