Re: [RFC PATCH] net: macb: Apply RXUBR workaround only to versions with errata

From: Harini Katakam
Date: Thu Nov 29 2018 - 00:13:27 EST


Hi Brandon,

On Thu, Nov 29, 2018 at 2:39 AM Brandon Streiff <brandon.streiff@xxxxxx> wrote:
>
> On 11/23/2018 3:59 AM, Harini Katakam wrote:
> > +/* Errata mask bits */
> > +#define MACB_ERRATA_RXLOCKUP 0x00000001
> > +
> > /* LSO settings */
> > #define MACB_LSO_UFO_ENABLE 0x01
> > #define MACB_LSO_TSO_ENABLE 0x02
> > @@ -1085,6 +1088,7 @@ struct macb_config {
> > struct clk **rx_clk);
> > int (*init)(struct platform_device *pdev);
> > int jumbo_max_len;
> > + u32 errata;
> > };
> >
> > struct tsu_incr {
> > @@ -1214,6 +1218,8 @@ struct macb {
> >
> > int rx_bd_rd_prefetch;
> > int tx_bd_rd_prefetch;
> > +
> > + u32 errata;
> > };
>
> Hi Harini,
>
> Could this be made into simpler by instead adding a caps bit, named
> (perhaps) MACB_CAPS_BUGGY_RXUBR or MACB_CAPS_NEEDS_RXUBR_RESETS or
> something?
>
> That would save needing to add a new u32 field into the macb_config and
> macb structs (both of which already have this caps field).

Thanks for the review. Yes, the caps field already has all that.
The only reason I separated it was that CAPS generally referred to a feature and
this is a workaround for an errata. There's no functional need, of course and
I'm ok to integrate it as well.

Regards,
Harini