diff options
-rw-r--r-- | drivers/net/can/rcar/rcar_canfd.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/can/rcar/rcar_canfd.c b/drivers/net/can/rcar/rcar_canfd.c index 6b87c1548f68..fded4da50103 100644 --- a/drivers/net/can/rcar/rcar_canfd.c +++ b/drivers/net/can/rcar/rcar_canfd.c @@ -290,7 +290,7 @@ /* RSCFDnCFDGAFLECTR / RSCFDnGAFLECTR */ #define RCANFD_GAFLECTR (0x0098) /* RSCFDnCFDGAFLCFG / RSCFDnGAFLCFG */ -#define RCANFD_GAFLCFG(ch) (0x009c + (0x04 * ((ch) / 2))) +#define RCANFD_GAFLCFG(w) (0x009c + (0x04 * (w))) /* RSCFDnCFDRMNB / RSCFDnRMNB */ #define RCANFD_RMNB (0x00a4) /* RSCFDnCFDRMND / RSCFDnRMND */ @@ -678,8 +678,9 @@ static void rcar_canfd_setrnc(struct rcar_canfd_global *gpriv, unsigned int ch, { unsigned int shift = reg_gen4(gpriv, 16, 24) - (ch & 1) * reg_gen4(gpriv, 16, 8); u32 rnc = num_rules << shift; + unsigned int w = ch / 2; - rcar_canfd_set_bit(gpriv->base, RCANFD_GAFLCFG(ch), rnc); + rcar_canfd_set_bit(gpriv->base, RCANFD_GAFLCFG(w), rnc); } static void rcar_canfd_set_mode(struct rcar_canfd_global *gpriv) |