[PATCH v1 4/9] powerpc: Convert to physical address DMA mapping

Jason Gunthorpe jgg at nvidia.com
Sun Oct 5 07:02:04 AEDT 2025


On Sat, Oct 04, 2025 at 08:19:40AM +0200, Christophe Leroy wrote:
> 
> 
> Le 03/10/2025 à 18:35, Jason Gunthorpe a écrit :
> > On Sun, Sep 28, 2025 at 06:02:24PM +0300, Leon Romanovsky wrote:
> > > From: Leon Romanovsky <leonro at nvidia.com>
> > > 
> > > Adapt PowerPC DMA to use physical addresses in order to prepare code
> > > to removal .map_page and .unmap_page.
> > > 
> > > Signed-off-by: Leon Romanovsky <leonro at nvidia.com>
> > > ---
> > >   arch/powerpc/include/asm/iommu.h         |  8 +++---
> > >   arch/powerpc/kernel/dma-iommu.c          | 22 +++++++---------
> > >   arch/powerpc/kernel/iommu.c              | 14 +++++-----
> > >   arch/powerpc/platforms/ps3/system-bus.c  | 33 ++++++++++++++----------
> > >   arch/powerpc/platforms/pseries/ibmebus.c | 15 ++++++-----
> > >   arch/powerpc/platforms/pseries/vio.c     | 21 ++++++++-------
> > >   6 files changed, 60 insertions(+), 53 deletions(-)
> > 
> > I think this is good enough for PPC anything more looks quite hard
> 
> Can you tell what you have in mind ? What more would be interesting to do
> but looks hard ? Maybe it can be a follow-up change ?

The phys_addr_t should be pushed down through the ops function pointer
and only the implementations that need the vaddr should call
virt_to_phys()

Ie try to avoid doing phys -> virt -> phys as it is not efficient.

Jason


More information about the Linuxppc-dev mailing list