mirror of https://gitee.com/openkylin/linux.git
i40e: use BIT and BIT_ULL macros
Use macros for abstracting (1 << foo) to BIT(foo) and (1ULL << foo64) to BIT_ULL(foo64) in order to match better with kernel requirements. NOTE: the adminq_cmd.h file was not modified on purpose because of the dependency upon firmware for that file. Change-ID: I73ee2e48c880d671948aad19bd53ca6b2ac558fc Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Signed-off-by: Catherine Sullivan <catherine.sullivan@intel.com> Tested-by: Jim Young <james.m.young@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
f1c7e72e39
commit
41a1d04b9d
|
@ -98,7 +98,7 @@
|
|||
#define I40E_INT_NAME_STR_LEN (IFNAMSIZ + 9)
|
||||
|
||||
/* Ethtool Private Flags */
|
||||
#define I40E_PRIV_FLAGS_NPAR_FLAG (1 << 0)
|
||||
#define I40E_PRIV_FLAGS_NPAR_FLAG BIT(0)
|
||||
|
||||
#define I40E_NVM_VERSION_LO_SHIFT 0
|
||||
#define I40E_NVM_VERSION_LO_MASK (0xff << I40E_NVM_VERSION_LO_SHIFT)
|
||||
|
@ -289,35 +289,35 @@ struct i40e_pf {
|
|||
struct work_struct service_task;
|
||||
|
||||
u64 flags;
|
||||
#define I40E_FLAG_RX_CSUM_ENABLED (u64)(1 << 1)
|
||||
#define I40E_FLAG_MSI_ENABLED (u64)(1 << 2)
|
||||
#define I40E_FLAG_MSIX_ENABLED (u64)(1 << 3)
|
||||
#define I40E_FLAG_RX_1BUF_ENABLED (u64)(1 << 4)
|
||||
#define I40E_FLAG_RX_PS_ENABLED (u64)(1 << 5)
|
||||
#define I40E_FLAG_RSS_ENABLED (u64)(1 << 6)
|
||||
#define I40E_FLAG_VMDQ_ENABLED (u64)(1 << 7)
|
||||
#define I40E_FLAG_FDIR_REQUIRES_REINIT (u64)(1 << 8)
|
||||
#define I40E_FLAG_NEED_LINK_UPDATE (u64)(1 << 9)
|
||||
#define I40E_FLAG_RX_CSUM_ENABLED BIT_ULL(1)
|
||||
#define I40E_FLAG_MSI_ENABLED BIT_ULL(2)
|
||||
#define I40E_FLAG_MSIX_ENABLED BIT_ULL(3)
|
||||
#define I40E_FLAG_RX_1BUF_ENABLED BIT_ULL(4)
|
||||
#define I40E_FLAG_RX_PS_ENABLED BIT_ULL(5)
|
||||
#define I40E_FLAG_RSS_ENABLED BIT_ULL(6)
|
||||
#define I40E_FLAG_VMDQ_ENABLED BIT_ULL(7)
|
||||
#define I40E_FLAG_FDIR_REQUIRES_REINIT BIT_ULL(8)
|
||||
#define I40E_FLAG_NEED_LINK_UPDATE BIT_ULL(9)
|
||||
#ifdef I40E_FCOE
|
||||
#define I40E_FLAG_FCOE_ENABLED (u64)(1 << 11)
|
||||
#define I40E_FLAG_FCOE_ENABLED BIT_ULL(11)
|
||||
#endif /* I40E_FCOE */
|
||||
#define I40E_FLAG_IN_NETPOLL (u64)(1 << 12)
|
||||
#define I40E_FLAG_16BYTE_RX_DESC_ENABLED (u64)(1 << 13)
|
||||
#define I40E_FLAG_CLEAN_ADMINQ (u64)(1 << 14)
|
||||
#define I40E_FLAG_FILTER_SYNC (u64)(1 << 15)
|
||||
#define I40E_FLAG_PROCESS_MDD_EVENT (u64)(1 << 17)
|
||||
#define I40E_FLAG_PROCESS_VFLR_EVENT (u64)(1 << 18)
|
||||
#define I40E_FLAG_SRIOV_ENABLED (u64)(1 << 19)
|
||||
#define I40E_FLAG_DCB_ENABLED (u64)(1 << 20)
|
||||
#define I40E_FLAG_FD_SB_ENABLED (u64)(1 << 21)
|
||||
#define I40E_FLAG_FD_ATR_ENABLED (u64)(1 << 22)
|
||||
#define I40E_FLAG_PTP (u64)(1 << 25)
|
||||
#define I40E_FLAG_MFP_ENABLED (u64)(1 << 26)
|
||||
#define I40E_FLAG_IN_NETPOLL BIT_ULL(12)
|
||||
#define I40E_FLAG_16BYTE_RX_DESC_ENABLED BIT_ULL(13)
|
||||
#define I40E_FLAG_CLEAN_ADMINQ BIT_ULL(14)
|
||||
#define I40E_FLAG_FILTER_SYNC BIT_ULL(15)
|
||||
#define I40E_FLAG_PROCESS_MDD_EVENT BIT_ULL(17)
|
||||
#define I40E_FLAG_PROCESS_VFLR_EVENT BIT_ULL(18)
|
||||
#define I40E_FLAG_SRIOV_ENABLED BIT_ULL(19)
|
||||
#define I40E_FLAG_DCB_ENABLED BIT_ULL(20)
|
||||
#define I40E_FLAG_FD_SB_ENABLED BIT_ULL(21)
|
||||
#define I40E_FLAG_FD_ATR_ENABLED BIT_ULL(22)
|
||||
#define I40E_FLAG_PTP BIT_ULL(25)
|
||||
#define I40E_FLAG_MFP_ENABLED BIT_ULL(26)
|
||||
#ifdef CONFIG_I40E_VXLAN
|
||||
#define I40E_FLAG_VXLAN_FILTER_SYNC (u64)(1 << 27)
|
||||
#define I40E_FLAG_VXLAN_FILTER_SYNC BIT_ULL(27)
|
||||
#endif
|
||||
#define I40E_FLAG_PORT_ID_VALID (u64)(1 << 28)
|
||||
#define I40E_FLAG_DCB_CAPABLE (u64)(1 << 29)
|
||||
#define I40E_FLAG_PORT_ID_VALID BIT_ULL(28)
|
||||
#define I40E_FLAG_DCB_CAPABLE BIT_ULL(29)
|
||||
#define I40E_FLAG_VEB_MODE_ENABLED BIT_ULL(40)
|
||||
|
||||
/* tracks features that get auto disabled by errors */
|
||||
|
@ -443,8 +443,8 @@ struct i40e_vsi {
|
|||
|
||||
u32 current_netdev_flags;
|
||||
unsigned long state;
|
||||
#define I40E_VSI_FLAG_FILTER_CHANGED (1<<0)
|
||||
#define I40E_VSI_FLAG_VEB_OWNER (1<<1)
|
||||
#define I40E_VSI_FLAG_FILTER_CHANGED BIT(0)
|
||||
#define I40E_VSI_FLAG_VEB_OWNER BIT(1)
|
||||
unsigned long flags;
|
||||
|
||||
struct list_head mac_filter_list;
|
||||
|
|
|
@ -1393,9 +1393,9 @@ void i40e_led_set(struct i40e_hw *hw, u32 mode, bool blink)
|
|||
blink = false;
|
||||
|
||||
if (blink)
|
||||
gpio_val |= (1 << I40E_GLGEN_GPIO_CTL_LED_BLINK_SHIFT);
|
||||
gpio_val |= BIT(I40E_GLGEN_GPIO_CTL_LED_BLINK_SHIFT);
|
||||
else
|
||||
gpio_val &= ~(1 << I40E_GLGEN_GPIO_CTL_LED_BLINK_SHIFT);
|
||||
gpio_val &= ~BIT(I40E_GLGEN_GPIO_CTL_LED_BLINK_SHIFT);
|
||||
|
||||
wr32(hw, I40E_GLGEN_GPIO_CTL(i), gpio_val);
|
||||
break;
|
||||
|
|
|
@ -58,9 +58,9 @@
|
|||
#define I40E_IEEE_ETS_MAXTC_SHIFT 0
|
||||
#define I40E_IEEE_ETS_MAXTC_MASK (0x7 << I40E_IEEE_ETS_MAXTC_SHIFT)
|
||||
#define I40E_IEEE_ETS_CBS_SHIFT 6
|
||||
#define I40E_IEEE_ETS_CBS_MASK (0x1 << I40E_IEEE_ETS_CBS_SHIFT)
|
||||
#define I40E_IEEE_ETS_CBS_MASK BIT(I40E_IEEE_ETS_CBS_SHIFT)
|
||||
#define I40E_IEEE_ETS_WILLING_SHIFT 7
|
||||
#define I40E_IEEE_ETS_WILLING_MASK (0x1 << I40E_IEEE_ETS_WILLING_SHIFT)
|
||||
#define I40E_IEEE_ETS_WILLING_MASK BIT(I40E_IEEE_ETS_WILLING_SHIFT)
|
||||
#define I40E_IEEE_ETS_PRIO_0_SHIFT 0
|
||||
#define I40E_IEEE_ETS_PRIO_0_MASK (0x7 << I40E_IEEE_ETS_PRIO_0_SHIFT)
|
||||
#define I40E_IEEE_ETS_PRIO_1_SHIFT 4
|
||||
|
@ -79,9 +79,9 @@
|
|||
#define I40E_IEEE_PFC_CAP_SHIFT 0
|
||||
#define I40E_IEEE_PFC_CAP_MASK (0xF << I40E_IEEE_PFC_CAP_SHIFT)
|
||||
#define I40E_IEEE_PFC_MBC_SHIFT 6
|
||||
#define I40E_IEEE_PFC_MBC_MASK (0x1 << I40E_IEEE_PFC_MBC_SHIFT)
|
||||
#define I40E_IEEE_PFC_MBC_MASK BIT(I40E_IEEE_PFC_MBC_SHIFT)
|
||||
#define I40E_IEEE_PFC_WILLING_SHIFT 7
|
||||
#define I40E_IEEE_PFC_WILLING_MASK (0x1 << I40E_IEEE_PFC_WILLING_SHIFT)
|
||||
#define I40E_IEEE_PFC_WILLING_MASK BIT(I40E_IEEE_PFC_WILLING_SHIFT)
|
||||
|
||||
/* Defines for IEEE APP TLV */
|
||||
#define I40E_IEEE_APP_SEL_SHIFT 0
|
||||
|
|
|
@ -187,7 +187,7 @@ void i40e_dcbnl_set_all(struct i40e_vsi *vsi)
|
|||
/* Set up all the App TLVs if DCBx is negotiated */
|
||||
for (i = 0; i < dcbxcfg->numapps; i++) {
|
||||
prio = dcbxcfg->app[i].priority;
|
||||
tc_map = (1 << dcbxcfg->etscfg.prioritytable[prio]);
|
||||
tc_map = BIT(dcbxcfg->etscfg.prioritytable[prio]);
|
||||
|
||||
/* Add APP only if the TC is enabled for this VSI */
|
||||
if (tc_map & vsi->tc_config.enabled_tc) {
|
||||
|
|
|
@ -964,7 +964,7 @@ static void i40e_dbg_cmd_fd_ctrl(struct i40e_pf *pf, u64 flag, bool enable)
|
|||
pf->auto_disable_flags |= flag;
|
||||
}
|
||||
dev_info(&pf->pdev->dev, "requesting a PF reset\n");
|
||||
i40e_do_reset_safe(pf, (1 << __I40E_PF_RESET_REQUESTED));
|
||||
i40e_do_reset_safe(pf, BIT(__I40E_PF_RESET_REQUESTED));
|
||||
}
|
||||
|
||||
#define I40E_MAX_DEBUG_OUT_BUFFER (4096*4)
|
||||
|
@ -1471,19 +1471,19 @@ static ssize_t i40e_dbg_command_write(struct file *filp,
|
|||
}
|
||||
} else if (strncmp(cmd_buf, "pfr", 3) == 0) {
|
||||
dev_info(&pf->pdev->dev, "debugfs: forcing PFR\n");
|
||||
i40e_do_reset_safe(pf, (1 << __I40E_PF_RESET_REQUESTED));
|
||||
i40e_do_reset_safe(pf, BIT(__I40E_PF_RESET_REQUESTED));
|
||||
|
||||
} else if (strncmp(cmd_buf, "corer", 5) == 0) {
|
||||
dev_info(&pf->pdev->dev, "debugfs: forcing CoreR\n");
|
||||
i40e_do_reset_safe(pf, (1 << __I40E_CORE_RESET_REQUESTED));
|
||||
i40e_do_reset_safe(pf, BIT(__I40E_CORE_RESET_REQUESTED));
|
||||
|
||||
} else if (strncmp(cmd_buf, "globr", 5) == 0) {
|
||||
dev_info(&pf->pdev->dev, "debugfs: forcing GlobR\n");
|
||||
i40e_do_reset_safe(pf, (1 << __I40E_GLOBAL_RESET_REQUESTED));
|
||||
i40e_do_reset_safe(pf, BIT(__I40E_GLOBAL_RESET_REQUESTED));
|
||||
|
||||
} else if (strncmp(cmd_buf, "empr", 4) == 0) {
|
||||
dev_info(&pf->pdev->dev, "debugfs: forcing EMPR\n");
|
||||
i40e_do_reset_safe(pf, (1 << __I40E_EMP_RESET_REQUESTED));
|
||||
i40e_do_reset_safe(pf, BIT(__I40E_EMP_RESET_REQUESTED));
|
||||
|
||||
} else if (strncmp(cmd_buf, "read", 4) == 0) {
|
||||
u32 address;
|
||||
|
|
|
@ -144,11 +144,8 @@ i40e_status i40e_diag_eeprom_test(struct i40e_hw *hw)
|
|||
ret_code = i40e_read_nvm_word(hw, I40E_SR_NVM_CONTROL_WORD, ®_val);
|
||||
if (!ret_code &&
|
||||
((reg_val & I40E_SR_CONTROL_WORD_1_MASK) ==
|
||||
(0x01 << I40E_SR_CONTROL_WORD_1_SHIFT))) {
|
||||
ret_code = i40e_validate_nvm_checksum(hw, NULL);
|
||||
} else {
|
||||
ret_code = I40E_ERR_DIAG_TEST_FAILED;
|
||||
}
|
||||
|
||||
return ret_code;
|
||||
BIT(I40E_SR_CONTROL_WORD_1_SHIFT)))
|
||||
return i40e_validate_nvm_checksum(hw, NULL);
|
||||
else
|
||||
return I40E_ERR_DIAG_TEST_FAILED;
|
||||
}
|
||||
|
|
|
@ -1017,7 +1017,7 @@ static int i40e_get_eeprom_len(struct net_device *netdev)
|
|||
& I40E_GLPCI_LBARCTRL_FL_SIZE_MASK)
|
||||
>> I40E_GLPCI_LBARCTRL_FL_SIZE_SHIFT;
|
||||
/* register returns value in power of 2, 64Kbyte chunks. */
|
||||
val = (64 * 1024) * (1 << val);
|
||||
val = (64 * 1024) * BIT(val);
|
||||
return val;
|
||||
}
|
||||
|
||||
|
@ -1470,11 +1470,11 @@ static int i40e_get_ts_info(struct net_device *dev,
|
|||
else
|
||||
info->phc_index = -1;
|
||||
|
||||
info->tx_types = (1 << HWTSTAMP_TX_OFF) | (1 << HWTSTAMP_TX_ON);
|
||||
info->tx_types = BIT(HWTSTAMP_TX_OFF) | BIT(HWTSTAMP_TX_ON);
|
||||
|
||||
info->rx_filters = (1 << HWTSTAMP_FILTER_NONE) |
|
||||
(1 << HWTSTAMP_FILTER_PTP_V1_L4_EVENT) |
|
||||
(1 << HWTSTAMP_FILTER_PTP_V2_EVENT);
|
||||
info->rx_filters = BIT(HWTSTAMP_FILTER_NONE) |
|
||||
BIT(HWTSTAMP_FILTER_PTP_V1_L4_EVENT) |
|
||||
BIT(HWTSTAMP_FILTER_PTP_V2_EVENT);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -1590,7 +1590,7 @@ static void i40e_diag_test(struct net_device *netdev,
|
|||
/* indicate we're in test mode */
|
||||
dev_close(netdev);
|
||||
else
|
||||
i40e_do_reset(pf, (1 << __I40E_PF_RESET_REQUESTED));
|
||||
i40e_do_reset(pf, BIT(__I40E_PF_RESET_REQUESTED));
|
||||
|
||||
/* Link test performed before hardware reset
|
||||
* so autoneg doesn't interfere with test result
|
||||
|
@ -1612,7 +1612,7 @@ static void i40e_diag_test(struct net_device *netdev,
|
|||
eth_test->flags |= ETH_TEST_FL_FAILED;
|
||||
|
||||
clear_bit(__I40E_TESTING, &pf->state);
|
||||
i40e_do_reset(pf, (1 << __I40E_PF_RESET_REQUESTED));
|
||||
i40e_do_reset(pf, BIT(__I40E_PF_RESET_REQUESTED));
|
||||
|
||||
if (if_running)
|
||||
dev_open(netdev);
|
||||
|
@ -1645,7 +1645,7 @@ static void i40e_get_wol(struct net_device *netdev,
|
|||
|
||||
/* NVM bit on means WoL disabled for the port */
|
||||
i40e_read_nvm_word(hw, I40E_SR_NVM_WAKE_ON_LAN, &wol_nvm_bits);
|
||||
if ((1 << hw->port) & wol_nvm_bits || hw->partition_id != 1) {
|
||||
if ((BIT(hw->port) & wol_nvm_bits) || (hw->partition_id != 1)) {
|
||||
wol->supported = 0;
|
||||
wol->wolopts = 0;
|
||||
} else {
|
||||
|
@ -1678,7 +1678,7 @@ static int i40e_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
|
|||
|
||||
/* NVM bit on means WoL disabled for the port */
|
||||
i40e_read_nvm_word(hw, I40E_SR_NVM_WAKE_ON_LAN, &wol_nvm_bits);
|
||||
if (((1 << hw->port) & wol_nvm_bits))
|
||||
if (BIT(hw->port) & wol_nvm_bits)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
/* only magic packet is supported */
|
||||
|
@ -2024,10 +2024,10 @@ static int i40e_set_rss_hash_opt(struct i40e_pf *pf, struct ethtool_rxnfc *nfc)
|
|||
case TCP_V4_FLOW:
|
||||
switch (nfc->data & (RXH_L4_B_0_1 | RXH_L4_B_2_3)) {
|
||||
case 0:
|
||||
hena &= ~((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_TCP);
|
||||
hena &= ~BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_TCP);
|
||||
break;
|
||||
case (RXH_L4_B_0_1 | RXH_L4_B_2_3):
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_TCP);
|
||||
hena |= BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_TCP);
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
@ -2036,10 +2036,10 @@ static int i40e_set_rss_hash_opt(struct i40e_pf *pf, struct ethtool_rxnfc *nfc)
|
|||
case TCP_V6_FLOW:
|
||||
switch (nfc->data & (RXH_L4_B_0_1 | RXH_L4_B_2_3)) {
|
||||
case 0:
|
||||
hena &= ~((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_TCP);
|
||||
hena &= ~BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_TCP);
|
||||
break;
|
||||
case (RXH_L4_B_0_1 | RXH_L4_B_2_3):
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_TCP);
|
||||
hena |= BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_TCP);
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
@ -2048,12 +2048,12 @@ static int i40e_set_rss_hash_opt(struct i40e_pf *pf, struct ethtool_rxnfc *nfc)
|
|||
case UDP_V4_FLOW:
|
||||
switch (nfc->data & (RXH_L4_B_0_1 | RXH_L4_B_2_3)) {
|
||||
case 0:
|
||||
hena &= ~(((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_UDP) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV4));
|
||||
hena &= ~(BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_UDP) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV4));
|
||||
break;
|
||||
case (RXH_L4_B_0_1 | RXH_L4_B_2_3):
|
||||
hena |= (((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_UDP) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV4));
|
||||
hena |= (BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_UDP) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV4));
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
@ -2062,12 +2062,12 @@ static int i40e_set_rss_hash_opt(struct i40e_pf *pf, struct ethtool_rxnfc *nfc)
|
|||
case UDP_V6_FLOW:
|
||||
switch (nfc->data & (RXH_L4_B_0_1 | RXH_L4_B_2_3)) {
|
||||
case 0:
|
||||
hena &= ~(((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_UDP) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV6));
|
||||
hena &= ~(BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_UDP) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV6));
|
||||
break;
|
||||
case (RXH_L4_B_0_1 | RXH_L4_B_2_3):
|
||||
hena |= (((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_UDP) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV6));
|
||||
hena |= (BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_UDP) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV6));
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
@ -2080,7 +2080,7 @@ static int i40e_set_rss_hash_opt(struct i40e_pf *pf, struct ethtool_rxnfc *nfc)
|
|||
if ((nfc->data & RXH_L4_B_0_1) ||
|
||||
(nfc->data & RXH_L4_B_2_3))
|
||||
return -EINVAL;
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_OTHER);
|
||||
hena |= BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_OTHER);
|
||||
break;
|
||||
case AH_ESP_V6_FLOW:
|
||||
case AH_V6_FLOW:
|
||||
|
@ -2089,15 +2089,15 @@ static int i40e_set_rss_hash_opt(struct i40e_pf *pf, struct ethtool_rxnfc *nfc)
|
|||
if ((nfc->data & RXH_L4_B_0_1) ||
|
||||
(nfc->data & RXH_L4_B_2_3))
|
||||
return -EINVAL;
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_OTHER);
|
||||
hena |= BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_OTHER);
|
||||
break;
|
||||
case IPV4_FLOW:
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_OTHER) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV4);
|
||||
hena |= BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_OTHER) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV4);
|
||||
break;
|
||||
case IPV6_FLOW:
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_OTHER) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV6);
|
||||
hena |= BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_OTHER) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV6);
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
|
|
@ -298,8 +298,8 @@ int i40e_init_pf_fcoe(struct i40e_pf *pf)
|
|||
|
||||
/* enable FCoE hash filter */
|
||||
val = rd32(hw, I40E_PFQF_HENA(1));
|
||||
val |= 1 << (I40E_FILTER_PCTYPE_FCOE_OX - 32);
|
||||
val |= 1 << (I40E_FILTER_PCTYPE_FCOE_RX - 32);
|
||||
val |= BIT(I40E_FILTER_PCTYPE_FCOE_OX - 32);
|
||||
val |= BIT(I40E_FILTER_PCTYPE_FCOE_RX - 32);
|
||||
val &= I40E_PFQF_HENA_PTYPE_ENA_MASK;
|
||||
wr32(hw, I40E_PFQF_HENA(1), val);
|
||||
|
||||
|
@ -308,10 +308,10 @@ int i40e_init_pf_fcoe(struct i40e_pf *pf)
|
|||
pf->num_fcoe_qps = I40E_DEFAULT_FCOE;
|
||||
|
||||
/* Reserve 4K DDP contexts and 20K filter size for FCoE */
|
||||
pf->fcoe_hmc_cntx_num = (1 << I40E_DMA_CNTX_SIZE_4K) *
|
||||
I40E_DMA_CNTX_BASE_SIZE;
|
||||
pf->fcoe_hmc_cntx_num = BIT(I40E_DMA_CNTX_SIZE_4K) *
|
||||
I40E_DMA_CNTX_BASE_SIZE;
|
||||
pf->fcoe_hmc_filt_num = pf->fcoe_hmc_cntx_num +
|
||||
(1 << I40E_HASH_FILTER_SIZE_16K) *
|
||||
BIT(I40E_HASH_FILTER_SIZE_16K) *
|
||||
I40E_HASH_FILTER_BASE_SIZE;
|
||||
|
||||
/* FCoE object: max 16K filter buckets and 4K DMA contexts */
|
||||
|
@ -348,7 +348,7 @@ u8 i40e_get_fcoe_tc_map(struct i40e_pf *pf)
|
|||
if (app.selector == IEEE_8021QAZ_APP_SEL_ETHERTYPE &&
|
||||
app.protocolid == ETH_P_FCOE) {
|
||||
tc = dcbcfg->etscfg.prioritytable[app.priority];
|
||||
enabled_tc |= (1 << tc);
|
||||
enabled_tc |= BIT(tc);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -59,9 +59,9 @@
|
|||
(((e) >> I40E_RX_PROG_STATUS_DESC_FCOE_CONFLICT_SHIFT) & 0x1)
|
||||
|
||||
#define I40E_RX_PROG_FCOE_ERROR_TBL_FULL_BIT \
|
||||
(1 << I40E_RX_PROG_STATUS_DESC_FCOE_TBL_FULL_SHIFT)
|
||||
BIT(I40E_RX_PROG_STATUS_DESC_FCOE_TBL_FULL_SHIFT)
|
||||
#define I40E_RX_PROG_FCOE_ERROR_CONFLICT_BIT \
|
||||
(1 << I40E_RX_PROG_STATUS_DESC_FCOE_CONFLICT_SHIFT)
|
||||
BIT(I40E_RX_PROG_STATUS_DESC_FCOE_CONFLICT_SHIFT)
|
||||
|
||||
#define I40E_RX_PROG_FCOE_ERROR_INVLFAIL(e) \
|
||||
I40E_RX_PROG_FCOE_ERROR_CONFLICT(e)
|
||||
|
|
|
@ -127,8 +127,8 @@ struct i40e_hmc_info {
|
|||
I40E_PFHMC_SDDATALOW_PMSDBPCOUNT_SHIFT) | \
|
||||
((((type) == I40E_SD_TYPE_PAGED) ? 0 : 1) << \
|
||||
I40E_PFHMC_SDDATALOW_PMSDTYPE_SHIFT) | \
|
||||
(1 << I40E_PFHMC_SDDATALOW_PMSDVALID_SHIFT); \
|
||||
val3 = (sd_index) | (1u << I40E_PFHMC_SDCMD_PMSDWR_SHIFT); \
|
||||
BIT(I40E_PFHMC_SDDATALOW_PMSDVALID_SHIFT); \
|
||||
val3 = (sd_index) | BIT_ULL(I40E_PFHMC_SDCMD_PMSDWR_SHIFT); \
|
||||
wr32((hw), I40E_PFHMC_SDDATAHIGH, val1); \
|
||||
wr32((hw), I40E_PFHMC_SDDATALOW, val2); \
|
||||
wr32((hw), I40E_PFHMC_SDCMD, val3); \
|
||||
|
@ -147,7 +147,7 @@ struct i40e_hmc_info {
|
|||
I40E_PFHMC_SDDATALOW_PMSDBPCOUNT_SHIFT) | \
|
||||
((((type) == I40E_SD_TYPE_PAGED) ? 0 : 1) << \
|
||||
I40E_PFHMC_SDDATALOW_PMSDTYPE_SHIFT); \
|
||||
val3 = (sd_index) | (1u << I40E_PFHMC_SDCMD_PMSDWR_SHIFT); \
|
||||
val3 = (sd_index) | BIT_ULL(I40E_PFHMC_SDCMD_PMSDWR_SHIFT); \
|
||||
wr32((hw), I40E_PFHMC_SDDATAHIGH, 0); \
|
||||
wr32((hw), I40E_PFHMC_SDDATALOW, val2); \
|
||||
wr32((hw), I40E_PFHMC_SDCMD, val3); \
|
||||
|
|
|
@ -129,7 +129,7 @@ i40e_status i40e_init_lan_hmc(struct i40e_hw *hw, u32 txq_num,
|
|||
obj->cnt = txq_num;
|
||||
obj->base = 0;
|
||||
size_exp = rd32(hw, I40E_GLHMC_LANTXOBJSZ);
|
||||
obj->size = (u64)1 << size_exp;
|
||||
obj->size = BIT_ULL(size_exp);
|
||||
|
||||
/* validate values requested by driver don't exceed HMC capacity */
|
||||
if (txq_num > obj->max_cnt) {
|
||||
|
@ -152,7 +152,7 @@ i40e_status i40e_init_lan_hmc(struct i40e_hw *hw, u32 txq_num,
|
|||
hw->hmc.hmc_obj[I40E_HMC_LAN_TX].size);
|
||||
obj->base = i40e_align_l2obj_base(obj->base);
|
||||
size_exp = rd32(hw, I40E_GLHMC_LANRXOBJSZ);
|
||||
obj->size = (u64)1 << size_exp;
|
||||
obj->size = BIT_ULL(size_exp);
|
||||
|
||||
/* validate values requested by driver don't exceed HMC capacity */
|
||||
if (rxq_num > obj->max_cnt) {
|
||||
|
@ -175,7 +175,7 @@ i40e_status i40e_init_lan_hmc(struct i40e_hw *hw, u32 txq_num,
|
|||
hw->hmc.hmc_obj[I40E_HMC_LAN_RX].size);
|
||||
obj->base = i40e_align_l2obj_base(obj->base);
|
||||
size_exp = rd32(hw, I40E_GLHMC_FCOEDDPOBJSZ);
|
||||
obj->size = (u64)1 << size_exp;
|
||||
obj->size = BIT_ULL(size_exp);
|
||||
|
||||
/* validate values requested by driver don't exceed HMC capacity */
|
||||
if (fcoe_cntx_num > obj->max_cnt) {
|
||||
|
@ -198,7 +198,7 @@ i40e_status i40e_init_lan_hmc(struct i40e_hw *hw, u32 txq_num,
|
|||
hw->hmc.hmc_obj[I40E_HMC_FCOE_CTX].size);
|
||||
obj->base = i40e_align_l2obj_base(obj->base);
|
||||
size_exp = rd32(hw, I40E_GLHMC_FCOEFOBJSZ);
|
||||
obj->size = (u64)1 << size_exp;
|
||||
obj->size = BIT_ULL(size_exp);
|
||||
|
||||
/* validate values requested by driver don't exceed HMC capacity */
|
||||
if (fcoe_filt_num > obj->max_cnt) {
|
||||
|
@ -763,7 +763,7 @@ static void i40e_write_byte(u8 *hmc_bits,
|
|||
|
||||
/* prepare the bits and mask */
|
||||
shift_width = ce_info->lsb % 8;
|
||||
mask = ((u8)1 << ce_info->width) - 1;
|
||||
mask = BIT(ce_info->width) - 1;
|
||||
|
||||
src_byte = *from;
|
||||
src_byte &= mask;
|
||||
|
@ -804,7 +804,7 @@ static void i40e_write_word(u8 *hmc_bits,
|
|||
|
||||
/* prepare the bits and mask */
|
||||
shift_width = ce_info->lsb % 8;
|
||||
mask = ((u16)1 << ce_info->width) - 1;
|
||||
mask = BIT(ce_info->width) - 1;
|
||||
|
||||
/* don't swizzle the bits until after the mask because the mask bits
|
||||
* will be in a different bit position on big endian machines
|
||||
|
@ -854,7 +854,7 @@ static void i40e_write_dword(u8 *hmc_bits,
|
|||
* to 5 bits so the shift will do nothing
|
||||
*/
|
||||
if (ce_info->width < 32)
|
||||
mask = ((u32)1 << ce_info->width) - 1;
|
||||
mask = BIT(ce_info->width) - 1;
|
||||
else
|
||||
mask = ~(u32)0;
|
||||
|
||||
|
@ -906,7 +906,7 @@ static void i40e_write_qword(u8 *hmc_bits,
|
|||
* to 6 bits so the shift will do nothing
|
||||
*/
|
||||
if (ce_info->width < 64)
|
||||
mask = ((u64)1 << ce_info->width) - 1;
|
||||
mask = BIT_ULL(ce_info->width) - 1;
|
||||
else
|
||||
mask = ~(u64)0;
|
||||
|
||||
|
|
|
@ -520,7 +520,7 @@ static void i40e_stat_update48(struct i40e_hw *hw, u32 hireg, u32 loreg,
|
|||
if (likely(new_data >= *offset))
|
||||
*stat = new_data - *offset;
|
||||
else
|
||||
*stat = (new_data + ((u64)1 << 48)) - *offset;
|
||||
*stat = (new_data + BIT_ULL(48)) - *offset;
|
||||
*stat &= 0xFFFFFFFFFFFFULL;
|
||||
}
|
||||
|
||||
|
@ -543,7 +543,7 @@ static void i40e_stat_update32(struct i40e_hw *hw, u32 reg,
|
|||
if (likely(new_data >= *offset))
|
||||
*stat = (u32)(new_data - *offset);
|
||||
else
|
||||
*stat = (u32)((new_data + ((u64)1 << 32)) - *offset);
|
||||
*stat = (u32)((new_data + BIT_ULL(32)) - *offset);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1526,7 +1526,7 @@ static void i40e_vsi_setup_queue_map(struct i40e_vsi *vsi,
|
|||
if (enabled_tc && (vsi->back->flags & I40E_FLAG_DCB_ENABLED)) {
|
||||
/* Find numtc from enabled TC bitmap */
|
||||
for (i = 0; i < I40E_MAX_TRAFFIC_CLASS; i++) {
|
||||
if (enabled_tc & (1 << i)) /* TC is enabled */
|
||||
if (enabled_tc & BIT_ULL(i)) /* TC is enabled */
|
||||
numtc++;
|
||||
}
|
||||
if (!numtc) {
|
||||
|
@ -1552,7 +1552,8 @@ static void i40e_vsi_setup_queue_map(struct i40e_vsi *vsi,
|
|||
/* Setup queue offset/count for all TCs for given VSI */
|
||||
for (i = 0; i < I40E_MAX_TRAFFIC_CLASS; i++) {
|
||||
/* See if the given TC is enabled for the given VSI */
|
||||
if (vsi->tc_config.enabled_tc & (1 << i)) { /* TC is enabled */
|
||||
if (vsi->tc_config.enabled_tc & BIT_ULL(i)) {
|
||||
/* TC is enabled */
|
||||
int pow, num_qps;
|
||||
|
||||
switch (vsi->type) {
|
||||
|
@ -1578,7 +1579,7 @@ static void i40e_vsi_setup_queue_map(struct i40e_vsi *vsi,
|
|||
/* find the next higher power-of-2 of num queue pairs */
|
||||
num_qps = qcount;
|
||||
pow = 0;
|
||||
while (num_qps && ((1 << pow) < qcount)) {
|
||||
while (num_qps && (BIT_ULL(pow) < qcount)) {
|
||||
pow++;
|
||||
num_qps >>= 1;
|
||||
}
|
||||
|
@ -2723,9 +2724,9 @@ static int i40e_vsi_configure_rx(struct i40e_vsi *vsi)
|
|||
#endif /* I40E_FCOE */
|
||||
/* round up for the chip's needs */
|
||||
vsi->rx_hdr_len = ALIGN(vsi->rx_hdr_len,
|
||||
(1 << I40E_RXQ_CTX_HBUFF_SHIFT));
|
||||
BIT_ULL(I40E_RXQ_CTX_HBUFF_SHIFT));
|
||||
vsi->rx_buf_len = ALIGN(vsi->rx_buf_len,
|
||||
(1 << I40E_RXQ_CTX_DBUFF_SHIFT));
|
||||
BIT_ULL(I40E_RXQ_CTX_DBUFF_SHIFT));
|
||||
|
||||
/* set up individual rings */
|
||||
for (i = 0; i < vsi->num_queue_pairs && !err; i++)
|
||||
|
@ -2755,7 +2756,7 @@ static void i40e_vsi_config_dcb_rings(struct i40e_vsi *vsi)
|
|||
}
|
||||
|
||||
for (n = 0; n < I40E_MAX_TRAFFIC_CLASS; n++) {
|
||||
if (!(vsi->tc_config.enabled_tc & (1 << n)))
|
||||
if (!(vsi->tc_config.enabled_tc & BIT_ULL(n)))
|
||||
continue;
|
||||
|
||||
qoffset = vsi->tc_config.tc_info[n].qoffset;
|
||||
|
@ -4100,7 +4101,7 @@ static u8 i40e_get_iscsi_tc_map(struct i40e_pf *pf)
|
|||
if (app.selector == I40E_APP_SEL_TCPIP &&
|
||||
app.protocolid == I40E_APP_PROTOID_ISCSI) {
|
||||
tc = dcbcfg->etscfg.prioritytable[app.priority];
|
||||
enabled_tc |= (1 << tc);
|
||||
enabled_tc |= BIT_ULL(tc);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -4149,7 +4150,7 @@ static u8 i40e_dcb_get_enabled_tc(struct i40e_dcbx_config *dcbcfg)
|
|||
u8 i;
|
||||
|
||||
for (i = 0; i < num_tc; i++)
|
||||
enabled_tc |= 1 << i;
|
||||
enabled_tc |= BIT(i);
|
||||
|
||||
return enabled_tc;
|
||||
}
|
||||
|
@ -4184,7 +4185,7 @@ static u8 i40e_pf_get_num_tc(struct i40e_pf *pf)
|
|||
/* At least have TC0 */
|
||||
enabled_tc = (enabled_tc ? enabled_tc : 0x1);
|
||||
for (i = 0; i < I40E_MAX_TRAFFIC_CLASS; i++) {
|
||||
if (enabled_tc & (1 << i))
|
||||
if (enabled_tc & BIT_ULL(i))
|
||||
num_tc++;
|
||||
}
|
||||
return num_tc;
|
||||
|
@ -4206,11 +4207,11 @@ static u8 i40e_pf_get_default_tc(struct i40e_pf *pf)
|
|||
|
||||
/* Find the first enabled TC */
|
||||
for (i = 0; i < I40E_MAX_TRAFFIC_CLASS; i++) {
|
||||
if (enabled_tc & (1 << i))
|
||||
if (enabled_tc & BIT_ULL(i))
|
||||
break;
|
||||
}
|
||||
|
||||
return 1 << i;
|
||||
return BIT(i);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -4366,7 +4367,7 @@ static void i40e_vsi_config_netdev_tc(struct i40e_vsi *vsi, u8 enabled_tc)
|
|||
* will set the numtc for netdev as 2 that will be
|
||||
* referenced by the netdev layer as TC 0 and 1.
|
||||
*/
|
||||
if (vsi->tc_config.enabled_tc & (1 << i))
|
||||
if (vsi->tc_config.enabled_tc & BIT_ULL(i))
|
||||
netdev_set_tc_queue(netdev,
|
||||
vsi->tc_config.tc_info[i].netdev_tc,
|
||||
vsi->tc_config.tc_info[i].qcount,
|
||||
|
@ -4428,7 +4429,7 @@ static int i40e_vsi_config_tc(struct i40e_vsi *vsi, u8 enabled_tc)
|
|||
|
||||
/* Enable ETS TCs with equal BW Share for now across all VSIs */
|
||||
for (i = 0; i < I40E_MAX_TRAFFIC_CLASS; i++) {
|
||||
if (enabled_tc & (1 << i))
|
||||
if (enabled_tc & BIT_ULL(i))
|
||||
bw_share[i] = 1;
|
||||
}
|
||||
|
||||
|
@ -4502,7 +4503,7 @@ int i40e_veb_config_tc(struct i40e_veb *veb, u8 enabled_tc)
|
|||
|
||||
/* Enable ETS TCs with equal BW Share for now */
|
||||
for (i = 0; i < I40E_MAX_TRAFFIC_CLASS; i++) {
|
||||
if (enabled_tc & (1 << i))
|
||||
if (enabled_tc & BIT_ULL(i))
|
||||
bw_data.tc_bw_share_credits[i] = 1;
|
||||
}
|
||||
|
||||
|
@ -4896,7 +4897,7 @@ static int i40e_setup_tc(struct net_device *netdev, u8 tc)
|
|||
|
||||
/* Generate TC map for number of tc requested */
|
||||
for (i = 0; i < tc; i++)
|
||||
enabled_tc |= (1 << i);
|
||||
enabled_tc |= BIT_ULL(i);
|
||||
|
||||
/* Requesting same TC configuration as already enabled */
|
||||
if (enabled_tc == vsi->tc_config.enabled_tc)
|
||||
|
@ -5035,7 +5036,7 @@ int i40e_vsi_open(struct i40e_vsi *vsi)
|
|||
err_setup_tx:
|
||||
i40e_vsi_free_tx_resources(vsi);
|
||||
if (vsi == pf->vsi[pf->lan_vsi])
|
||||
i40e_do_reset(pf, (1 << __I40E_PF_RESET_REQUESTED));
|
||||
i40e_do_reset(pf, BIT_ULL(__I40E_PF_RESET_REQUESTED));
|
||||
|
||||
return err;
|
||||
}
|
||||
|
@ -5103,7 +5104,7 @@ void i40e_do_reset(struct i40e_pf *pf, u32 reset_flags)
|
|||
i40e_vc_notify_reset(pf);
|
||||
|
||||
/* do the biggest reset indicated */
|
||||
if (reset_flags & (1 << __I40E_GLOBAL_RESET_REQUESTED)) {
|
||||
if (reset_flags & BIT_ULL(__I40E_GLOBAL_RESET_REQUESTED)) {
|
||||
|
||||
/* Request a Global Reset
|
||||
*
|
||||
|
@ -5118,7 +5119,7 @@ void i40e_do_reset(struct i40e_pf *pf, u32 reset_flags)
|
|||
val |= I40E_GLGEN_RTRIG_GLOBR_MASK;
|
||||
wr32(&pf->hw, I40E_GLGEN_RTRIG, val);
|
||||
|
||||
} else if (reset_flags & (1 << __I40E_CORE_RESET_REQUESTED)) {
|
||||
} else if (reset_flags & BIT_ULL(__I40E_CORE_RESET_REQUESTED)) {
|
||||
|
||||
/* Request a Core Reset
|
||||
*
|
||||
|
@ -5130,7 +5131,7 @@ void i40e_do_reset(struct i40e_pf *pf, u32 reset_flags)
|
|||
wr32(&pf->hw, I40E_GLGEN_RTRIG, val);
|
||||
i40e_flush(&pf->hw);
|
||||
|
||||
} else if (reset_flags & (1 << __I40E_PF_RESET_REQUESTED)) {
|
||||
} else if (reset_flags & BIT_ULL(__I40E_PF_RESET_REQUESTED)) {
|
||||
|
||||
/* Request a PF Reset
|
||||
*
|
||||
|
@ -5143,7 +5144,7 @@ void i40e_do_reset(struct i40e_pf *pf, u32 reset_flags)
|
|||
dev_dbg(&pf->pdev->dev, "PFR requested\n");
|
||||
i40e_handle_reset_warning(pf);
|
||||
|
||||
} else if (reset_flags & (1 << __I40E_REINIT_REQUESTED)) {
|
||||
} else if (reset_flags & BIT_ULL(__I40E_REINIT_REQUESTED)) {
|
||||
int v;
|
||||
|
||||
/* Find the VSI(s) that requested a re-init */
|
||||
|
@ -5160,7 +5161,7 @@ void i40e_do_reset(struct i40e_pf *pf, u32 reset_flags)
|
|||
|
||||
/* no further action needed, so return now */
|
||||
return;
|
||||
} else if (reset_flags & (1 << __I40E_DOWN_REQUESTED)) {
|
||||
} else if (reset_flags & BIT_ULL(__I40E_DOWN_REQUESTED)) {
|
||||
int v;
|
||||
|
||||
/* Find the VSI(s) that needs to be brought down */
|
||||
|
@ -5801,23 +5802,23 @@ static void i40e_reset_subtask(struct i40e_pf *pf)
|
|||
|
||||
rtnl_lock();
|
||||
if (test_bit(__I40E_REINIT_REQUESTED, &pf->state)) {
|
||||
reset_flags |= (1 << __I40E_REINIT_REQUESTED);
|
||||
reset_flags |= BIT_ULL(__I40E_REINIT_REQUESTED);
|
||||
clear_bit(__I40E_REINIT_REQUESTED, &pf->state);
|
||||
}
|
||||
if (test_bit(__I40E_PF_RESET_REQUESTED, &pf->state)) {
|
||||
reset_flags |= (1 << __I40E_PF_RESET_REQUESTED);
|
||||
reset_flags |= BIT_ULL(__I40E_PF_RESET_REQUESTED);
|
||||
clear_bit(__I40E_PF_RESET_REQUESTED, &pf->state);
|
||||
}
|
||||
if (test_bit(__I40E_CORE_RESET_REQUESTED, &pf->state)) {
|
||||
reset_flags |= (1 << __I40E_CORE_RESET_REQUESTED);
|
||||
reset_flags |= BIT_ULL(__I40E_CORE_RESET_REQUESTED);
|
||||
clear_bit(__I40E_CORE_RESET_REQUESTED, &pf->state);
|
||||
}
|
||||
if (test_bit(__I40E_GLOBAL_RESET_REQUESTED, &pf->state)) {
|
||||
reset_flags |= (1 << __I40E_GLOBAL_RESET_REQUESTED);
|
||||
reset_flags |= BIT_ULL(__I40E_GLOBAL_RESET_REQUESTED);
|
||||
clear_bit(__I40E_GLOBAL_RESET_REQUESTED, &pf->state);
|
||||
}
|
||||
if (test_bit(__I40E_DOWN_REQUESTED, &pf->state)) {
|
||||
reset_flags |= (1 << __I40E_DOWN_REQUESTED);
|
||||
reset_flags |= BIT_ULL(__I40E_DOWN_REQUESTED);
|
||||
clear_bit(__I40E_DOWN_REQUESTED, &pf->state);
|
||||
}
|
||||
|
||||
|
@ -6699,8 +6700,8 @@ static void i40e_sync_vxlan_filters_subtask(struct i40e_pf *pf)
|
|||
pf->flags &= ~I40E_FLAG_VXLAN_FILTER_SYNC;
|
||||
|
||||
for (i = 0; i < I40E_MAX_PF_UDP_OFFLOAD_PORTS; i++) {
|
||||
if (pf->pending_vxlan_bitmap & (1 << i)) {
|
||||
pf->pending_vxlan_bitmap &= ~(1 << i);
|
||||
if (pf->pending_vxlan_bitmap & BIT_ULL(i)) {
|
||||
pf->pending_vxlan_bitmap &= ~BIT_ULL(i);
|
||||
port = pf->vxlan_ports[i];
|
||||
if (port)
|
||||
ret = i40e_aq_add_udp_tunnel(hw, ntohs(port),
|
||||
|
@ -7513,7 +7514,7 @@ static int i40e_config_rss(struct i40e_pf *pf)
|
|||
j = 0;
|
||||
/* lut = 4-byte sliding window of 4 lut entries */
|
||||
lut = (lut << 8) | (j &
|
||||
((0x1 << pf->hw.func_caps.rss_table_entry_width) - 1));
|
||||
(BIT(pf->hw.func_caps.rss_table_entry_width) - 1));
|
||||
/* On i = 3, we have 4 entries in lut; write to the register */
|
||||
if ((i & 3) == 3)
|
||||
wr32(hw, I40E_PFQF_HLUT(i >> 2), lut);
|
||||
|
@ -7587,7 +7588,7 @@ i40e_status i40e_set_npar_bw_setting(struct i40e_pf *pf)
|
|||
i40e_status status;
|
||||
|
||||
/* Set the valid bit for this PF */
|
||||
bw_data.pf_valid_bits = cpu_to_le16(1 << pf->hw.pf_id);
|
||||
bw_data.pf_valid_bits = cpu_to_le16(BIT(pf->hw.pf_id));
|
||||
bw_data.max_bw[pf->hw.pf_id] = pf->npar_max_bw & I40E_ALT_BW_VALUE_MASK;
|
||||
bw_data.min_bw[pf->hw.pf_id] = pf->npar_min_bw & I40E_ALT_BW_VALUE_MASK;
|
||||
|
||||
|
@ -7720,7 +7721,7 @@ static int i40e_sw_init(struct i40e_pf *pf)
|
|||
/* Depending on PF configurations, it is possible that the RSS
|
||||
* maximum might end up larger than the available queues
|
||||
*/
|
||||
pf->rss_size_max = 0x1 << pf->hw.func_caps.rss_table_entry_width;
|
||||
pf->rss_size_max = BIT(pf->hw.func_caps.rss_table_entry_width);
|
||||
pf->rss_size = 1;
|
||||
pf->rss_table_size = pf->hw.func_caps.rss_table_size;
|
||||
pf->rss_size_max = min_t(int, pf->rss_size_max,
|
||||
|
@ -7870,7 +7871,7 @@ static int i40e_set_features(struct net_device *netdev,
|
|||
need_reset = i40e_set_ntuple(pf, features);
|
||||
|
||||
if (need_reset)
|
||||
i40e_do_reset(pf, (1 << __I40E_PF_RESET_REQUESTED));
|
||||
i40e_do_reset(pf, BIT_ULL(__I40E_PF_RESET_REQUESTED));
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -7933,7 +7934,7 @@ static void i40e_add_vxlan_port(struct net_device *netdev,
|
|||
|
||||
/* New port: add it and mark its index in the bitmap */
|
||||
pf->vxlan_ports[next_idx] = port;
|
||||
pf->pending_vxlan_bitmap |= (1 << next_idx);
|
||||
pf->pending_vxlan_bitmap |= BIT_ULL(next_idx);
|
||||
pf->flags |= I40E_FLAG_VXLAN_FILTER_SYNC;
|
||||
|
||||
dev_info(&pf->pdev->dev, "adding vxlan port %d\n", ntohs(port));
|
||||
|
@ -7964,7 +7965,7 @@ static void i40e_del_vxlan_port(struct net_device *netdev,
|
|||
* and make it pending
|
||||
*/
|
||||
pf->vxlan_ports[idx] = 0;
|
||||
pf->pending_vxlan_bitmap |= (1 << idx);
|
||||
pf->pending_vxlan_bitmap |= BIT_ULL(idx);
|
||||
pf->flags |= I40E_FLAG_VXLAN_FILTER_SYNC;
|
||||
|
||||
dev_info(&pf->pdev->dev, "deleting vxlan port %d\n",
|
||||
|
|
|
@ -50,7 +50,7 @@ i40e_status i40e_init_nvm(struct i40e_hw *hw)
|
|||
sr_size = ((gens & I40E_GLNVM_GENS_SR_SIZE_MASK) >>
|
||||
I40E_GLNVM_GENS_SR_SIZE_SHIFT);
|
||||
/* Switching to words (sr_size contains power of 2KB) */
|
||||
nvm->sr_size = (1 << sr_size) * I40E_SR_WORDS_IN_1KB;
|
||||
nvm->sr_size = BIT(sr_size) * I40E_SR_WORDS_IN_1KB;
|
||||
|
||||
/* Check if we are in the normal or blank NVM programming mode */
|
||||
fla = rd32(hw, I40E_GLNVM_FLA);
|
||||
|
@ -189,8 +189,8 @@ static i40e_status i40e_read_nvm_word_srctl(struct i40e_hw *hw, u16 offset,
|
|||
ret_code = i40e_poll_sr_srctl_done_bit(hw);
|
||||
if (!ret_code) {
|
||||
/* Write the address and start reading */
|
||||
sr_reg = (u32)(offset << I40E_GLNVM_SRCTL_ADDR_SHIFT) |
|
||||
(1 << I40E_GLNVM_SRCTL_START_SHIFT);
|
||||
sr_reg = ((u32)offset << I40E_GLNVM_SRCTL_ADDR_SHIFT) |
|
||||
BIT(I40E_GLNVM_SRCTL_START_SHIFT);
|
||||
wr32(hw, I40E_GLNVM_SRCTL, sr_reg);
|
||||
|
||||
/* Poll I40E_GLNVM_SRCTL until the done bit is set */
|
||||
|
|
|
@ -43,9 +43,8 @@
|
|||
#define I40E_PTP_10GB_INCVAL 0x0333333333ULL
|
||||
#define I40E_PTP_1GB_INCVAL 0x2000000000ULL
|
||||
|
||||
#define I40E_PRTTSYN_CTL1_TSYNTYPE_V1 (0x1 << \
|
||||
I40E_PRTTSYN_CTL1_TSYNTYPE_SHIFT)
|
||||
#define I40E_PRTTSYN_CTL1_TSYNTYPE_V2 (0x2 << \
|
||||
#define I40E_PRTTSYN_CTL1_TSYNTYPE_V1 BIT(I40E_PRTTSYN_CTL1_TSYNTYPE_SHIFT)
|
||||
#define I40E_PRTTSYN_CTL1_TSYNTYPE_V2 (2 << \
|
||||
I40E_PRTTSYN_CTL1_TSYNTYPE_SHIFT)
|
||||
|
||||
/**
|
||||
|
@ -357,7 +356,7 @@ void i40e_ptp_rx_hwtstamp(struct i40e_pf *pf, struct sk_buff *skb, u8 index)
|
|||
|
||||
prttsyn_stat = rd32(hw, I40E_PRTTSYN_STAT_1);
|
||||
|
||||
if (!(prttsyn_stat & (1 << index)))
|
||||
if (!(prttsyn_stat & BIT(index)))
|
||||
return;
|
||||
|
||||
lo = rd32(hw, I40E_PRTTSYN_RXTIME_L(index));
|
||||
|
|
|
@ -464,7 +464,7 @@ static void i40e_fd_handle_status(struct i40e_ring *rx_ring,
|
|||
error = (qw & I40E_RX_PROG_STATUS_DESC_QW1_ERROR_MASK) >>
|
||||
I40E_RX_PROG_STATUS_DESC_QW1_ERROR_SHIFT;
|
||||
|
||||
if (error == (0x1 << I40E_RX_PROG_STATUS_DESC_FD_TBL_FULL_SHIFT)) {
|
||||
if (error == BIT(I40E_RX_PROG_STATUS_DESC_FD_TBL_FULL_SHIFT)) {
|
||||
if ((rx_desc->wb.qword0.hi_dword.fd_id != 0) ||
|
||||
(I40E_DEBUG_FD & pf->hw.debug_mask))
|
||||
dev_warn(&pdev->dev, "ntuple filter loc = %d, could not be added\n",
|
||||
|
@ -509,8 +509,7 @@ static void i40e_fd_handle_status(struct i40e_ring *rx_ring,
|
|||
dev_info(&pdev->dev,
|
||||
"FD filter programming failed due to incorrect filter parameters\n");
|
||||
}
|
||||
} else if (error ==
|
||||
(0x1 << I40E_RX_PROG_STATUS_DESC_NO_FD_ENTRY_SHIFT)) {
|
||||
} else if (error == BIT(I40E_RX_PROG_STATUS_DESC_NO_FD_ENTRY_SHIFT)) {
|
||||
if (I40E_DEBUG_FD & pf->hw.debug_mask)
|
||||
dev_info(&pdev->dev, "ntuple filter fd_id = %d, could not be removed\n",
|
||||
rx_desc->wb.qword0.hi_dword.fd_id);
|
||||
|
@ -1363,7 +1362,7 @@ static inline void i40e_rx_checksum(struct i40e_vsi *vsi,
|
|||
return;
|
||||
|
||||
/* did the hardware decode the packet and checksum? */
|
||||
if (!(rx_status & (1 << I40E_RX_DESC_STATUS_L3L4P_SHIFT)))
|
||||
if (!(rx_status & BIT(I40E_RX_DESC_STATUS_L3L4P_SHIFT)))
|
||||
return;
|
||||
|
||||
/* both known and outer_ip must be set for the below code to work */
|
||||
|
@ -1378,25 +1377,25 @@ static inline void i40e_rx_checksum(struct i40e_vsi *vsi,
|
|||
ipv6 = true;
|
||||
|
||||
if (ipv4 &&
|
||||
(rx_error & ((1 << I40E_RX_DESC_ERROR_IPE_SHIFT) |
|
||||
(1 << I40E_RX_DESC_ERROR_EIPE_SHIFT))))
|
||||
(rx_error & (BIT(I40E_RX_DESC_ERROR_IPE_SHIFT) |
|
||||
BIT(I40E_RX_DESC_ERROR_EIPE_SHIFT))))
|
||||
goto checksum_fail;
|
||||
|
||||
/* likely incorrect csum if alternate IP extension headers found */
|
||||
if (ipv6 &&
|
||||
rx_status & (1 << I40E_RX_DESC_STATUS_IPV6EXADD_SHIFT))
|
||||
rx_status & BIT(I40E_RX_DESC_STATUS_IPV6EXADD_SHIFT))
|
||||
/* don't increment checksum err here, non-fatal err */
|
||||
return;
|
||||
|
||||
/* there was some L4 error, count error and punt packet to the stack */
|
||||
if (rx_error & (1 << I40E_RX_DESC_ERROR_L4E_SHIFT))
|
||||
if (rx_error & BIT(I40E_RX_DESC_ERROR_L4E_SHIFT))
|
||||
goto checksum_fail;
|
||||
|
||||
/* handle packets that were not able to be checksummed due
|
||||
* to arrival speed, in this case the stack can compute
|
||||
* the csum.
|
||||
*/
|
||||
if (rx_error & (1 << I40E_RX_DESC_ERROR_PPRS_SHIFT))
|
||||
if (rx_error & BIT(I40E_RX_DESC_ERROR_PPRS_SHIFT))
|
||||
return;
|
||||
|
||||
/* If VXLAN traffic has an outer UDPv4 checksum we need to check
|
||||
|
@ -1520,7 +1519,7 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget)
|
|||
rx_status = (qword & I40E_RXD_QW1_STATUS_MASK) >>
|
||||
I40E_RXD_QW1_STATUS_SHIFT;
|
||||
|
||||
if (!(rx_status & (1 << I40E_RX_DESC_STATUS_DD_SHIFT)))
|
||||
if (!(rx_status & BIT(I40E_RX_DESC_STATUS_DD_SHIFT)))
|
||||
break;
|
||||
|
||||
/* This memory barrier is needed to keep us from reading
|
||||
|
@ -1561,8 +1560,8 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget)
|
|||
|
||||
rx_error = (qword & I40E_RXD_QW1_ERROR_MASK) >>
|
||||
I40E_RXD_QW1_ERROR_SHIFT;
|
||||
rx_hbo = rx_error & (1 << I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
rx_error &= ~(1 << I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
rx_hbo = rx_error & BIT(I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
rx_error &= ~BIT(I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
|
||||
rx_ptype = (qword & I40E_RXD_QW1_PTYPE_MASK) >>
|
||||
I40E_RXD_QW1_PTYPE_SHIFT;
|
||||
|
@ -1614,7 +1613,7 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget)
|
|||
I40E_RX_INCREMENT(rx_ring, i);
|
||||
|
||||
if (unlikely(
|
||||
!(rx_status & (1 << I40E_RX_DESC_STATUS_EOF_SHIFT)))) {
|
||||
!(rx_status & BIT(I40E_RX_DESC_STATUS_EOF_SHIFT)))) {
|
||||
struct i40e_rx_buffer *next_buffer;
|
||||
|
||||
next_buffer = &rx_ring->rx_bi[i];
|
||||
|
@ -1624,7 +1623,7 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget)
|
|||
}
|
||||
|
||||
/* ERR_MASK will only have valid bits if EOP set */
|
||||
if (unlikely(rx_error & (1 << I40E_RX_DESC_ERROR_RXE_SHIFT))) {
|
||||
if (unlikely(rx_error & BIT(I40E_RX_DESC_ERROR_RXE_SHIFT))) {
|
||||
dev_kfree_skb_any(skb);
|
||||
continue;
|
||||
}
|
||||
|
@ -1646,7 +1645,7 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget)
|
|||
|
||||
i40e_rx_checksum(vsi, skb, rx_status, rx_error, rx_ptype);
|
||||
|
||||
vlan_tag = rx_status & (1 << I40E_RX_DESC_STATUS_L2TAG1P_SHIFT)
|
||||
vlan_tag = rx_status & BIT(I40E_RX_DESC_STATUS_L2TAG1P_SHIFT)
|
||||
? le16_to_cpu(rx_desc->wb.qword0.lo_dword.l2tag1)
|
||||
: 0;
|
||||
#ifdef I40E_FCOE
|
||||
|
@ -1707,7 +1706,7 @@ static int i40e_clean_rx_irq_1buf(struct i40e_ring *rx_ring, int budget)
|
|||
rx_status = (qword & I40E_RXD_QW1_STATUS_MASK) >>
|
||||
I40E_RXD_QW1_STATUS_SHIFT;
|
||||
|
||||
if (!(rx_status & (1 << I40E_RX_DESC_STATUS_DD_SHIFT)))
|
||||
if (!(rx_status & BIT(I40E_RX_DESC_STATUS_DD_SHIFT)))
|
||||
break;
|
||||
|
||||
/* This memory barrier is needed to keep us from reading
|
||||
|
@ -1730,7 +1729,7 @@ static int i40e_clean_rx_irq_1buf(struct i40e_ring *rx_ring, int budget)
|
|||
|
||||
rx_error = (qword & I40E_RXD_QW1_ERROR_MASK) >>
|
||||
I40E_RXD_QW1_ERROR_SHIFT;
|
||||
rx_error &= ~(1 << I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
rx_error &= ~BIT(I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
|
||||
rx_ptype = (qword & I40E_RXD_QW1_PTYPE_MASK) >>
|
||||
I40E_RXD_QW1_PTYPE_SHIFT;
|
||||
|
@ -1748,13 +1747,13 @@ static int i40e_clean_rx_irq_1buf(struct i40e_ring *rx_ring, int budget)
|
|||
I40E_RX_INCREMENT(rx_ring, i);
|
||||
|
||||
if (unlikely(
|
||||
!(rx_status & (1 << I40E_RX_DESC_STATUS_EOF_SHIFT)))) {
|
||||
!(rx_status & BIT(I40E_RX_DESC_STATUS_EOF_SHIFT)))) {
|
||||
rx_ring->rx_stats.non_eop_descs++;
|
||||
continue;
|
||||
}
|
||||
|
||||
/* ERR_MASK will only have valid bits if EOP set */
|
||||
if (unlikely(rx_error & (1 << I40E_RX_DESC_ERROR_RXE_SHIFT))) {
|
||||
if (unlikely(rx_error & BIT(I40E_RX_DESC_ERROR_RXE_SHIFT))) {
|
||||
dev_kfree_skb_any(skb);
|
||||
/* TODO: shouldn't we increment a counter indicating the
|
||||
* drop?
|
||||
|
@ -1779,7 +1778,7 @@ static int i40e_clean_rx_irq_1buf(struct i40e_ring *rx_ring, int budget)
|
|||
|
||||
i40e_rx_checksum(vsi, skb, rx_status, rx_error, rx_ptype);
|
||||
|
||||
vlan_tag = rx_status & (1 << I40E_RX_DESC_STATUS_L2TAG1P_SHIFT)
|
||||
vlan_tag = rx_status & BIT(I40E_RX_DESC_STATUS_L2TAG1P_SHIFT)
|
||||
? le16_to_cpu(rx_desc->wb.qword0.lo_dword.l2tag1)
|
||||
: 0;
|
||||
#ifdef I40E_FCOE
|
||||
|
|
|
@ -66,17 +66,17 @@ enum i40e_dyn_idx_t {
|
|||
|
||||
/* Supported RSS offloads */
|
||||
#define I40E_DEFAULT_RSS_HENA ( \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_UDP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_SCTP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_TCP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_OTHER) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV4) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_UDP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_TCP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_SCTP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_OTHER) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV6) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_L2_PAYLOAD))
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_UDP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_SCTP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_TCP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_OTHER) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV4) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_UDP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_TCP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_SCTP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_OTHER) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV6) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_L2_PAYLOAD))
|
||||
|
||||
/* Supported Rx Buffer Sizes */
|
||||
#define I40E_RXBUFFER_512 512 /* Used for packet split */
|
||||
|
@ -129,17 +129,17 @@ enum i40e_dyn_idx_t {
|
|||
#define DESC_NEEDED (MAX_SKB_FRAGS + 4)
|
||||
#define I40E_MIN_DESC_PENDING 4
|
||||
|
||||
#define I40E_TX_FLAGS_CSUM (u32)(1)
|
||||
#define I40E_TX_FLAGS_HW_VLAN (u32)(1 << 1)
|
||||
#define I40E_TX_FLAGS_SW_VLAN (u32)(1 << 2)
|
||||
#define I40E_TX_FLAGS_TSO (u32)(1 << 3)
|
||||
#define I40E_TX_FLAGS_IPV4 (u32)(1 << 4)
|
||||
#define I40E_TX_FLAGS_IPV6 (u32)(1 << 5)
|
||||
#define I40E_TX_FLAGS_FCCRC (u32)(1 << 6)
|
||||
#define I40E_TX_FLAGS_FSO (u32)(1 << 7)
|
||||
#define I40E_TX_FLAGS_TSYN (u32)(1 << 8)
|
||||
#define I40E_TX_FLAGS_FD_SB (u32)(1 << 9)
|
||||
#define I40E_TX_FLAGS_VXLAN_TUNNEL (u32)(1 << 10)
|
||||
#define I40E_TX_FLAGS_CSUM BIT(0)
|
||||
#define I40E_TX_FLAGS_HW_VLAN BIT(1)
|
||||
#define I40E_TX_FLAGS_SW_VLAN BIT(2)
|
||||
#define I40E_TX_FLAGS_TSO BIT(3)
|
||||
#define I40E_TX_FLAGS_IPV4 BIT(4)
|
||||
#define I40E_TX_FLAGS_IPV6 BIT(5)
|
||||
#define I40E_TX_FLAGS_FCCRC BIT(6)
|
||||
#define I40E_TX_FLAGS_FSO BIT(7)
|
||||
#define I40E_TX_FLAGS_TSYN BIT(8)
|
||||
#define I40E_TX_FLAGS_FD_SB BIT(9)
|
||||
#define I40E_TX_FLAGS_VXLAN_TUNNEL BIT(10)
|
||||
#define I40E_TX_FLAGS_VLAN_MASK 0xffff0000
|
||||
#define I40E_TX_FLAGS_VLAN_PRIO_MASK 0xe0000000
|
||||
#define I40E_TX_FLAGS_VLAN_PRIO_SHIFT 29
|
||||
|
|
|
@ -611,7 +611,7 @@ enum i40e_rx_desc_status_bits {
|
|||
};
|
||||
|
||||
#define I40E_RXD_QW1_STATUS_SHIFT 0
|
||||
#define I40E_RXD_QW1_STATUS_MASK (((1 << I40E_RX_DESC_STATUS_LAST) - 1) \
|
||||
#define I40E_RXD_QW1_STATUS_MASK ((BIT(I40E_RX_DESC_STATUS_LAST) - 1) \
|
||||
<< I40E_RXD_QW1_STATUS_SHIFT)
|
||||
|
||||
#define I40E_RXD_QW1_STATUS_TSYNINDX_SHIFT I40E_RX_DESC_STATUS_TSYNINDX_SHIFT
|
||||
|
@ -619,8 +619,8 @@ enum i40e_rx_desc_status_bits {
|
|||
I40E_RXD_QW1_STATUS_TSYNINDX_SHIFT)
|
||||
|
||||
#define I40E_RXD_QW1_STATUS_TSYNVALID_SHIFT I40E_RX_DESC_STATUS_TSYNVALID_SHIFT
|
||||
#define I40E_RXD_QW1_STATUS_TSYNVALID_MASK (0x1UL << \
|
||||
I40E_RXD_QW1_STATUS_TSYNVALID_SHIFT)
|
||||
#define I40E_RXD_QW1_STATUS_TSYNVALID_MASK \
|
||||
BIT_ULL(I40E_RXD_QW1_STATUS_TSYNVALID_SHIFT)
|
||||
|
||||
enum i40e_rx_desc_fltstat_values {
|
||||
I40E_RX_DESC_FLTSTAT_NO_DATA = 0,
|
||||
|
@ -754,8 +754,7 @@ enum i40e_rx_ptype_payload_layer {
|
|||
I40E_RXD_QW1_LENGTH_HBUF_SHIFT)
|
||||
|
||||
#define I40E_RXD_QW1_LENGTH_SPH_SHIFT 63
|
||||
#define I40E_RXD_QW1_LENGTH_SPH_MASK (0x1ULL << \
|
||||
I40E_RXD_QW1_LENGTH_SPH_SHIFT)
|
||||
#define I40E_RXD_QW1_LENGTH_SPH_MASK BIT_ULL(I40E_RXD_QW1_LENGTH_SPH_SHIFT)
|
||||
|
||||
enum i40e_rx_desc_ext_status_bits {
|
||||
/* Note: These are predefined bit offsets */
|
||||
|
@ -931,12 +930,12 @@ enum i40e_tx_ctx_desc_eipt_offload {
|
|||
#define I40E_TXD_CTX_QW0_NATT_SHIFT 9
|
||||
#define I40E_TXD_CTX_QW0_NATT_MASK (0x3ULL << I40E_TXD_CTX_QW0_NATT_SHIFT)
|
||||
|
||||
#define I40E_TXD_CTX_UDP_TUNNELING (0x1ULL << I40E_TXD_CTX_QW0_NATT_SHIFT)
|
||||
#define I40E_TXD_CTX_UDP_TUNNELING BIT_ULL(I40E_TXD_CTX_QW0_NATT_SHIFT)
|
||||
#define I40E_TXD_CTX_GRE_TUNNELING (0x2ULL << I40E_TXD_CTX_QW0_NATT_SHIFT)
|
||||
|
||||
#define I40E_TXD_CTX_QW0_EIP_NOINC_SHIFT 11
|
||||
#define I40E_TXD_CTX_QW0_EIP_NOINC_MASK (0x1ULL << \
|
||||
I40E_TXD_CTX_QW0_EIP_NOINC_SHIFT)
|
||||
#define I40E_TXD_CTX_QW0_EIP_NOINC_MASK \
|
||||
BIT_ULL(I40E_TXD_CTX_QW0_EIP_NOINC_SHIFT)
|
||||
|
||||
#define I40E_TXD_CTX_EIP_NOINC_IPID_CONST I40E_TXD_CTX_QW0_EIP_NOINC_MASK
|
||||
|
||||
|
@ -1001,8 +1000,8 @@ enum i40e_filter_program_desc_fd_status {
|
|||
};
|
||||
|
||||
#define I40E_TXD_FLTR_QW0_DEST_VSI_SHIFT 23
|
||||
#define I40E_TXD_FLTR_QW0_DEST_VSI_MASK (0x1FFUL << \
|
||||
I40E_TXD_FLTR_QW0_DEST_VSI_SHIFT)
|
||||
#define I40E_TXD_FLTR_QW0_DEST_VSI_MASK \
|
||||
BIT_ULL(I40E_TXD_FLTR_QW0_DEST_VSI_SHIFT)
|
||||
|
||||
#define I40E_TXD_FLTR_QW1_CMD_SHIFT 4
|
||||
#define I40E_TXD_FLTR_QW1_CMD_MASK (0xFFFFULL << \
|
||||
|
@ -1020,8 +1019,7 @@ enum i40e_filter_program_desc_pcmd {
|
|||
#define I40E_TXD_FLTR_QW1_DEST_MASK (0x3ULL << I40E_TXD_FLTR_QW1_DEST_SHIFT)
|
||||
|
||||
#define I40E_TXD_FLTR_QW1_CNT_ENA_SHIFT (0x7ULL + I40E_TXD_FLTR_QW1_CMD_SHIFT)
|
||||
#define I40E_TXD_FLTR_QW1_CNT_ENA_MASK (0x1ULL << \
|
||||
I40E_TXD_FLTR_QW1_CNT_ENA_SHIFT)
|
||||
#define I40E_TXD_FLTR_QW1_CNT_ENA_MASK BIT_ULL(I40E_TXD_FLTR_QW1_CNT_ENA_SHIFT)
|
||||
|
||||
#define I40E_TXD_FLTR_QW1_FD_STATUS_SHIFT (0x9ULL + \
|
||||
I40E_TXD_FLTR_QW1_CMD_SHIFT)
|
||||
|
|
|
@ -277,16 +277,14 @@ static void i40e_config_irq_link_list(struct i40e_vf *vf, u16 vsi_id,
|
|||
}
|
||||
tempmap = vecmap->rxq_map;
|
||||
for_each_set_bit(vsi_queue_id, &tempmap, I40E_MAX_VSI_QP) {
|
||||
linklistmap |= (1 <<
|
||||
(I40E_VIRTCHNL_SUPPORTED_QTYPES *
|
||||
vsi_queue_id));
|
||||
linklistmap |= (BIT(I40E_VIRTCHNL_SUPPORTED_QTYPES *
|
||||
vsi_queue_id));
|
||||
}
|
||||
|
||||
tempmap = vecmap->txq_map;
|
||||
for_each_set_bit(vsi_queue_id, &tempmap, I40E_MAX_VSI_QP) {
|
||||
linklistmap |= (1 <<
|
||||
(I40E_VIRTCHNL_SUPPORTED_QTYPES * vsi_queue_id
|
||||
+ 1));
|
||||
linklistmap |= (BIT(I40E_VIRTCHNL_SUPPORTED_QTYPES *
|
||||
vsi_queue_id + 1));
|
||||
}
|
||||
|
||||
next_q = find_first_bit(&linklistmap,
|
||||
|
@ -332,7 +330,7 @@ static void i40e_config_irq_link_list(struct i40e_vf *vf, u16 vsi_id,
|
|||
reg = (vector_id) |
|
||||
(qtype << I40E_QINT_RQCTL_NEXTQ_TYPE_SHIFT) |
|
||||
(pf_queue_id << I40E_QINT_RQCTL_NEXTQ_INDX_SHIFT) |
|
||||
(1 << I40E_QINT_RQCTL_CAUSE_ENA_SHIFT) |
|
||||
BIT(I40E_QINT_RQCTL_CAUSE_ENA_SHIFT) |
|
||||
(itr_idx << I40E_QINT_RQCTL_ITR_INDX_SHIFT);
|
||||
wr32(hw, reg_idx, reg);
|
||||
}
|
||||
|
@ -897,7 +895,7 @@ void i40e_free_vfs(struct i40e_pf *pf)
|
|||
for (vf_id = 0; vf_id < tmp; vf_id++) {
|
||||
reg_idx = (hw->func_caps.vf_base_id + vf_id) / 32;
|
||||
bit_idx = (hw->func_caps.vf_base_id + vf_id) % 32;
|
||||
wr32(hw, I40E_GLGEN_VFLRSTAT(reg_idx), (1 << bit_idx));
|
||||
wr32(hw, I40E_GLGEN_VFLRSTAT(reg_idx), BIT(bit_idx));
|
||||
}
|
||||
}
|
||||
clear_bit(__I40E_VF_DISABLE, &pf->state);
|
||||
|
@ -1983,9 +1981,9 @@ int i40e_vc_process_vflr_event(struct i40e_pf *pf)
|
|||
/* read GLGEN_VFLRSTAT register to find out the flr VFs */
|
||||
vf = &pf->vf[vf_id];
|
||||
reg = rd32(hw, I40E_GLGEN_VFLRSTAT(reg_idx));
|
||||
if (reg & (1 << bit_idx)) {
|
||||
if (reg & BIT(bit_idx)) {
|
||||
/* clear the bit in GLGEN_VFLRSTAT */
|
||||
wr32(hw, I40E_GLGEN_VFLRSTAT(reg_idx), (1 << bit_idx));
|
||||
wr32(hw, I40E_GLGEN_VFLRSTAT(reg_idx), BIT(bit_idx));
|
||||
|
||||
if (!test_bit(__I40E_DOWN, &pf->state))
|
||||
i40e_reset_vf(vf, true);
|
||||
|
|
|
@ -127,8 +127,8 @@ struct i40e_hmc_info {
|
|||
I40E_PFHMC_SDDATALOW_PMSDBPCOUNT_SHIFT) | \
|
||||
((((type) == I40E_SD_TYPE_PAGED) ? 0 : 1) << \
|
||||
I40E_PFHMC_SDDATALOW_PMSDTYPE_SHIFT) | \
|
||||
(1 << I40E_PFHMC_SDDATALOW_PMSDVALID_SHIFT); \
|
||||
val3 = (sd_index) | (1u << I40E_PFHMC_SDCMD_PMSDWR_SHIFT); \
|
||||
BIT(I40E_PFHMC_SDDATALOW_PMSDVALID_SHIFT); \
|
||||
val3 = (sd_index) | BIT_ULL(I40E_PFHMC_SDCMD_PMSDWR_SHIFT); \
|
||||
wr32((hw), I40E_PFHMC_SDDATAHIGH, val1); \
|
||||
wr32((hw), I40E_PFHMC_SDDATALOW, val2); \
|
||||
wr32((hw), I40E_PFHMC_SDCMD, val3); \
|
||||
|
@ -147,7 +147,7 @@ struct i40e_hmc_info {
|
|||
I40E_PFHMC_SDDATALOW_PMSDBPCOUNT_SHIFT) | \
|
||||
((((type) == I40E_SD_TYPE_PAGED) ? 0 : 1) << \
|
||||
I40E_PFHMC_SDDATALOW_PMSDTYPE_SHIFT); \
|
||||
val3 = (sd_index) | (1u << I40E_PFHMC_SDCMD_PMSDWR_SHIFT); \
|
||||
val3 = (sd_index) | BIT_ULL(I40E_PFHMC_SDCMD_PMSDWR_SHIFT); \
|
||||
wr32((hw), I40E_PFHMC_SDDATAHIGH, 0); \
|
||||
wr32((hw), I40E_PFHMC_SDDATALOW, val2); \
|
||||
wr32((hw), I40E_PFHMC_SDCMD, val3); \
|
||||
|
|
|
@ -850,7 +850,7 @@ static inline void i40e_rx_checksum(struct i40e_vsi *vsi,
|
|||
return;
|
||||
|
||||
/* did the hardware decode the packet and checksum? */
|
||||
if (!(rx_status & (1 << I40E_RX_DESC_STATUS_L3L4P_SHIFT)))
|
||||
if (!(rx_status & BIT(I40E_RX_DESC_STATUS_L3L4P_SHIFT)))
|
||||
return;
|
||||
|
||||
/* both known and outer_ip must be set for the below code to work */
|
||||
|
@ -865,25 +865,25 @@ static inline void i40e_rx_checksum(struct i40e_vsi *vsi,
|
|||
ipv6 = true;
|
||||
|
||||
if (ipv4 &&
|
||||
(rx_error & ((1 << I40E_RX_DESC_ERROR_IPE_SHIFT) |
|
||||
(1 << I40E_RX_DESC_ERROR_EIPE_SHIFT))))
|
||||
(rx_error & (BIT(I40E_RX_DESC_ERROR_IPE_SHIFT) |
|
||||
BIT(I40E_RX_DESC_ERROR_EIPE_SHIFT))))
|
||||
goto checksum_fail;
|
||||
|
||||
/* likely incorrect csum if alternate IP extension headers found */
|
||||
if (ipv6 &&
|
||||
rx_status & (1 << I40E_RX_DESC_STATUS_IPV6EXADD_SHIFT))
|
||||
rx_status & BIT(I40E_RX_DESC_STATUS_IPV6EXADD_SHIFT))
|
||||
/* don't increment checksum err here, non-fatal err */
|
||||
return;
|
||||
|
||||
/* there was some L4 error, count error and punt packet to the stack */
|
||||
if (rx_error & (1 << I40E_RX_DESC_ERROR_L4E_SHIFT))
|
||||
if (rx_error & BIT(I40E_RX_DESC_ERROR_L4E_SHIFT))
|
||||
goto checksum_fail;
|
||||
|
||||
/* handle packets that were not able to be checksummed due
|
||||
* to arrival speed, in this case the stack can compute
|
||||
* the csum.
|
||||
*/
|
||||
if (rx_error & (1 << I40E_RX_DESC_ERROR_PPRS_SHIFT))
|
||||
if (rx_error & BIT(I40E_RX_DESC_ERROR_PPRS_SHIFT))
|
||||
return;
|
||||
|
||||
/* If VXLAN traffic has an outer UDPv4 checksum we need to check
|
||||
|
@ -1004,7 +1004,7 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget)
|
|||
rx_status = (qword & I40E_RXD_QW1_STATUS_MASK) >>
|
||||
I40E_RXD_QW1_STATUS_SHIFT;
|
||||
|
||||
if (!(rx_status & (1 << I40E_RX_DESC_STATUS_DD_SHIFT)))
|
||||
if (!(rx_status & BIT(I40E_RX_DESC_STATUS_DD_SHIFT)))
|
||||
break;
|
||||
|
||||
/* This memory barrier is needed to keep us from reading
|
||||
|
@ -1040,8 +1040,8 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget)
|
|||
|
||||
rx_error = (qword & I40E_RXD_QW1_ERROR_MASK) >>
|
||||
I40E_RXD_QW1_ERROR_SHIFT;
|
||||
rx_hbo = rx_error & (1 << I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
rx_error &= ~(1 << I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
rx_hbo = rx_error & BIT(I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
rx_error &= ~BIT(I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
|
||||
rx_ptype = (qword & I40E_RXD_QW1_PTYPE_MASK) >>
|
||||
I40E_RXD_QW1_PTYPE_SHIFT;
|
||||
|
@ -1093,7 +1093,7 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget)
|
|||
I40E_RX_INCREMENT(rx_ring, i);
|
||||
|
||||
if (unlikely(
|
||||
!(rx_status & (1 << I40E_RX_DESC_STATUS_EOF_SHIFT)))) {
|
||||
!(rx_status & BIT(I40E_RX_DESC_STATUS_EOF_SHIFT)))) {
|
||||
struct i40e_rx_buffer *next_buffer;
|
||||
|
||||
next_buffer = &rx_ring->rx_bi[i];
|
||||
|
@ -1103,7 +1103,7 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget)
|
|||
}
|
||||
|
||||
/* ERR_MASK will only have valid bits if EOP set */
|
||||
if (unlikely(rx_error & (1 << I40E_RX_DESC_ERROR_RXE_SHIFT))) {
|
||||
if (unlikely(rx_error & BIT(I40E_RX_DESC_ERROR_RXE_SHIFT))) {
|
||||
dev_kfree_skb_any(skb);
|
||||
continue;
|
||||
}
|
||||
|
@ -1118,7 +1118,7 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget)
|
|||
|
||||
i40e_rx_checksum(vsi, skb, rx_status, rx_error, rx_ptype);
|
||||
|
||||
vlan_tag = rx_status & (1 << I40E_RX_DESC_STATUS_L2TAG1P_SHIFT)
|
||||
vlan_tag = rx_status & BIT(I40E_RX_DESC_STATUS_L2TAG1P_SHIFT)
|
||||
? le16_to_cpu(rx_desc->wb.qword0.lo_dword.l2tag1)
|
||||
: 0;
|
||||
#ifdef I40E_FCOE
|
||||
|
@ -1179,7 +1179,7 @@ static int i40e_clean_rx_irq_1buf(struct i40e_ring *rx_ring, int budget)
|
|||
rx_status = (qword & I40E_RXD_QW1_STATUS_MASK) >>
|
||||
I40E_RXD_QW1_STATUS_SHIFT;
|
||||
|
||||
if (!(rx_status & (1 << I40E_RX_DESC_STATUS_DD_SHIFT)))
|
||||
if (!(rx_status & BIT(I40E_RX_DESC_STATUS_DD_SHIFT)))
|
||||
break;
|
||||
|
||||
/* This memory barrier is needed to keep us from reading
|
||||
|
@ -1197,7 +1197,7 @@ static int i40e_clean_rx_irq_1buf(struct i40e_ring *rx_ring, int budget)
|
|||
|
||||
rx_error = (qword & I40E_RXD_QW1_ERROR_MASK) >>
|
||||
I40E_RXD_QW1_ERROR_SHIFT;
|
||||
rx_error &= ~(1 << I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
rx_error &= ~BIT(I40E_RX_DESC_ERROR_HBO_SHIFT);
|
||||
|
||||
rx_ptype = (qword & I40E_RXD_QW1_PTYPE_MASK) >>
|
||||
I40E_RXD_QW1_PTYPE_SHIFT;
|
||||
|
@ -1215,13 +1215,13 @@ static int i40e_clean_rx_irq_1buf(struct i40e_ring *rx_ring, int budget)
|
|||
I40E_RX_INCREMENT(rx_ring, i);
|
||||
|
||||
if (unlikely(
|
||||
!(rx_status & (1 << I40E_RX_DESC_STATUS_EOF_SHIFT)))) {
|
||||
!(rx_status & BIT(I40E_RX_DESC_STATUS_EOF_SHIFT)))) {
|
||||
rx_ring->rx_stats.non_eop_descs++;
|
||||
continue;
|
||||
}
|
||||
|
||||
/* ERR_MASK will only have valid bits if EOP set */
|
||||
if (unlikely(rx_error & (1 << I40E_RX_DESC_ERROR_RXE_SHIFT))) {
|
||||
if (unlikely(rx_error & BIT(I40E_RX_DESC_ERROR_RXE_SHIFT))) {
|
||||
dev_kfree_skb_any(skb);
|
||||
/* TODO: shouldn't we increment a counter indicating the
|
||||
* drop?
|
||||
|
@ -1239,7 +1239,7 @@ static int i40e_clean_rx_irq_1buf(struct i40e_ring *rx_ring, int budget)
|
|||
|
||||
i40e_rx_checksum(vsi, skb, rx_status, rx_error, rx_ptype);
|
||||
|
||||
vlan_tag = rx_status & (1 << I40E_RX_DESC_STATUS_L2TAG1P_SHIFT)
|
||||
vlan_tag = rx_status & BIT(I40E_RX_DESC_STATUS_L2TAG1P_SHIFT)
|
||||
? le16_to_cpu(rx_desc->wb.qword0.lo_dword.l2tag1)
|
||||
: 0;
|
||||
i40e_receive_skb(rx_ring, skb, vlan_tag);
|
||||
|
@ -1314,8 +1314,7 @@ static inline void i40e_update_enable_itr(struct i40e_vsi *vsi,
|
|||
if (!test_bit(__I40E_DOWN, &vsi->state))
|
||||
wr32(hw, I40E_VFINT_DYN_CTLN1(vector - 1), val);
|
||||
} else {
|
||||
i40evf_irq_enable_queues(vsi->back,
|
||||
1 << q_vector->v_idx);
|
||||
i40evf_irq_enable_queues(vsi->back, BIT(q_vector->v_idx));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -66,17 +66,17 @@ enum i40e_dyn_idx_t {
|
|||
|
||||
/* Supported RSS offloads */
|
||||
#define I40E_DEFAULT_RSS_HENA ( \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_UDP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_SCTP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_TCP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_OTHER) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV4) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_UDP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_TCP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_SCTP) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_OTHER) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV6) | \
|
||||
((u64)1 << I40E_FILTER_PCTYPE_L2_PAYLOAD))
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_UDP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_SCTP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_TCP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_OTHER) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV4) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_UDP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_TCP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_SCTP) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_OTHER) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV6) | \
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_L2_PAYLOAD))
|
||||
|
||||
/* Supported Rx Buffer Sizes */
|
||||
#define I40E_RXBUFFER_512 512 /* Used for packet split */
|
||||
|
@ -129,16 +129,16 @@ enum i40e_dyn_idx_t {
|
|||
#define DESC_NEEDED (MAX_SKB_FRAGS + 4)
|
||||
#define I40E_MIN_DESC_PENDING 4
|
||||
|
||||
#define I40E_TX_FLAGS_CSUM (u32)(1)
|
||||
#define I40E_TX_FLAGS_HW_VLAN (u32)(1 << 1)
|
||||
#define I40E_TX_FLAGS_SW_VLAN (u32)(1 << 2)
|
||||
#define I40E_TX_FLAGS_TSO (u32)(1 << 3)
|
||||
#define I40E_TX_FLAGS_IPV4 (u32)(1 << 4)
|
||||
#define I40E_TX_FLAGS_IPV6 (u32)(1 << 5)
|
||||
#define I40E_TX_FLAGS_FCCRC (u32)(1 << 6)
|
||||
#define I40E_TX_FLAGS_FSO (u32)(1 << 7)
|
||||
#define I40E_TX_FLAGS_FD_SB (u32)(1 << 9)
|
||||
#define I40E_TX_FLAGS_VXLAN_TUNNEL (u32)(1 << 10)
|
||||
#define I40E_TX_FLAGS_CSUM BIT(0)
|
||||
#define I40E_TX_FLAGS_HW_VLAN BIT(1)
|
||||
#define I40E_TX_FLAGS_SW_VLAN BIT(2)
|
||||
#define I40E_TX_FLAGS_TSO BIT(3)
|
||||
#define I40E_TX_FLAGS_IPV4 BIT(4)
|
||||
#define I40E_TX_FLAGS_IPV6 BIT(5)
|
||||
#define I40E_TX_FLAGS_FCCRC BIT(6)
|
||||
#define I40E_TX_FLAGS_FSO BIT(7)
|
||||
#define I40E_TX_FLAGS_FD_SB BIT(9)
|
||||
#define I40E_TX_FLAGS_VXLAN_TUNNEL BIT(10)
|
||||
#define I40E_TX_FLAGS_VLAN_MASK 0xffff0000
|
||||
#define I40E_TX_FLAGS_VLAN_PRIO_MASK 0xe0000000
|
||||
#define I40E_TX_FLAGS_VLAN_PRIO_SHIFT 29
|
||||
|
|
|
@ -605,7 +605,7 @@ enum i40e_rx_desc_status_bits {
|
|||
};
|
||||
|
||||
#define I40E_RXD_QW1_STATUS_SHIFT 0
|
||||
#define I40E_RXD_QW1_STATUS_MASK (((1 << I40E_RX_DESC_STATUS_LAST) - 1) \
|
||||
#define I40E_RXD_QW1_STATUS_MASK ((BIT(I40E_RX_DESC_STATUS_LAST) - 1) \
|
||||
<< I40E_RXD_QW1_STATUS_SHIFT)
|
||||
|
||||
#define I40E_RXD_QW1_STATUS_TSYNINDX_SHIFT I40E_RX_DESC_STATUS_TSYNINDX_SHIFT
|
||||
|
@ -613,8 +613,8 @@ enum i40e_rx_desc_status_bits {
|
|||
I40E_RXD_QW1_STATUS_TSYNINDX_SHIFT)
|
||||
|
||||
#define I40E_RXD_QW1_STATUS_TSYNVALID_SHIFT I40E_RX_DESC_STATUS_TSYNVALID_SHIFT
|
||||
#define I40E_RXD_QW1_STATUS_TSYNVALID_MASK (0x1UL << \
|
||||
I40E_RXD_QW1_STATUS_TSYNVALID_SHIFT)
|
||||
#define I40E_RXD_QW1_STATUS_TSYNVALID_MASK \
|
||||
BIT_ULL(I40E_RXD_QW1_STATUS_TSYNVALID_SHIFT)
|
||||
|
||||
enum i40e_rx_desc_fltstat_values {
|
||||
I40E_RX_DESC_FLTSTAT_NO_DATA = 0,
|
||||
|
@ -748,8 +748,7 @@ enum i40e_rx_ptype_payload_layer {
|
|||
I40E_RXD_QW1_LENGTH_HBUF_SHIFT)
|
||||
|
||||
#define I40E_RXD_QW1_LENGTH_SPH_SHIFT 63
|
||||
#define I40E_RXD_QW1_LENGTH_SPH_MASK (0x1ULL << \
|
||||
I40E_RXD_QW1_LENGTH_SPH_SHIFT)
|
||||
#define I40E_RXD_QW1_LENGTH_SPH_MASK BIT_ULL(I40E_RXD_QW1_LENGTH_SPH_SHIFT)
|
||||
|
||||
enum i40e_rx_desc_ext_status_bits {
|
||||
/* Note: These are predefined bit offsets */
|
||||
|
@ -925,12 +924,12 @@ enum i40e_tx_ctx_desc_eipt_offload {
|
|||
#define I40E_TXD_CTX_QW0_NATT_SHIFT 9
|
||||
#define I40E_TXD_CTX_QW0_NATT_MASK (0x3ULL << I40E_TXD_CTX_QW0_NATT_SHIFT)
|
||||
|
||||
#define I40E_TXD_CTX_UDP_TUNNELING (0x1ULL << I40E_TXD_CTX_QW0_NATT_SHIFT)
|
||||
#define I40E_TXD_CTX_UDP_TUNNELING BIT_ULL(I40E_TXD_CTX_QW0_NATT_SHIFT)
|
||||
#define I40E_TXD_CTX_GRE_TUNNELING (0x2ULL << I40E_TXD_CTX_QW0_NATT_SHIFT)
|
||||
|
||||
#define I40E_TXD_CTX_QW0_EIP_NOINC_SHIFT 11
|
||||
#define I40E_TXD_CTX_QW0_EIP_NOINC_MASK (0x1ULL << \
|
||||
I40E_TXD_CTX_QW0_EIP_NOINC_SHIFT)
|
||||
#define I40E_TXD_CTX_QW0_EIP_NOINC_MASK \
|
||||
BIT_ULL(I40E_TXD_CTX_QW0_EIP_NOINC_SHIFT)
|
||||
|
||||
#define I40E_TXD_CTX_EIP_NOINC_IPID_CONST I40E_TXD_CTX_QW0_EIP_NOINC_MASK
|
||||
|
||||
|
@ -995,8 +994,8 @@ enum i40e_filter_program_desc_fd_status {
|
|||
};
|
||||
|
||||
#define I40E_TXD_FLTR_QW0_DEST_VSI_SHIFT 23
|
||||
#define I40E_TXD_FLTR_QW0_DEST_VSI_MASK (0x1FFUL << \
|
||||
I40E_TXD_FLTR_QW0_DEST_VSI_SHIFT)
|
||||
#define I40E_TXD_FLTR_QW0_DEST_VSI_MASK \
|
||||
BIT_ULL(I40E_TXD_FLTR_QW0_DEST_VSI_SHIFT)
|
||||
|
||||
#define I40E_TXD_FLTR_QW1_CMD_SHIFT 4
|
||||
#define I40E_TXD_FLTR_QW1_CMD_MASK (0xFFFFULL << \
|
||||
|
@ -1014,8 +1013,7 @@ enum i40e_filter_program_desc_pcmd {
|
|||
#define I40E_TXD_FLTR_QW1_DEST_MASK (0x3ULL << I40E_TXD_FLTR_QW1_DEST_SHIFT)
|
||||
|
||||
#define I40E_TXD_FLTR_QW1_CNT_ENA_SHIFT (0x7ULL + I40E_TXD_FLTR_QW1_CMD_SHIFT)
|
||||
#define I40E_TXD_FLTR_QW1_CNT_ENA_MASK (0x1ULL << \
|
||||
I40E_TXD_FLTR_QW1_CNT_ENA_SHIFT)
|
||||
#define I40E_TXD_FLTR_QW1_CNT_ENA_MASK BIT_ULL(I40E_TXD_FLTR_QW1_CNT_ENA_SHIFT)
|
||||
|
||||
#define I40E_TXD_FLTR_QW1_FD_STATUS_SHIFT (0x9ULL + \
|
||||
I40E_TXD_FLTR_QW1_CMD_SHIFT)
|
||||
|
|
|
@ -207,17 +207,17 @@ struct i40evf_adapter {
|
|||
struct msix_entry *msix_entries;
|
||||
|
||||
u32 flags;
|
||||
#define I40EVF_FLAG_RX_CSUM_ENABLED (u32)(1)
|
||||
#define I40EVF_FLAG_RX_1BUF_CAPABLE (u32)(1 << 1)
|
||||
#define I40EVF_FLAG_RX_PS_CAPABLE (u32)(1 << 2)
|
||||
#define I40EVF_FLAG_RX_PS_ENABLED (u32)(1 << 3)
|
||||
#define I40EVF_FLAG_IN_NETPOLL (u32)(1 << 4)
|
||||
#define I40EVF_FLAG_IMIR_ENABLED (u32)(1 << 5)
|
||||
#define I40EVF_FLAG_MQ_CAPABLE (u32)(1 << 6)
|
||||
#define I40EVF_FLAG_NEED_LINK_UPDATE (u32)(1 << 7)
|
||||
#define I40EVF_FLAG_PF_COMMS_FAILED (u32)(1 << 8)
|
||||
#define I40EVF_FLAG_RESET_PENDING (u32)(1 << 9)
|
||||
#define I40EVF_FLAG_RESET_NEEDED (u32)(1 << 10)
|
||||
#define I40EVF_FLAG_RX_CSUM_ENABLED BIT(0)
|
||||
#define I40EVF_FLAG_RX_1BUF_CAPABLE BIT(1)
|
||||
#define I40EVF_FLAG_RX_PS_CAPABLE BIT(2)
|
||||
#define I40EVF_FLAG_RX_PS_ENABLED BIT(3)
|
||||
#define I40EVF_FLAG_IN_NETPOLL BIT(4)
|
||||
#define I40EVF_FLAG_IMIR_ENABLED BIT(5)
|
||||
#define I40EVF_FLAG_MQ_CAPABLE BIT(6)
|
||||
#define I40EVF_FLAG_NEED_LINK_UPDATE BIT(7)
|
||||
#define I40EVF_FLAG_PF_COMMS_FAILED BIT(8)
|
||||
#define I40EVF_FLAG_RESET_PENDING BIT(9)
|
||||
#define I40EVF_FLAG_RESET_NEEDED BIT(10)
|
||||
/* duplcates for common code */
|
||||
#define I40E_FLAG_FDIR_ATR_ENABLED 0
|
||||
#define I40E_FLAG_DCB_ENABLED 0
|
||||
|
@ -225,16 +225,16 @@ struct i40evf_adapter {
|
|||
#define I40E_FLAG_RX_CSUM_ENABLED I40EVF_FLAG_RX_CSUM_ENABLED
|
||||
/* flags for admin queue service task */
|
||||
u32 aq_required;
|
||||
#define I40EVF_FLAG_AQ_ENABLE_QUEUES (u32)(1)
|
||||
#define I40EVF_FLAG_AQ_DISABLE_QUEUES (u32)(1 << 1)
|
||||
#define I40EVF_FLAG_AQ_ADD_MAC_FILTER (u32)(1 << 2)
|
||||
#define I40EVF_FLAG_AQ_ADD_VLAN_FILTER (u32)(1 << 3)
|
||||
#define I40EVF_FLAG_AQ_DEL_MAC_FILTER (u32)(1 << 4)
|
||||
#define I40EVF_FLAG_AQ_DEL_VLAN_FILTER (u32)(1 << 5)
|
||||
#define I40EVF_FLAG_AQ_CONFIGURE_QUEUES (u32)(1 << 6)
|
||||
#define I40EVF_FLAG_AQ_MAP_VECTORS (u32)(1 << 7)
|
||||
#define I40EVF_FLAG_AQ_HANDLE_RESET (u32)(1 << 8)
|
||||
#define I40EVF_FLAG_AQ_GET_CONFIG (u32)(1 << 10)
|
||||
#define I40EVF_FLAG_AQ_ENABLE_QUEUES BIT(0)
|
||||
#define I40EVF_FLAG_AQ_DISABLE_QUEUES BIT(1)
|
||||
#define I40EVF_FLAG_AQ_ADD_MAC_FILTER BIT(2)
|
||||
#define I40EVF_FLAG_AQ_ADD_VLAN_FILTER BIT(3)
|
||||
#define I40EVF_FLAG_AQ_DEL_MAC_FILTER BIT(4)
|
||||
#define I40EVF_FLAG_AQ_DEL_VLAN_FILTER BIT(5)
|
||||
#define I40EVF_FLAG_AQ_CONFIGURE_QUEUES BIT(6)
|
||||
#define I40EVF_FLAG_AQ_MAP_VECTORS BIT(7)
|
||||
#define I40EVF_FLAG_AQ_HANDLE_RESET BIT(8)
|
||||
#define I40EVF_FLAG_AQ_GET_CONFIG BIT(10)
|
||||
|
||||
/* OS defined structs */
|
||||
struct net_device *netdev;
|
||||
|
|
|
@ -381,11 +381,11 @@ static int i40evf_get_rss_hash_opts(struct i40evf_adapter *adapter,
|
|||
|
||||
switch (cmd->flow_type) {
|
||||
case TCP_V4_FLOW:
|
||||
if (hena & ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_TCP))
|
||||
if (hena & BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_TCP))
|
||||
cmd->data |= RXH_L4_B_0_1 | RXH_L4_B_2_3;
|
||||
break;
|
||||
case UDP_V4_FLOW:
|
||||
if (hena & ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_UDP))
|
||||
if (hena & BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_UDP))
|
||||
cmd->data |= RXH_L4_B_0_1 | RXH_L4_B_2_3;
|
||||
break;
|
||||
|
||||
|
@ -397,11 +397,11 @@ static int i40evf_get_rss_hash_opts(struct i40evf_adapter *adapter,
|
|||
break;
|
||||
|
||||
case TCP_V6_FLOW:
|
||||
if (hena & ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_TCP))
|
||||
if (hena & BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_TCP))
|
||||
cmd->data |= RXH_L4_B_0_1 | RXH_L4_B_2_3;
|
||||
break;
|
||||
case UDP_V6_FLOW:
|
||||
if (hena & ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_UDP))
|
||||
if (hena & BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_UDP))
|
||||
cmd->data |= RXH_L4_B_0_1 | RXH_L4_B_2_3;
|
||||
break;
|
||||
|
||||
|
@ -479,10 +479,10 @@ static int i40evf_set_rss_hash_opt(struct i40evf_adapter *adapter,
|
|||
case TCP_V4_FLOW:
|
||||
switch (nfc->data & (RXH_L4_B_0_1 | RXH_L4_B_2_3)) {
|
||||
case 0:
|
||||
hena &= ~((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_TCP);
|
||||
hena &= ~BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_TCP);
|
||||
break;
|
||||
case (RXH_L4_B_0_1 | RXH_L4_B_2_3):
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_TCP);
|
||||
hena |= BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_TCP);
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
@ -491,10 +491,10 @@ static int i40evf_set_rss_hash_opt(struct i40evf_adapter *adapter,
|
|||
case TCP_V6_FLOW:
|
||||
switch (nfc->data & (RXH_L4_B_0_1 | RXH_L4_B_2_3)) {
|
||||
case 0:
|
||||
hena &= ~((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_TCP);
|
||||
hena &= ~BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_TCP);
|
||||
break;
|
||||
case (RXH_L4_B_0_1 | RXH_L4_B_2_3):
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_TCP);
|
||||
hena |= BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_TCP);
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
@ -503,12 +503,12 @@ static int i40evf_set_rss_hash_opt(struct i40evf_adapter *adapter,
|
|||
case UDP_V4_FLOW:
|
||||
switch (nfc->data & (RXH_L4_B_0_1 | RXH_L4_B_2_3)) {
|
||||
case 0:
|
||||
hena &= ~(((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_UDP) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV4));
|
||||
hena &= ~(BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_UDP) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV4));
|
||||
break;
|
||||
case (RXH_L4_B_0_1 | RXH_L4_B_2_3):
|
||||
hena |= (((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_UDP) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV4));
|
||||
hena |= (BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_UDP) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV4));
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
@ -517,12 +517,12 @@ static int i40evf_set_rss_hash_opt(struct i40evf_adapter *adapter,
|
|||
case UDP_V6_FLOW:
|
||||
switch (nfc->data & (RXH_L4_B_0_1 | RXH_L4_B_2_3)) {
|
||||
case 0:
|
||||
hena &= ~(((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_UDP) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV6));
|
||||
hena &= ~(BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_UDP) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV6));
|
||||
break;
|
||||
case (RXH_L4_B_0_1 | RXH_L4_B_2_3):
|
||||
hena |= (((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_UDP) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV6));
|
||||
hena |= (BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_UDP) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV6));
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
@ -535,7 +535,7 @@ static int i40evf_set_rss_hash_opt(struct i40evf_adapter *adapter,
|
|||
if ((nfc->data & RXH_L4_B_0_1) ||
|
||||
(nfc->data & RXH_L4_B_2_3))
|
||||
return -EINVAL;
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_OTHER);
|
||||
hena |= BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_OTHER);
|
||||
break;
|
||||
case AH_ESP_V6_FLOW:
|
||||
case AH_V6_FLOW:
|
||||
|
@ -544,15 +544,15 @@ static int i40evf_set_rss_hash_opt(struct i40evf_adapter *adapter,
|
|||
if ((nfc->data & RXH_L4_B_0_1) ||
|
||||
(nfc->data & RXH_L4_B_2_3))
|
||||
return -EINVAL;
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_OTHER);
|
||||
hena |= BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_OTHER);
|
||||
break;
|
||||
case IPV4_FLOW:
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_OTHER) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV4);
|
||||
hena |= (BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_OTHER) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV4));
|
||||
break;
|
||||
case IPV6_FLOW:
|
||||
hena |= ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_OTHER) |
|
||||
((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV6);
|
||||
hena |= (BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_OTHER) |
|
||||
BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV6));
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
|
|
@ -240,7 +240,7 @@ void i40evf_irq_enable_queues(struct i40evf_adapter *adapter, u32 mask)
|
|||
int i;
|
||||
|
||||
for (i = 1; i < adapter->num_msix_vectors; i++) {
|
||||
if (mask & (1 << (i - 1))) {
|
||||
if (mask & BIT(i - 1)) {
|
||||
wr32(hw, I40E_VFINT_DYN_CTLN1(i - 1),
|
||||
I40E_VFINT_DYN_CTLN1_INTENA_MASK |
|
||||
I40E_VFINT_DYN_CTLN1_ITR_INDX_MASK |
|
||||
|
@ -268,7 +268,7 @@ static void i40evf_fire_sw_int(struct i40evf_adapter *adapter, u32 mask)
|
|||
wr32(hw, I40E_VFINT_DYN_CTL01, dyn_ctl);
|
||||
}
|
||||
for (i = 1; i < adapter->num_msix_vectors; i++) {
|
||||
if (mask & (1 << i)) {
|
||||
if (mask & BIT(i)) {
|
||||
dyn_ctl = rd32(hw, I40E_VFINT_DYN_CTLN1(i - 1));
|
||||
dyn_ctl |= I40E_VFINT_DYN_CTLN_SWINT_TRIG_MASK |
|
||||
I40E_VFINT_DYN_CTLN1_ITR_INDX_MASK |
|
||||
|
@ -377,7 +377,7 @@ i40evf_map_vector_to_txq(struct i40evf_adapter *adapter, int v_idx, int t_idx)
|
|||
q_vector->tx.count++;
|
||||
q_vector->tx.latency_range = I40E_LOW_LATENCY;
|
||||
q_vector->num_ringpairs++;
|
||||
q_vector->ring_mask |= (1 << t_idx);
|
||||
q_vector->ring_mask |= BIT(t_idx);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -2320,7 +2320,7 @@ static int i40evf_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|||
hw = &adapter->hw;
|
||||
hw->back = adapter;
|
||||
|
||||
adapter->msg_enable = (1 << DEFAULT_DEBUG_LEVEL_SHIFT) - 1;
|
||||
adapter->msg_enable = BIT(DEFAULT_DEBUG_LEVEL_SHIFT) - 1;
|
||||
adapter->state = __I40EVF_STARTUP;
|
||||
|
||||
/* Call save state here because it relies on the adapter struct. */
|
||||
|
|
|
@ -294,7 +294,7 @@ void i40evf_enable_queues(struct i40evf_adapter *adapter)
|
|||
}
|
||||
adapter->current_op = I40E_VIRTCHNL_OP_ENABLE_QUEUES;
|
||||
vqs.vsi_id = adapter->vsi_res->vsi_id;
|
||||
vqs.tx_queues = (1 << adapter->num_active_queues) - 1;
|
||||
vqs.tx_queues = BIT(adapter->num_active_queues) - 1;
|
||||
vqs.rx_queues = vqs.tx_queues;
|
||||
adapter->aq_required &= ~I40EVF_FLAG_AQ_ENABLE_QUEUES;
|
||||
i40evf_send_pf_msg(adapter, I40E_VIRTCHNL_OP_ENABLE_QUEUES,
|
||||
|
@ -319,7 +319,7 @@ void i40evf_disable_queues(struct i40evf_adapter *adapter)
|
|||
}
|
||||
adapter->current_op = I40E_VIRTCHNL_OP_DISABLE_QUEUES;
|
||||
vqs.vsi_id = adapter->vsi_res->vsi_id;
|
||||
vqs.tx_queues = (1 << adapter->num_active_queues) - 1;
|
||||
vqs.tx_queues = BIT(adapter->num_active_queues) - 1;
|
||||
vqs.rx_queues = vqs.tx_queues;
|
||||
adapter->aq_required &= ~I40EVF_FLAG_AQ_DISABLE_QUEUES;
|
||||
i40evf_send_pf_msg(adapter, I40E_VIRTCHNL_OP_DISABLE_QUEUES,
|
||||
|
|
Loading…
Reference in New Issue