By Jonathan Corbet
April 17, 2013
The -rc7 stage of the kernel development cycle is normally considered to be
the wrong time to add new driver API functions; most developers attempting
such a thing could expect to get a response that is less than 100%
encouraging. But, if you're Linus, you can get away with such things. So,
after looking at too much messy driver code, Linus
added a new helper function for drivers that
need to map a physical memory range into a user-space process's memory:
int vm_iomap_memory(struct vm_area_struct *vma, phys_addr_t start,
unsigned long len);
This function is a wrapper around io_remap_pfn_range() that takes
care of a number of details specific to the virtual memory subsystem so
that driver code need not worry about them. No drivers have been converted
for 3.9, but one can expect that process to begin in the 3.10 cycle.
(
Log in to post comments)