/kernel/linux/linux-5.10/drivers/net/ethernet/intel/igb/ |
H A D | e1000_mac.c | 178 u32 regidx, vfta_delta, vfta, bits; in igb_vfta_set() local 197 vfta = adapter->shadow_vfta[regidx]; in igb_vfta_set() 200 * of vfta and the value we want in the register. Since the diff in igb_vfta_set() 201 * is an XOR mask we can just update vfta using an XOR. in igb_vfta_set() 203 vfta_delta &= vlan_on ? ~vfta : vfta; in igb_vfta_set() 204 vfta ^= vfta_delta; in igb_vfta_set() 240 hw->mac.ops.write_vfta(hw, regidx, vfta); in igb_vfta_set() 271 hw->mac.ops.write_vfta(hw, regidx, vfta); in igb_vfta_set()
|
H A D | igb_main.c | 5112 u32 vfta[VFTA_BLOCK_SIZE] = { 0 }; in igb_scrub_vfta() local 5120 vfta[(vid - vid_start) / 32] |= BIT(vid % 32); in igb_scrub_vfta() 5139 vfta[(vid - vid_start) / 32] |= BIT(vid % 32); in igb_scrub_vfta() 5159 vfta[i] |= adapter->active_vlans[word] >> bits; in igb_scrub_vfta() 5161 hw->mac.ops.write_vfta(hw, vfta_offset + i, vfta[i]); in igb_scrub_vfta() 7175 u32 vfta_mask, vid, vfta; in igb_clear_vf_vfta() local 7196 vfta = adapter->shadow_vfta[vid / 32]; in igb_clear_vf_vfta() 7197 if (vfta & vfta_mask) in igb_clear_vf_vfta() 7198 hw->mac.ops.write_vfta(hw, vid / 32, vfta ^ vfta_mask); in igb_clear_vf_vfta()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/intel/igb/ |
H A D | e1000_mac.c | 178 u32 regidx, vfta_delta, vfta, bits; in igb_vfta_set() local 197 vfta = adapter->shadow_vfta[regidx]; in igb_vfta_set() 200 * of vfta and the value we want in the register. Since the diff in igb_vfta_set() 201 * is an XOR mask we can just update vfta using an XOR. in igb_vfta_set() 203 vfta_delta &= vlan_on ? ~vfta : vfta; in igb_vfta_set() 204 vfta ^= vfta_delta; in igb_vfta_set() 240 hw->mac.ops.write_vfta(hw, regidx, vfta); in igb_vfta_set() 271 hw->mac.ops.write_vfta(hw, regidx, vfta); in igb_vfta_set()
|
H A D | igb_main.c | 5198 u32 vfta[VFTA_BLOCK_SIZE] = { 0 }; in igb_scrub_vfta() local 5206 vfta[(vid - vid_start) / 32] |= BIT(vid % 32); in igb_scrub_vfta() 5225 vfta[(vid - vid_start) / 32] |= BIT(vid % 32); in igb_scrub_vfta() 5245 vfta[i] |= adapter->active_vlans[word] >> bits; in igb_scrub_vfta() 5247 hw->mac.ops.write_vfta(hw, vfta_offset + i, vfta[i]); in igb_scrub_vfta() 7352 u32 vfta_mask, vid, vfta; in igb_clear_vf_vfta() local 7373 vfta = adapter->shadow_vfta[vid / 32]; in igb_clear_vf_vfta() 7374 if (vfta & vfta_mask) in igb_clear_vf_vfta() 7375 hw->mac.ops.write_vfta(hw, vid / 32, vfta ^ vfta_mask); in igb_clear_vf_vfta()
|
/kernel/linux/linux-5.10/drivers/net/ethernet/intel/ixgb/ |
H A D | ixgb_main.c | 2150 u32 vfta, index; in ixgb_vlan_rx_add_vid() local 2155 vfta = IXGB_READ_REG_ARRAY(&adapter->hw, VFTA, index); in ixgb_vlan_rx_add_vid() 2156 vfta |= (1 << (vid & 0x1F)); in ixgb_vlan_rx_add_vid() 2157 ixgb_write_vfta(&adapter->hw, index, vfta); in ixgb_vlan_rx_add_vid() 2167 u32 vfta, index; in ixgb_vlan_rx_kill_vid() local 2172 vfta = IXGB_READ_REG_ARRAY(&adapter->hw, VFTA, index); in ixgb_vlan_rx_kill_vid() 2173 vfta &= ~(1 << (vid & 0x1F)); in ixgb_vlan_rx_kill_vid() 2174 ixgb_write_vfta(&adapter->hw, index, vfta); in ixgb_vlan_rx_kill_vid()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/wangxun/libwx/ |
H A D | wx_hw.c | 1820 u32 bitindex, vfta, targetbit; in wx_set_vfta() local 1839 vfta = wx->mac.vft_shadow[regindex]; in wx_set_vfta() 1841 if (!(vfta & targetbit)) { in wx_set_vfta() 1842 vfta |= targetbit; in wx_set_vfta() 1846 if ((vfta & targetbit)) { in wx_set_vfta() 1847 vfta &= ~targetbit; in wx_set_vfta() 1859 wr32(wx, WX_PSR_VLAN_TBL(regindex), vfta); in wx_set_vfta() 1860 wx->mac.vft_shadow[regindex] = vfta; in wx_set_vfta()
|
/kernel/linux/linux-5.10/drivers/net/ethernet/intel/ixgbe/ |
H A D | ixgbe_common.c | 3121 u32 regidx, vfta_delta, vfta, bits; in ixgbe_set_vfta_generic() local 3141 vfta = IXGBE_READ_REG(hw, IXGBE_VFTA(regidx)); in ixgbe_set_vfta_generic() 3144 * of vfta and the value we want in the register. Since the diff in ixgbe_set_vfta_generic() 3145 * is an XOR mask we can just update vfta using an XOR. in ixgbe_set_vfta_generic() 3147 vfta_delta &= vlan_on ? ~vfta : vfta; in ixgbe_set_vfta_generic() 3148 vfta ^= vfta_delta; in ixgbe_set_vfta_generic() 3185 IXGBE_WRITE_REG(hw, IXGBE_VFTA(regidx), vfta); in ixgbe_set_vfta_generic() 3218 IXGBE_WRITE_REG(hw, IXGBE_VFTA(regidx), vfta); in ixgbe_set_vfta_generic()
|
H A D | ixgbe_sriov.c | 589 u32 bits[2], vlvfb, vid, vfta, vlvf; in ixgbe_clear_vf_vlans() local 624 vfta = IXGBE_READ_REG(hw, IXGBE_VFTA(vid / 32)); in ixgbe_clear_vf_vlans() 625 if (vfta & mask) in ixgbe_clear_vf_vlans() 626 IXGBE_WRITE_REG(hw, IXGBE_VFTA(vid / 32), vfta ^ mask); in ixgbe_clear_vf_vlans()
|
H A D | ixgbe_main.c | 4608 u32 vfta[VFTA_BLOCK_SIZE] = { 0 }; in ixgbe_scrub_vfta() local 4625 vfta[(vid - vid_start) / 32] |= BIT(vid % 32); in ixgbe_scrub_vfta() 4645 vfta[i] |= adapter->active_vlans[word] >> bits; in ixgbe_scrub_vfta() 4647 IXGBE_WRITE_REG(hw, IXGBE_VFTA(vfta_offset + i), vfta[i]); in ixgbe_scrub_vfta()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/intel/ixgbe/ |
H A D | ixgbe_common.c | 3122 u32 regidx, vfta_delta, vfta, bits; in ixgbe_set_vfta_generic() local 3142 vfta = IXGBE_READ_REG(hw, IXGBE_VFTA(regidx)); in ixgbe_set_vfta_generic() 3145 * of vfta and the value we want in the register. Since the diff in ixgbe_set_vfta_generic() 3146 * is an XOR mask we can just update vfta using an XOR. in ixgbe_set_vfta_generic() 3148 vfta_delta &= vlan_on ? ~vfta : vfta; in ixgbe_set_vfta_generic() 3149 vfta ^= vfta_delta; in ixgbe_set_vfta_generic() 3186 IXGBE_WRITE_REG(hw, IXGBE_VFTA(regidx), vfta); in ixgbe_set_vfta_generic() 3219 IXGBE_WRITE_REG(hw, IXGBE_VFTA(regidx), vfta); in ixgbe_set_vfta_generic()
|
H A D | ixgbe_sriov.c | 589 u32 bits[2], vlvfb, vid, vfta, vlvf; in ixgbe_clear_vf_vlans() local 624 vfta = IXGBE_READ_REG(hw, IXGBE_VFTA(vid / 32)); in ixgbe_clear_vf_vlans() 625 if (vfta & mask) in ixgbe_clear_vf_vlans() 626 IXGBE_WRITE_REG(hw, IXGBE_VFTA(vid / 32), vfta ^ mask); in ixgbe_clear_vf_vlans()
|
H A D | ixgbe_main.c | 4600 u32 vfta[VFTA_BLOCK_SIZE] = { 0 }; in ixgbe_scrub_vfta() local 4617 vfta[(vid - vid_start) / 32] |= BIT(vid % 32); in ixgbe_scrub_vfta() 4637 vfta[i] |= adapter->active_vlans[word] >> bits; in ixgbe_scrub_vfta() 4639 IXGBE_WRITE_REG(hw, IXGBE_VFTA(vfta_offset + i), vfta[i]); in ixgbe_scrub_vfta()
|
/kernel/linux/linux-5.10/drivers/net/ethernet/intel/e1000/ |
H A D | e1000_main.c | 4951 u32 vfta, index; in e1000_vlan_rx_add_vid() local 4963 vfta = E1000_READ_REG_ARRAY(hw, VFTA, index); in e1000_vlan_rx_add_vid() 4964 vfta |= (1 << (vid & 0x1F)); in e1000_vlan_rx_add_vid() 4965 e1000_write_vfta(hw, index, vfta); in e1000_vlan_rx_add_vid() 4977 u32 vfta, index; in e1000_vlan_rx_kill_vid() local 4986 vfta = E1000_READ_REG_ARRAY(hw, VFTA, index); in e1000_vlan_rx_kill_vid() 4987 vfta &= ~(1 << (vid & 0x1F)); in e1000_vlan_rx_kill_vid() 4988 e1000_write_vfta(hw, index, vfta); in e1000_vlan_rx_kill_vid()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/intel/e1000/ |
H A D | e1000_main.c | 4949 u32 vfta, index; in e1000_vlan_rx_add_vid() local 4961 vfta = E1000_READ_REG_ARRAY(hw, VFTA, index); in e1000_vlan_rx_add_vid() 4962 vfta |= (1 << (vid & 0x1F)); in e1000_vlan_rx_add_vid() 4963 e1000_write_vfta(hw, index, vfta); in e1000_vlan_rx_add_vid() 4975 u32 vfta, index; in e1000_vlan_rx_kill_vid() local 4984 vfta = E1000_READ_REG_ARRAY(hw, VFTA, index); in e1000_vlan_rx_kill_vid() 4985 vfta &= ~(1 << (vid & 0x1F)); in e1000_vlan_rx_kill_vid() 4986 e1000_write_vfta(hw, index, vfta); in e1000_vlan_rx_kill_vid()
|
/kernel/linux/linux-5.10/drivers/net/ethernet/intel/e1000e/ |
H A D | netdev.c | 2708 u32 vfta, index; in e1000_vlan_rx_add_vid() local 2719 vfta = E1000_READ_REG_ARRAY(hw, E1000_VFTA, index); in e1000_vlan_rx_add_vid() 2720 vfta |= BIT((vid & 0x1F)); in e1000_vlan_rx_add_vid() 2721 hw->mac.ops.write_vfta(hw, index, vfta); in e1000_vlan_rx_add_vid() 2734 u32 vfta, index; in e1000_vlan_rx_kill_vid() local 2747 vfta = E1000_READ_REG_ARRAY(hw, E1000_VFTA, index); in e1000_vlan_rx_kill_vid() 2748 vfta &= ~BIT((vid & 0x1F)); in e1000_vlan_rx_kill_vid() 2749 hw->mac.ops.write_vfta(hw, index, vfta); in e1000_vlan_rx_kill_vid()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/intel/e1000e/ |
H A D | netdev.c | 2701 u32 vfta, index; in e1000_vlan_rx_add_vid() local 2712 vfta = E1000_READ_REG_ARRAY(hw, E1000_VFTA, index); in e1000_vlan_rx_add_vid() 2713 vfta |= BIT((vid & 0x1F)); in e1000_vlan_rx_add_vid() 2714 hw->mac.ops.write_vfta(hw, index, vfta); in e1000_vlan_rx_add_vid() 2727 u32 vfta, index; in e1000_vlan_rx_kill_vid() local 2740 vfta = E1000_READ_REG_ARRAY(hw, E1000_VFTA, index); in e1000_vlan_rx_kill_vid() 2741 vfta &= ~BIT((vid & 0x1F)); in e1000_vlan_rx_kill_vid() 2742 hw->mac.ops.write_vfta(hw, index, vfta); in e1000_vlan_rx_kill_vid()
|