diff options
author | Subash Abhinov Kasiviswanathan <subashab@codeaurora.org> | 2018-09-24 18:00:24 -0700 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2018-10-04 11:07:17 -0700 |
commit | 69fbfed1a92bbcc050a41d233aa2b1824ee8695f (patch) | |
tree | d019dc2025e18d536e8ba533d32ab7a924a80bf2 /drivers/rmnet/shs/rmnet_shs_wq.c | |
parent | 750001bed1e2848247f9aab14e254b5199583037 (diff) | |
download | data-kernel-69fbfed1a92bbcc050a41d233aa2b1824ee8695f.tar.gz |
rmnet_shs: power save indication and ssr fix
Get notified of rmnet driver status in order to cleanup
when rmnet goes into idle mode.
SSR fix to reinit module after SSR.
Perf burst selection fix. Fix perf cpu selection during
a rx burst always returning 0.
CRs-Fixed: 2316002
Change-Id: I199c49a36a328da7457fdb24c0302815e1a2edf9
Acked-by: Raul Martinez <mraul@qti.qualcomm.com>
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
Diffstat (limited to 'drivers/rmnet/shs/rmnet_shs_wq.c')
-rw-r--r-- | drivers/rmnet/shs/rmnet_shs_wq.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/drivers/rmnet/shs/rmnet_shs_wq.c b/drivers/rmnet/shs/rmnet_shs_wq.c index 547e9de..d4d9d2f 100644 --- a/drivers/rmnet/shs/rmnet_shs_wq.c +++ b/drivers/rmnet/shs/rmnet_shs_wq.c @@ -1091,8 +1091,10 @@ int rmnet_shs_wq_get_perf_cpu_new_flow(struct net_device *dev) if (!ep->is_ep_active) continue; - if (ep->ep->egress_dev == dev) + if (ep->ep->egress_dev == dev) { is_match_found = 1; + break; + } } if (!is_match_found) { @@ -1354,6 +1356,18 @@ void rmnet_shs_wq_init_cpu_rx_flow_tbl(void) } +void rmnet_shs_wq_pause(void) +{ + if (rmnet_shs_wq && rmnet_shs_delayed_wq) + cancel_delayed_work_sync(&rmnet_shs_delayed_wq->wq); +} + +void rmnet_shs_wq_restart(void) +{ + if (rmnet_shs_wq && rmnet_shs_delayed_wq) + queue_delayed_work(rmnet_shs_wq, &rmnet_shs_delayed_wq->wq, 0); +} + void rmnet_shs_wq_init(struct net_device *dev) { /*If the workqueue is already initialized we should not be |