L4Linux interface to convert physical address to machine address

Adam Lackorzynski adam at os.inf.tu-dresden.de
Thu Aug 6 00:20:33 CEST 2015


On Wed Aug 05, 2015 at 16:23:10 +0000, Olujide Adeola wrote:
> Apologies if this question has already been answered elsewhere on this mailing list. We are porting our driver to L4Linux but having issues with the page_to_phys() Linux function, what's the L4Linux API to map a VM physical address to a machine address which can be programmed into the DMA registers of a peripheral device on the system bus. Note on terminology, (virtual address <-> physical address <-> machine address).

I need to understand what you are meaning with "VM physical". Is that a
virtual address valid within the Linux kernel? Or is it a physical
address in the context of the Linux kernel? Is the "VM physical" address
the physical address you're actually looking for?

So, virt_to_phys() is doing the conversion from an in-kernel virtual
address to the host physical / DMA address.  page_to_phys() is just a
wrapper and is using virt_to_phys().

Adam                 adam at os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/

More information about the l4-hackers mailing list