Hi Prabhakar, On Thu, Jul 15, 2021 at 8:21 PM Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx> wrote: > CANFD block on RZ/G2L SoC is almost identical to one found on > R-Car Gen3 SoC's. > > On RZ/G2L SoC interrupt sources for each channel are split into > different sources, irq handlers for the same are added. > > Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx> > Reviewed-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx> Thanks for your patch! > --- a/drivers/net/can/rcar/rcar_canfd.c > +++ b/drivers/net/can/rcar/rcar_canfd.c > @@ -1070,6 +1077,56 @@ static void rcar_canfd_tx_done(struct net_device *ndev) > can_led_event(ndev, CAN_LED_EVENT_TX); > } > > +static irqreturn_t rcar_canfd_global_err_interrupt(int irq, void *dev_id) > +{ > +static irqreturn_t rcar_canfd_global_recieve_fifo_interrupt(int irq, void *dev_id) > +{ > static irqreturn_t rcar_canfd_global_interrupt(int irq, void *dev_id) > { > struct rcar_canfd_global *gpriv = dev_id; > @@ -1139,6 +1196,56 @@ static void rcar_canfd_state_change(struct net_device *ndev, > } > } > > +static irqreturn_t rcar_canfd_channel_tx_interrupt(int irq, void *dev_id) > +{ > +static irqreturn_t rcar_canfd_channel_err_interrupt(int irq, void *dev_id) > +{ It looks like the new split interrupt handlers duplicate code from the existing unified interrupt handlers. Perhaps the latter can be made to call the former instead? 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