Re: [PATCH net-next 3/6] net: bcmasp: Add support for ASP2.0 Ethernet controller

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Apr 19, 2023 at 9:33 AM Florian Fainelli <f.fainelli@xxxxxxxxx> wrote:
>
> On 4/18/23 23:35, Heiner Kallweit wrote:
> > On 19.04.2023 02:10, Justin Chen wrote:
> >> Add support for the Broadcom ASP 2.0 Ethernet controller which is first
> >> introduced with 72165. This controller features two distinct Ethernet
> >> ports that can be independently operated.
> >>
> >> This patch supports:
> [snip]
> >> +    intf->tx_spb_index = spb_index;
> >> +    intf->tx_spb_dma_valid = valid;
> >> +    bcmasp_intf_tx_write(intf, intf->tx_spb_dma_valid);
> >> +
> >> +    if (tx_spb_ring_full(intf, MAX_SKB_FRAGS + 1))
> >> +            netif_stop_queue(dev);
> >> +
> >
> > Here it may be better to use the new macros from include/net/netdev_queues.h.
> > It seems your code (together with the related part in tx_poll) doesn't consider
> > the queue restart case.
> > In addition you should check whether using READ_ONCE()/WRITE_ONCE() is needed,
> > e.g. in ring_full().
>
> Thanks Heiner. Can you trim the parts you are not quoting otherwise one
> has to scroll all the way down to where you responded. Thanks!
> --
> Florian
>

Hello Heiner,

The implementation is a locked single queue xmit. Not sure how
netdev_queues.h fits into the picture here. I believe I am handling
the queue restart here.
+static int bcmasp_tx_poll(struct napi_struct *napi, int budget)
+{
[snip]
+ if (released)
+ netif_wake_queue(intf->ndev);
+
+ return 0;
+}
Let me know if I am misunderstanding the feedback here.

Thanks,
Justin




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux