Re: [2.6 patch] mark virt_to_bus/bus_to_virt as __deprecated oni386

From: Arjan van de Ven
Date: Wed Apr 19 2006 - 15:24:09 EST


On Wed, 2006-04-19 at 14:21 -0400, linux-os (Dick Johnson) wrote:
> On Wed, 19 Apr 2006, Adrian Bunk wrote:
>
> > On Wed, Apr 19, 2006 at 08:13:55AM +0300, Muli Ben-Yehuda wrote:
> >> On Wed, Apr 19, 2006 at 12:07:15AM +0200, Adrian Bunk wrote:
> >>> virt_to_bus/bus_to_virt are long deprecated, mark them as __deprecated
> >>> on i386.
> >>
> >> You should probably update Documentation/ while you're at it.
> >
> > Which file under Documentation/ are you referring to?
> >
> >> Also, IIRC Xen uses virt_to_phys to return guest physical addresses
> >> and virt_to_bus to return machine physical addresses, so the
> >> difference is useful at least in some scenarios.
> >
> > Solving this should be easy.
> >
> > And this still doesn't make it right for architecture independent
> > drivers to use virt_to_bus/bus_to_virt.
>
> Then what would you use to return the proper bus address to put
> into a DMA scatter list and, conversely, how would you convert
> those bus addresses into something a virtual mode CPU could
> access? These macros used to be the link that made such driver
> coding architecture independent. You cannot just claim that
> one can't make such conversions anymore. The CPU uses virtual
> addresses and the DMA uses physical (bus) addresses. Do we
> throw away DMA altogether?

since a long time the kernel has proper dma mapping API's for this, in
2.4 it's pci specific in 2.6 it's generic and bus agnostic.


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