[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5820620-6450-e3f5-4ac0-e235cbf5c838@linux.intel.com>
Date: Tue, 13 Sep 2022 13:45:58 +0300 (EEST)
From: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>
To: Sreehari Kancharla <sreehari.kancharla@...ux.intel.com>
cc: Netdev <netdev@...r.kernel.org>, kuba@...nel.org,
davem@...emloft.net, johannes@...solutions.net,
ryazanov.s.a@...il.com, loic.poulain@...aro.org,
m.chetan.kumar@...el.com, chandrashekar.devegowda@...el.com,
linuxwwan@...el.com, chiranjeevi.rapolu@...ux.intel.com,
haijun.liu@...iatek.com, ricardo.martinez@...ux.intel.com,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
dinesh.sharma@...el.com, moises.veleta@...el.com,
sreehari.kancharla@...el.com
Subject: Re: [PATCH net-next 2/2] net: wwan: t7xx: Add NAPI support
On Fri, 9 Sep 2022, Sreehari Kancharla wrote:
> From: Haijun Liu <haijun.liu@...iatek.com>
>
> Replace the work queue based RX flow with a NAPI implementation
> Remove rx_thread and dpmaif_rxq_work.
> Introduce dummy network device. its responsibility is
> - Binds one NAPI object for each DL HW queue and acts as
> the agent of all those network devices.
> - Use NAPI object to poll DL packets.
> - Helps to dispatch each packet to the network interface.
It would be useful to mention that GRO is also enabled.
> static int t7xx_ccmni_open(struct net_device *dev)
> {
> struct t7xx_ccmni *ccmni = wwan_netdev_drvpriv(dev);
> + struct t7xx_ccmni_ctrl *ccmni_ctl = ccmni->ctlb;
>
> netif_carrier_on(dev);
> netif_tx_start_all_queues(dev);
> + if (!atomic_read(&ccmni_ctl->napi_usr_refcnt)) {
> + t7xx_ccmni_enable_napi(ccmni_ctl);
> + atomic_set(&ccmni_ctl->napi_usr_refcnt, 1);
> + } else {
> + atomic_inc(&ccmni_ctl->napi_usr_refcnt);
> + }
atomic_fetch_inc() ?
--
i.
Powered by blists - more mailing lists