Re: Mapping of Device Physical Address to Kernel Virtual address

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks for your reply. Plz see inline

On Tue, Jul 10, 2012 at 11:17 AM, Philipp Ittershagen <p.ittershagen@xxxxxxxxxxxxxx> wrote:
Hi Prabhu,

On Tue, Jul 10, 2012 at 6:56 AM, Prabhu nath <gprabhunath@xxxxxxxxx> wrote:
> For E.g. I have a device whose physical address range is 0x80008000 to
> 0x80008FFF.
>              Is it possible to map this device physical address to a known
> virtual address range 0xF0008000 to 0xF0008FFF.

I don't think this is possible, because these virtual address ranges
are handled by the kernel VMA system and are allocated dynamically, so
that is not just a bitmask or something to change.

> My hardware configuration has 128 MB of system RAM which will have been
> MAPPED to the Kernel virtual address from 0xC0000000 to 0xC7FFFFFF
>
> Also is it possible to configure the vmalloc kernel virtual address region
> to a fixed range of 128 MB from 0xC8000000 to 0xCFFFFFFF

You could change PAGE_OFFSET. From [1]:


PHYS_OFFSET
        Physical start address of the first bank of RAM.

PAGE_OFFSET
        Virtual start address of the first bank of RAM.  During the kernel
        boot phase, virtual address PAGE_OFFSET will be mapped to physical
        address PHYS_OFFSET, along with any other mappings you supply.
        This should be the same value as TASK_SIZE.


But I'm curious: Why do you want to change it?

      Just wanted to have a constant mapping from PA to VA of devices and wanted to have a separate region for vmalloc. 


Greetings,

  Philipp


[1]: http://www.kernelport.org/defines.html

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux