Hi Nicolas,

On Fri, Jan 25, 2019 at 3:58 PM <nicolas.fe...@microchip.com> wrote:
>
> On 24/01/2019 at 14:38, Harini Katakam wrote:
> > The interrupt handler contains a workaround for RX hang applicable
> > to Zynq and AT91 only. Subsequent versions do not need this
>
> AT91RM9200 only. It's not the case for other AT91 SoCs (reading errata
> list for them).
>
> That being said I have to add a patch for making this perfectly clear in
> the comment just above the flag's test.
>
> > workaround. This workaround unecessarily resets RX whenever RX used
>
> Typo: unnecessarily
>
> > bit read is observed, which can be often under heavy traffic. Hence
> > introduce an CAPS mask and a check to enable this workaround.
>
> Nack for this one, see below...

Thanks for the review. I dint realize it was AT91RM9200, hence I edited
the wrong config structure. Will fix.

<snip>

> >               if (status & MACB_BIT(RXUBR)) {
> > -                     ctrl = macb_readl(bp, NCR);
> > -                     macb_writel(bp, NCR, ctrl & ~MACB_BIT(RE));
> > -                     wmb();
> > -                     macb_writel(bp, NCR, ctrl | MACB_BIT(RE));
> > +                     if (bp->caps & MACB_CAPS_NEEDS_RSTONUBR) {
> > +                             ctrl = macb_readl(bp, NCR);
> > +                             macb_writel(bp, NCR, ctrl & ~MACB_BIT(RE));
> > +                             wmb();
> > +                             macb_writel(bp, NCR, ctrl | MACB_BIT(RE));
> > +                     }
>
> As this interrupt routine is not doing anything else than just being
> called now, what about just removing the use of this status bit for
> platforms which don't need this RX reset?

OK, sure I'll try that. I left the interrupt enabled just in case there were
other users performing an action/using this interrupt.

Regards,
Harini

Reply via email to