diff options
| -rw-r--r-- | arch/powerpc/platforms/iseries/iommu.c | 2 | ||||
| -rw-r--r-- | arch/powerpc/platforms/iseries/iommu.h | 35 | ||||
| -rw-r--r-- | arch/powerpc/platforms/iseries/pci.c | 1 | ||||
| -rw-r--r-- | arch/powerpc/platforms/iseries/vio.c | 2 | ||||
| -rw-r--r-- | include/asm-powerpc/iommu.h | 19 |
5 files changed, 40 insertions, 19 deletions
diff --git a/arch/powerpc/platforms/iseries/iommu.c b/arch/powerpc/platforms/iseries/iommu.c index 2b54eeb2c899..bea0b703f409 100644 --- a/arch/powerpc/platforms/iseries/iommu.c +++ b/arch/powerpc/platforms/iseries/iommu.c | |||
| @@ -34,6 +34,8 @@ | |||
| 34 | #include <asm/pci-bridge.h> | 34 | #include <asm/pci-bridge.h> |
| 35 | #include <asm/iseries/hv_call_xm.h> | 35 | #include <asm/iseries/hv_call_xm.h> |
| 36 | 36 | ||
| 37 | #include "iommu.h" | ||
| 38 | |||
| 37 | extern struct list_head iSeries_Global_Device_List; | 39 | extern struct list_head iSeries_Global_Device_List; |
| 38 | 40 | ||
| 39 | 41 | ||
diff --git a/arch/powerpc/platforms/iseries/iommu.h b/arch/powerpc/platforms/iseries/iommu.h new file mode 100644 index 000000000000..cb5658fbe657 --- /dev/null +++ b/arch/powerpc/platforms/iseries/iommu.h | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | #ifndef _PLATFORMS_ISERIES_IOMMU_H | ||
| 2 | #define _PLATFORMS_ISERIES_IOMMU_H | ||
| 3 | |||
| 4 | /* | ||
| 5 | * Copyright (C) 2005 Stephen Rothwell, IBM Corporation | ||
| 6 | * | ||
| 7 | * This program is free software; you can redistribute it and/or modify | ||
| 8 | * it under the terms of the GNU General Public License as published by | ||
| 9 | * the Free Software Foundation; either version 2 of the License, or | ||
| 10 | * (at your option) any later version. | ||
| 11 | * | ||
| 12 | * This program is distributed in the hope that it will be useful, | ||
| 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | * GNU General Public License for more details. | ||
| 16 | * | ||
| 17 | * You should have received a copy of the GNU General Public License | ||
| 18 | * along with this program; if not, write to the: | ||
| 19 | * Free Software Foundation, Inc., | ||
| 20 | * 59 Temple Place, Suite 330, | ||
| 21 | * Boston, MA 02111-1307 USA | ||
| 22 | */ | ||
| 23 | |||
| 24 | struct device_node; | ||
| 25 | struct iommu_table; | ||
| 26 | |||
| 27 | /* Creates table for an individual device node */ | ||
| 28 | extern void iommu_devnode_init_iSeries(struct device_node *dn); | ||
| 29 | |||
| 30 | /* Get table parameters from HV */ | ||
| 31 | extern void iommu_table_getparms_iSeries(unsigned long busno, | ||
| 32 | unsigned char slotno, unsigned char virtbus, | ||
| 33 | struct iommu_table *tbl); | ||
| 34 | |||
| 35 | #endif /* _PLATFORMS_ISERIES_IOMMU_H */ | ||
diff --git a/arch/powerpc/platforms/iseries/pci.c b/arch/powerpc/platforms/iseries/pci.c index dafc518fbb83..a19833b880e4 100644 --- a/arch/powerpc/platforms/iseries/pci.c +++ b/arch/powerpc/platforms/iseries/pci.c | |||
| @@ -43,6 +43,7 @@ | |||
| 43 | #include "irq.h" | 43 | #include "irq.h" |
| 44 | #include "pci.h" | 44 | #include "pci.h" |
| 45 | #include "call_pci.h" | 45 | #include "call_pci.h" |
| 46 | #include "iommu.h" | ||
| 46 | 47 | ||
| 47 | extern unsigned long io_page_mask; | 48 | extern unsigned long io_page_mask; |
| 48 | 49 | ||
diff --git a/arch/powerpc/platforms/iseries/vio.c b/arch/powerpc/platforms/iseries/vio.c index 384360ee06ec..ad36ab0639f0 100644 --- a/arch/powerpc/platforms/iseries/vio.c +++ b/arch/powerpc/platforms/iseries/vio.c | |||
| @@ -22,6 +22,8 @@ | |||
| 22 | #include <asm/iseries/hv_lp_config.h> | 22 | #include <asm/iseries/hv_lp_config.h> |
| 23 | #include <asm/iseries/hv_call_xm.h> | 23 | #include <asm/iseries/hv_call_xm.h> |
| 24 | 24 | ||
| 25 | #include "iommu.h" | ||
| 26 | |||
| 25 | struct device *iSeries_vio_dev = &vio_bus_device.dev; | 27 | struct device *iSeries_vio_dev = &vio_bus_device.dev; |
| 26 | EXPORT_SYMBOL(iSeries_vio_dev); | 28 | EXPORT_SYMBOL(iSeries_vio_dev); |
| 27 | 29 | ||
diff --git a/include/asm-powerpc/iommu.h b/include/asm-powerpc/iommu.h index 8a8393e50774..d5677cbec200 100644 --- a/include/asm-powerpc/iommu.h +++ b/include/asm-powerpc/iommu.h | |||
| @@ -64,25 +64,6 @@ extern void iommu_free_table(struct device_node *dn); | |||
| 64 | 64 | ||
| 65 | #endif /* CONFIG_PPC_MULTIPLATFORM */ | 65 | #endif /* CONFIG_PPC_MULTIPLATFORM */ |
| 66 | 66 | ||
| 67 | #ifdef CONFIG_PPC_PSERIES | ||
| 68 | |||
| 69 | /* Creates table for an individual device node */ | ||
| 70 | extern void iommu_devnode_init_pSeries(struct device_node *dn); | ||
| 71 | |||
| 72 | #endif /* CONFIG_PPC_PSERIES */ | ||
| 73 | |||
| 74 | #ifdef CONFIG_PPC_ISERIES | ||
| 75 | |||
| 76 | /* Creates table for an individual device node */ | ||
| 77 | extern void iommu_devnode_init_iSeries(struct device_node *dn); | ||
| 78 | /* Get table parameters from HV */ | ||
| 79 | extern void iommu_table_getparms_iSeries(unsigned long busno, | ||
| 80 | unsigned char slotno, | ||
| 81 | unsigned char virtbus, | ||
| 82 | struct iommu_table* tbl); | ||
| 83 | |||
| 84 | #endif /* CONFIG_PPC_ISERIES */ | ||
| 85 | |||
| 86 | /* Initializes an iommu_table based in values set in the passed-in | 67 | /* Initializes an iommu_table based in values set in the passed-in |
| 87 | * structure | 68 | * structure |
| 88 | */ | 69 | */ |
