Both R-Car Gen4 and RZ/G3E SoCs have similar register layout. Introduce gen4_type variable to struct rcar_canfd_hw_info for the preparation of adding RZ/G3E driver support. Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx> --- v1->v2: * No change. --- drivers/net/can/rcar/rcar_canfd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/can/rcar/rcar_canfd.c b/drivers/net/can/rcar/rcar_canfd.c index 8b326977ddf7..13eb6aa6ae45 100644 --- a/drivers/net/can/rcar/rcar_canfd.c +++ b/drivers/net/can/rcar/rcar_canfd.c @@ -516,6 +516,7 @@ struct rcar_canfd_hw_info { /* hardware features */ unsigned shared_global_irqs:1; /* Has shared global irqs */ unsigned multi_channel_irqs:1; /* Has multiple channel irqs */ + unsigned gen4_type:1; /* Has gen4 type reg layout */ }; /* Channel priv data */ @@ -596,6 +597,7 @@ static const struct rcar_canfd_hw_info rcar_gen4_hw_info = { .max_channels = 8, .postdiv = 2, .shared_global_irqs = 1, + .gen4_type = 1, }; static const struct rcar_canfd_hw_info rzg2l_hw_info = { @@ -607,7 +609,7 @@ static const struct rcar_canfd_hw_info rzg2l_hw_info = { /* Helper functions */ static inline bool is_gen4(struct rcar_canfd_global *gpriv) { - return gpriv->info == &rcar_gen4_hw_info; + return gpriv->info->gen4_type; } static inline u32 reg_gen4(struct rcar_canfd_global *gpriv, -- 2.43.0