Mugunthan V N <mugunthan...@ti.com> :
> On Wednesday 29 July 2015 04:00 AM, Francois Romieu wrote:
> > Mugunthan V N <mugunthan...@ti.com> :
> >> On Tuesday 28 July 2015 02:52 AM, Francois Romieu wrote:
[...]
> >>> cpsw_ndo_stop calls napi_disable: you can remove netif_running.
> >>>
> >>
> >> This netif_running check is to find which interface is up as the
> >> interrupt is shared by both the interfaces. When first interface is down
> >> and second interface is active then napi_schedule for first interface
> >> will fail and second interface napi needs to be scheduled.
> >>
> >> So I don't think netif_running needs to be removed.
> > 
> > Each interface has its own napi tx (resp. rx) context: I would had expected
> > two unconditional napi_schedule per tx (resp. rx) shared irq, not one.
> > 
> > I'll read it again after some sleep.
> > 
> 
> For each interrupt only one napi will be scheduled, when the first
> interface is down then only second interface napi is scheduled in both
> tx and rx irqs.

Ok, I've had some hints from the "Assumptions" section at
http://processors.wiki.ti.com/index.php/AM335x_CPSW_%28Ethernet%29_Driver%27s_Guide#Dual_Standalone_EMAC_mode

Why does the driver create 2 rx napi contexts ? They don't run at the
same time and the port demux is done in cpsw_dual_emac_src_port_detect.
The driver would work the same with a single rx (resp. tx) napi context
for both interfaces.

-- 
Ueimor
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to