diff options
Diffstat (limited to 'arch/powerpc/platforms/iseries/iommu.c')
-rw-r--r-- | arch/powerpc/platforms/iseries/iommu.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/arch/powerpc/platforms/iseries/iommu.c b/arch/powerpc/platforms/iseries/iommu.c index e3bd2015f2c9..f4cbbcf8773a 100644 --- a/arch/powerpc/platforms/iseries/iommu.c +++ b/arch/powerpc/platforms/iseries/iommu.c | |||
@@ -88,6 +88,23 @@ static void tce_free_iSeries(struct iommu_table *tbl, long index, long npages) | |||
88 | } | 88 | } |
89 | 89 | ||
90 | /* | 90 | /* |
91 | * Structure passed to HvCallXm_getTceTableParms | ||
92 | */ | ||
93 | struct iommu_table_cb { | ||
94 | unsigned long itc_busno; /* Bus number for this tce table */ | ||
95 | unsigned long itc_start; /* Will be NULL for secondary */ | ||
96 | unsigned long itc_totalsize; /* Size (in pages) of whole table */ | ||
97 | unsigned long itc_offset; /* Index into real tce table of the | ||
98 | start of our section */ | ||
99 | unsigned long itc_size; /* Size (in pages) of our section */ | ||
100 | unsigned long itc_index; /* Index of this tce table */ | ||
101 | unsigned short itc_maxtables; /* Max num of tables for partition */ | ||
102 | unsigned char itc_virtbus; /* Flag to indicate virtual bus */ | ||
103 | unsigned char itc_slotno; /* IOA Tce Slot Index */ | ||
104 | unsigned char itc_rsvd[4]; | ||
105 | }; | ||
106 | |||
107 | /* | ||
91 | * Call Hv with the architected data structure to get TCE table info. | 108 | * Call Hv with the architected data structure to get TCE table info. |
92 | * info. Put the returned data into the Linux representation of the | 109 | * info. Put the returned data into the Linux representation of the |
93 | * TCE table data. | 110 | * TCE table data. |
@@ -162,7 +179,7 @@ void iommu_devnode_init_iSeries(struct device_node *dn) | |||
162 | { | 179 | { |
163 | struct iommu_table *tbl; | 180 | struct iommu_table *tbl; |
164 | struct pci_dn *pdn = PCI_DN(dn); | 181 | struct pci_dn *pdn = PCI_DN(dn); |
165 | u32 *lsn = (u32 *)get_property(dn, "linux,logical-slot-number", NULL); | 182 | const u32 *lsn = get_property(dn, "linux,logical-slot-number", NULL); |
166 | 183 | ||
167 | BUG_ON(lsn == NULL); | 184 | BUG_ON(lsn == NULL); |
168 | 185 | ||