igc: Increase timeout value for Speed 100/1000/2500
authorMuhammad Husaini Zulkifli <muhammad.husaini.zulkifli@intel.com>
Sat, 17 Jul 2021 16:12:22 +0000 (00:12 +0800)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Tue, 20 Jul 2021 23:11:36 +0000 (16:11 -0700)
As the cycle time is set to maximum of 1s, the TX Hang timeout need to
be increase to avoid possible TX Hang.

There is no dedicated number specific in data sheet for the timeout factor.
Timeout factor was determined during the debugging to solve the "Tx Hang"
issues that happen in some cases mainly during ETF(Earliest TxTime First).

This can be test by using TSN Schedule Tx Tools udp_tai sample application.

Signed-off-by: Muhammad Husaini Zulkifli <muhammad.husaini.zulkifli@intel.com>
Acked-by: Sasha Neftin <sasha.neftin@intel.com>
Tested-by: Dvora Fuxbrumer <dvorax.fuxbrumer@linux.intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/igc/igc_main.c

index 31e489e..5c95bf8 100644 (file)
@@ -5312,7 +5312,9 @@ static void igc_watchdog_task(struct work_struct *work)
                                adapter->tx_timeout_factor = 14;
                                break;
                        case SPEED_100:
-                               /* maybe add some timeout factor ? */
+                       case SPEED_1000:
+                       case SPEED_2500:
+                               adapter->tx_timeout_factor = 7;
                                break;
                        }