@@ -1650,7 +1650,8 @@ static bool enable_ddw(struct pci_dev *dev, struct device_node *pdn)
1650
1650
iommu_table_setparms_common (newtbl , pci -> phb -> bus -> number , create .liobn ,
1651
1651
dynamic_addr , dynamic_len , page_shift , NULL ,
1652
1652
& iommu_table_lpar_multi_ops );
1653
- iommu_init_table (newtbl , pci -> phb -> node , start , end );
1653
+ iommu_init_table (newtbl , pci -> phb -> node ,
1654
+ start >> page_shift , end >> page_shift );
1654
1655
1655
1656
pci -> table_group -> tables [default_win_removed ? 0 : 1 ] = newtbl ;
1656
1657
@@ -2065,7 +2066,9 @@ static long spapr_tce_create_table(struct iommu_table_group *table_group, int nu
2065
2066
offset , 1UL << window_shift ,
2066
2067
IOMMU_PAGE_SHIFT_4K , NULL ,
2067
2068
& iommu_table_lpar_multi_ops );
2068
- iommu_init_table (tbl , pci -> phb -> node , start , end );
2069
+ iommu_init_table (tbl , pci -> phb -> node ,
2070
+ start >> IOMMU_PAGE_SHIFT_4K ,
2071
+ end >> IOMMU_PAGE_SHIFT_4K );
2069
2072
2070
2073
table_group -> tables [0 ] = tbl ;
2071
2074
@@ -2136,7 +2139,7 @@ static long spapr_tce_create_table(struct iommu_table_group *table_group, int nu
2136
2139
/* New table for using DDW instead of the default DMA window */
2137
2140
iommu_table_setparms_common (tbl , pci -> phb -> bus -> number , create .liobn , win_addr ,
2138
2141
1UL << len , page_shift , NULL , & iommu_table_lpar_multi_ops );
2139
- iommu_init_table (tbl , pci -> phb -> node , start , end );
2142
+ iommu_init_table (tbl , pci -> phb -> node , start >> page_shift , end >> page_shift );
2140
2143
2141
2144
pci -> table_group -> tables [num ] = tbl ;
2142
2145
set_iommu_table_base (& pdev -> dev , tbl );
0 commit comments