nvethernet: Ignore lane bringup restart task

- Adding WAR to ignore lane bringup restart task
 as it is causing lane bring up failures in SLT EQOS/MGBE
- Populate RSS hash table with enabled num_of_dma channels

Bug 4709627

Change-Id: I195db0371f69dfcedc1c67023c1279af426dd7e6
Signed-off-by: Mahesh Patil <maheshp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3162313
Reviewed-by: Nagaraj Annaiah <nannaiah@nvidia.com>
Reviewed-by: Ashutosh Jha <ajha@nvidia.com>
This commit is contained in:
Mahesh Patil
2024-06-26 05:48:58 +00:00
committed by mobile promotions
parent b7a7a2cba5
commit 00e9f705d4
2 changed files with 8 additions and 0 deletions

View File

@@ -7152,6 +7152,10 @@ static void ether_init_rss(struct ether_priv_data *pdata,
/* generate random key */
netdev_rss_key_fill(osi_core->rss.key, sizeof(osi_core->rss.key));
/* In T26x mgbe default 8 VDMA channels enabled */
if (osi_core->mac == OSI_MAC_HW_MGBE_T26X) {
num_q = pdata->osi_dma->num_dma_chans;
}
/* initialize hash table */
for (i = 0; i < OSI_RSS_MAX_TABLE_SIZE; i++)
osi_core->rss.table[i] = ethtool_rxfh_indir_default(i, num_q);

View File

@@ -878,6 +878,10 @@ void ether_restart_lane_bringup_task(struct tasklet_struct *t)
{
struct ether_priv_data *pdata = from_tasklet(pdata, t, lane_restart_task);
if (pdata->osi_core->mac == OSI_MAC_HW_MGBE_T26X) {
netdev_info(pdata->ndev, "Ignoring restart_lane_bringup_task!!!\n");
return;
}
if (pdata->tx_start_stop == OSI_DISABLE) {
netif_tx_lock(pdata->ndev);
netif_carrier_off(pdata->ndev);