> diff --git a/drivers/net/txgbe/base/txgbe_regs.h > b/drivers/net/txgbe/base/txgbe_regs.h > index 4777b0335b..7830abac7b 100644 > --- a/drivers/net/txgbe/base/txgbe_regs.h > +++ b/drivers/net/txgbe/base/txgbe_regs.h > @@ -318,12 +318,18 @@ > #define TXGBE_LEDCTL_1G MS(2, 0x1) > #define TXGBE_LEDCTL_100M MS(3, 0x1) > #define TXGBE_LEDCTL_ACTIVE MS(4, 0x1) > +#define TXGBE_LINKUP_FILTER 0x014428 > #define TXGBE_TAGTPID(i) (0x014430 + (i) * 4) /* 0-3 */ > #define TXGBE_TAGTPID_LSB_MASK MS(0, 0xFFFF) > #define TXGBE_TAGTPID_LSB(v) LS(v, 0, 0xFFFF) > #define TXGBE_TAGTPID_MSB_MASK MS(16, 0xFFFF) > #define TXGBE_TAGTPID_MSB(v) LS(v, 16, 0xFFFF) > > +/*AML LINK STATUS OVERWRITE*/ > +#define TXGBE_AML_EPCS_MISC_CTL 0x13240 > +#define TXGBE_AML_LINK_STATUS_OVRD_EN 0x00000020 > +#define TXGBE_AML_LINK_STATUS_OVRD_VAL 0x00000010
Improve readability and be consistent, use MS() here. > > +#define TXGBE_MAC_TX_CFG_AML_SPEED_MASK 0x78000000U > +#define TXGBE_MAC_TX_CFG_AML_SPEED_50G 0x20000000U > +#define TXGBE_MAC_TX_CFG_AML_SPEED_40G 0x00000000U > +#define TXGBE_MAC_TX_CFG_AML_SPEED_25G 0x10000000U > +#define TXGBE_MAC_TX_CFG_AML_SPEED_10G 0x40000000U > +#define TXGBE_MAC_TX_CFG_AML_SPEED_1G 0x70000000U Ditto. > @@ -4712,11 +4702,18 @@ txgbe_dev_rxtx_start(struct rte_eth_dev *dev) > for (i = 0; i < dev->data->nb_tx_queues; i++) { > txq = dev->data->tx_queues[i]; > /* Setup Transmit Threshold Registers */ > - wr32m(hw, TXGBE_TXCFG(txq->reg_idx), > - TXGBE_TXCFG_HTHRESH_MASK | > - TXGBE_TXCFG_WTHRESH_MASK, > - TXGBE_TXCFG_HTHRESH(txq->hthresh) | > - TXGBE_TXCFG_WTHRESH(txq->wthresh)); > + if (hw->mac.type == txgbe_mac_aml || hw->mac.type == > txgbe_mac_aml40) > + wr32m(hw, TXGBE_TXCFG(txq->reg_idx), > + TXGBE_TXCFG_HTHRESH_MASK | > + TXGBE_TXCFG_WTHRESH_MASK_AML, > + TXGBE_TXCFG_HTHRESH(txq->hthresh) | > + TXGBE_TXCFG_WTHRESH(txq->wthresh)); > + else > + wr32m(hw, TXGBE_TXCFG(txq->reg_idx), > + TXGBE_TXCFG_HTHRESH_MASK | > + TXGBE_TXCFG_WTHRESH_MASK, > + TXGBE_TXCFG_HTHRESH(txq->hthresh) | > + TXGBE_TXCFG_WTHRESH(txq->wthresh)); > } These... #define TXGBE_TXCFG_WTHRESH_MASK MS(16, 0x7F) #define TXGBE_TXCFG_WTHRESH_MASK_AML MS(16, 0x1FF) #define TXGBE_TXCFG_WTHRESH(v) LS(v, 16, 0x7F) How to deal with txq->wthresh is greater than 0x7F for aml?