mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-04 05:36:43 +07:00
12d04eef92
This patch completely refactors DMA operations for 64 bits powerpc. 32 bits is untouched for now. We use the new dev_archdata structure to add the dma operations pointer and associated data to struct device. While at it, we also add the OF node pointer and numa node. In the future, we might want to look into merging that with pci_dn as well. The old vio, pci-iommu and pci-direct DMA ops are gone. They are now replaced by a set of generic iommu and direct DMA ops (non PCI specific) that can be used by bus types. The toplevel implementation is now inline. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
38 lines
1.3 KiB
C
38 lines
1.3 KiB
C
#ifndef _ASM_POWERPC_ISERIES_IOMMU_H
|
|
#define _ASM_POWERPC_ISERIES_IOMMU_H
|
|
|
|
/*
|
|
* Copyright (C) 2005 Stephen Rothwell, IBM Corporation
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the:
|
|
* Free Software Foundation, Inc.,
|
|
* 59 Temple Place, Suite 330,
|
|
* Boston, MA 02111-1307 USA
|
|
*/
|
|
|
|
struct pci_dev;
|
|
struct device_node;
|
|
struct iommu_table;
|
|
|
|
/* Creates table for an individual device node */
|
|
extern void iommu_devnode_init_iSeries(struct pci_dev *pdev,
|
|
struct device_node *dn);
|
|
|
|
/* Get table parameters from HV */
|
|
extern void iommu_table_getparms_iSeries(unsigned long busno,
|
|
unsigned char slotno, unsigned char virtbus,
|
|
struct iommu_table *tbl);
|
|
|
|
#endif /* _ASM_POWERPC_ISERIES_IOMMU_H */
|