RE: [PATCH 5/6] can: flexcan: add CAN wakeup function for i.MX8QM

From: Joakim Zhang
Date: Fri Oct 16 2020 - 06:00:38 EST



Hi Marc,

[...]
> > > +static int flexcan_stop_mode_enable_scfw(struct flexcan_priv *priv,
> > > +bool enabled) {
> > > + u8 idx = priv->can_idx;
> > > + u32 rsrc_id, val;
> > > +
> > > + if (idx == 0)
> > > + rsrc_id = IMX_SC_R_CAN_0;
> > > + else if (idx == 1)
> > > + rsrc_id = IMX_SC_R_CAN_1;
> > > + else
> > > + rsrc_id = IMX_SC_R_CAN_2;
> >
> > Can you introduce something like and make use of it:
> >
> > #define IMX_SC_R_CAN(x) (105 + (x))
> OK.

I thought it over again, from my point of view, use macro here directly could be more intuitive, and can achieve a direct jump.
If change to above wrapper, on the contrary make confusion, and generate the magic number 105. ☹

> > > +
> > > + if (enabled)
> > > + val = 1;
> > > + else
> > > + val = 0;
> > > +
> > > + /* stop mode request via scu firmware */
> > > + return imx_sc_misc_set_control(priv->sc_ipc_handle, rsrc_id,
> > > +IMX_SC_C_IPG_STOP, val); }

We still need use IMX_SC_C_IPG_STOP, why not be consistent?

Best Regards,
Joakim Zhang