lkml.org 
[lkml]   [2001]   [Sep]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Question about ioremap and io_remap_page_range
At 8:33 AM -0600 2001-09-27, Jonathan Corbet wrote:
> > > VIRT_ADDR = ioremap(BUS_ADDR); to map a section of PCI memory, and
>> > X_ADDR = virt_to_phys(VIRT_ADDR);
>>
>> i'd suggest to read Documentation/DMA-mapping.txt in any recent kernel
>> source, the bus_to_virt()/virt_to_phys() interface is obsolete and has
>> been replaced by the pci_alloc_*/pci_map_*/pci_free_*() dynamic
>> DMA-mapping API.
>
>...or, of course, _Linux_Device_Drivers_, Second Edition, available online
>at http://www.xml.com/ldd/chapter/book/index.html. The DMA chapter covers
>this API as well.

That chapter says, in small part,

>Based on this discussion, you might also want to map addresses
>returned by ioremap to user space. This mapping is easily
>accomplished because you can use remap_page_range directly, without
>implementing methods for virtual memory areas. In other words,
>remap_page_range is already usable for building new page tables that
>map I/O memory to user space

Are you suggesting that ioremap() objects can be passed to
remap_page_range()? How can that be valid?


Also, there's an html conversion error:

> if (offset >= _ _pa(high_memory) || (filp->f_flags & O_SYNC))

Looks like   got translated to  
--
/Jonathan Lundell.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:03    [W:0.076 / U:1.404 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site