powerpc/powernv/npu: Move single TVE handling to NPU PE
[linux-2.6-microblaze.git] / arch / powerpc / platforms / powernv / pci-ioda.c
index 62f4554..2f2dcad 100644 (file)
@@ -2667,23 +2667,14 @@ static struct pnv_ioda_pe *gpe_table_group_to_npe(
 static long pnv_pci_ioda2_npu_set_window(struct iommu_table_group *table_group,
                int num, struct iommu_table *tbl)
 {
-       struct pnv_ioda_pe *npe = gpe_table_group_to_npe(table_group);
-       int num2 = (num == 0) ? 1 : 0;
        long ret = pnv_pci_ioda2_set_window(table_group, num, tbl);
 
        if (ret)
                return ret;
 
-       if (table_group->tables[num2])
-               pnv_npu_unset_window(npe, num2);
-
-       ret = pnv_npu_set_window(npe, num, tbl);
-       if (ret) {
+       ret = pnv_npu_set_window(gpe_table_group_to_npe(table_group), num, tbl);
+       if (ret)
                pnv_pci_ioda2_unset_window(table_group, num);
-               if (table_group->tables[num2])
-                       pnv_npu_set_window(npe, num2,
-                                       table_group->tables[num2]);
-       }
 
        return ret;
 }
@@ -2692,24 +2683,12 @@ static long pnv_pci_ioda2_npu_unset_window(
                struct iommu_table_group *table_group,
                int num)
 {
-       struct pnv_ioda_pe *npe = gpe_table_group_to_npe(table_group);
-       int num2 = (num == 0) ? 1 : 0;
        long ret = pnv_pci_ioda2_unset_window(table_group, num);
 
        if (ret)
                return ret;
 
-       if (!npe->table_group.tables[num])
-               return 0;
-
-       ret = pnv_npu_unset_window(npe, num);
-       if (ret)
-               return ret;
-
-       if (table_group->tables[num2])
-               ret = pnv_npu_set_window(npe, num2, table_group->tables[num2]);
-
-       return ret;
+       return pnv_npu_unset_window(gpe_table_group_to_npe(table_group), num);
 }
 
 static void pnv_ioda2_npu_take_ownership(struct iommu_table_group *table_group)