mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-23 17:55:05 +03:00
nvethernet: Add IVC fix
Issue: rt_spinlock causes IVC failures. Fix: 1. Change rt_spinlock to spinlock. 2. Add timeout to ivc_can_read. Bug 2694285 Change-Id: Ib603c304e750a33262e8509ed3f869030b934958 Signed-off-by: Nagaraj Annaiah <nannaiah@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2497217 Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> Reviewed-by: Srinivas Ramachandran <srinivasra@nvidia.com> Reviewed-by: Ashutosh Jha <ajha@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> GVS: Gerrit_Virtual_Submit
This commit is contained in:
committed by
Revanth Kumar Uppala
parent
f4d30eb89b
commit
8c8eceeeb7
@@ -128,6 +128,23 @@
|
||||
*/
|
||||
#define ETHER_TX_MAX_FRAME_SIZE GSO_MAX_SIZE
|
||||
|
||||
/**
|
||||
* @brief IVC wait timeout.
|
||||
*/
|
||||
#define IVC_WAIT_TIMEOUT (msecs_to_jiffies(100))
|
||||
|
||||
/**
|
||||
* @brief IVC read timeout cnt.
|
||||
* used as 20*IVC_WAIT_TIMEOUT hence Max is 2 sec timeout.
|
||||
*/
|
||||
#define IVC_READ_TIMEOUT_CNT 20
|
||||
|
||||
/**
|
||||
* @brief IVC channel timeout.
|
||||
* Used with 1 millisec so max timeout is 50 ms.
|
||||
*/
|
||||
#define IVC_CHANNEL_TIMEOUT_CNT 50
|
||||
|
||||
/**
|
||||
* @brief Check if Tx data buffer length is within bounds.
|
||||
*
|
||||
@@ -241,7 +258,7 @@ struct ether_ivc_ctxt {
|
||||
/** ivc cookie */
|
||||
struct tegra_hv_ivc_cookie *ivck;
|
||||
/** ivc lock */
|
||||
raw_spinlock_t ivck_lock;
|
||||
spinlock_t ivck_lock;
|
||||
/** ivc work */
|
||||
struct work_struct ivc_work;
|
||||
/** wait for event */
|
||||
|
||||
Reference in New Issue
Block a user