Hi Biju, On Thu, Oct 27, 2022 at 10:22 AM Biju Das <biju.das.jz@xxxxxxxxxxxxxx> wrote: > R-Car has ECC error flags in global error interrupts whereas it is > not available on RZ/G2L. > > Add has_gerfl_eef to struct rcar_canfd_hw_info so that rcar_canfd_ > global_error() will process ECC errors only for R-Car. > > whilst, this patch fixes the below checkpatch warnings > CHECK: Unnecessary parentheses around 'ch == 0' > CHECK: Unnecessary parentheses around 'ch == 1' > > Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx> Reviewed-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> > --- a/drivers/net/can/rcar/rcar_canfd.c > +++ b/drivers/net/can/rcar/rcar_canfd.c > @@ -955,13 +958,15 @@ static void rcar_canfd_global_error(struct net_device *ndev) > u32 ridx = ch + RCANFD_RFFIFO_IDX; > > gerfl = rcar_canfd_read(priv->base, RCANFD_GERFL); > - if ((gerfl & RCANFD_GERFL_EEF0) && (ch == 0)) { > - netdev_dbg(ndev, "Ch0: ECC Error flag\n"); > - stats->tx_dropped++; > - } > - if ((gerfl & RCANFD_GERFL_EEF1) && (ch == 1)) { > - netdev_dbg(ndev, "Ch1: ECC Error flag\n"); > - stats->tx_dropped++; > + if (gpriv->info->has_gerfl_eef) { > + if ((gerfl & RCANFD_GERFL_EEF0) && ch == 0) { > + netdev_dbg(ndev, "Ch0: ECC Error flag\n"); > + stats->tx_dropped++; > + } > + if ((gerfl & RCANFD_GERFL_EEF1) && ch == 1) { > + netdev_dbg(ndev, "Ch1: ECC Error flag\n"); > + stats->tx_dropped++; > + } BTW, this fails to check the ECC error flags for channels 2-7 on R-Car V3U, which is a pre-existing problem. As that is a bug, I have sent a fix[1], which unfortunately conflicts with your patch. Sorry for that. > } > if (gerfl & RCANFD_GERFL_MES) { > sts = rcar_canfd_read(priv->base, [1] "[PATCH] can: rcar_canfd: Add missing ECC error checks for channels 2-7" https://lore.kernel.org/r/4edb2ea46cc64d0532a08a924179827481e14b4f.1666951503.git.geert+renesas@xxxxxxxxx Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds