@@ -992,38 +992,6 @@ static void set_dte_bit(struct dev_table_entry *dte, u8 bit)
992
992
dte -> data [i ] |= (1UL << _bit );
993
993
}
994
994
995
- static void __set_dev_entry_bit (struct dev_table_entry * dev_table ,
996
- u16 devid , u8 bit )
997
- {
998
- int i = (bit >> 6 ) & 0x03 ;
999
- int _bit = bit & 0x3f ;
1000
-
1001
- dev_table [devid ].data [i ] |= (1UL << _bit );
1002
- }
1003
-
1004
- static void set_dev_entry_bit (struct amd_iommu * iommu , u16 devid , u8 bit )
1005
- {
1006
- struct dev_table_entry * dev_table = get_dev_table (iommu );
1007
-
1008
- return __set_dev_entry_bit (dev_table , devid , bit );
1009
- }
1010
-
1011
- static int __get_dev_entry_bit (struct dev_table_entry * dev_table ,
1012
- u16 devid , u8 bit )
1013
- {
1014
- int i = (bit >> 6 ) & 0x03 ;
1015
- int _bit = bit & 0x3f ;
1016
-
1017
- return (dev_table [devid ].data [i ] & (1UL << _bit )) >> _bit ;
1018
- }
1019
-
1020
- static int get_dev_entry_bit (struct amd_iommu * iommu , u16 devid , u8 bit )
1021
- {
1022
- struct dev_table_entry * dev_table = get_dev_table (iommu );
1023
-
1024
- return __get_dev_entry_bit (dev_table , devid , bit );
1025
- }
1026
-
1027
995
static bool __copy_device_table (struct amd_iommu * iommu )
1028
996
{
1029
997
u64 int_ctl , int_tab_len , entry = 0 ;
@@ -1179,17 +1147,6 @@ static bool search_ivhd_dte_flags(u16 segid, u16 first, u16 last)
1179
1147
return false;
1180
1148
}
1181
1149
1182
- void amd_iommu_apply_erratum_63 (struct amd_iommu * iommu , u16 devid )
1183
- {
1184
- int sysmgt ;
1185
-
1186
- sysmgt = get_dev_entry_bit (iommu , devid , DEV_ENTRY_SYSMGT1 ) |
1187
- (get_dev_entry_bit (iommu , devid , DEV_ENTRY_SYSMGT2 ) << 1 );
1188
-
1189
- if (sysmgt == 0x01 )
1190
- set_dev_entry_bit (iommu , devid , DEV_ENTRY_IW );
1191
- }
1192
-
1193
1150
/*
1194
1151
* This function takes the device specific flags read from the ACPI
1195
1152
* table and sets up the device table entry with that information
@@ -2637,9 +2594,9 @@ static void init_device_table_dma(struct amd_iommu_pci_seg *pci_seg)
2637
2594
return ;
2638
2595
2639
2596
for (devid = 0 ; devid <= pci_seg -> last_bdf ; ++ devid ) {
2640
- __set_dev_entry_bit ( dev_table , devid , DEV_ENTRY_VALID );
2597
+ set_dte_bit ( & dev_table [ devid ] , DEV_ENTRY_VALID );
2641
2598
if (!amd_iommu_snp_en )
2642
- __set_dev_entry_bit ( dev_table , devid , DEV_ENTRY_TRANSLATION );
2599
+ set_dte_bit ( & dev_table [ devid ] , DEV_ENTRY_TRANSLATION );
2643
2600
}
2644
2601
}
2645
2602
@@ -2667,8 +2624,7 @@ static void init_device_table(void)
2667
2624
2668
2625
for_each_pci_segment (pci_seg ) {
2669
2626
for (devid = 0 ; devid <= pci_seg -> last_bdf ; ++ devid )
2670
- __set_dev_entry_bit (pci_seg -> dev_table ,
2671
- devid , DEV_ENTRY_IRQ_TBL_EN );
2627
+ set_dte_bit (& pci_seg -> dev_table [devid ], DEV_ENTRY_IRQ_TBL_EN );
2672
2628
}
2673
2629
}
2674
2630
0 commit comments