RE: [PATCH RESEND 1/2] soc: imx: Add SCU SoC info driver support
From: Anson Huang
Date: Tue May 14 2019 - 04:47:39 EST
> -----Original Message-----
> From: Daniel Baluta [mailto:daniel.baluta@xxxxxxxxx]
> Sent: Tuesday, May 14, 2019 4:39 PM
> To: Anson Huang <anson.huang@xxxxxxx>
> Cc: catalin.marinas@xxxxxxx; will.deacon@xxxxxxx;
> shawnguo@xxxxxxxxxx; s.hauer@xxxxxxxxxxxxxx; kernel@xxxxxxxxxxxxxx;
> festevam@xxxxxxxxx; maxime.ripard@xxxxxxxxxxx; agross@xxxxxxxxxx;
> olof@xxxxxxxxx; horms+renesas@xxxxxxxxxxxx;
> jagan@xxxxxxxxxxxxxxxxxxxx; bjorn.andersson@xxxxxxxxxx; Leonard Crestez
> <leonard.crestez@xxxxxxx>; marc.w.gonzalez@xxxxxxx;
> dinguyen@xxxxxxxxxx; enric.balletbo@xxxxxxxxxxxxx; Aisheng Dong
> <aisheng.dong@xxxxxxx>; robh@xxxxxxxxxx; Abel Vesa
> <abel.vesa@xxxxxxx>; l.stach@xxxxxxxxxxxxxx; linux-arm-
> kernel@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; dl-linux-imx
> <linux-imx@xxxxxxx>; Daniel Baluta <daniel.baluta@xxxxxxx>
> Subject: Re: [PATCH RESEND 1/2] soc: imx: Add SCU SoC info driver support
>
> On Tue, May 14, 2019 at 2:34 AM Anson Huang <anson.huang@xxxxxxx>
> wrote:
> >
> > Hi, Daniel
> >
> > > -----Original Message-----
> > > From: Daniel Baluta [mailto:daniel.baluta@xxxxxxxxx]
> > > Sent: Monday, May 13, 2019 10:30 PM
> > > To: Anson Huang <anson.huang@xxxxxxx>
> > > Cc: catalin.marinas@xxxxxxx; will.deacon@xxxxxxx;
> > > shawnguo@xxxxxxxxxx; s.hauer@xxxxxxxxxxxxxx;
> kernel@xxxxxxxxxxxxxx;
> > > festevam@xxxxxxxxx; maxime.ripard@xxxxxxxxxxx; agross@xxxxxxxxxx;
> > > olof@xxxxxxxxx; horms+renesas@xxxxxxxxxxxx;
> > > jagan@xxxxxxxxxxxxxxxxxxxx; bjorn.andersson@xxxxxxxxxx; Leonard
> > > Crestez <leonard.crestez@xxxxxxx>; marc.w.gonzalez@xxxxxxx;
> > > dinguyen@xxxxxxxxxx; enric.balletbo@xxxxxxxxxxxxx; Aisheng Dong
> > > <aisheng.dong@xxxxxxx>; robh@xxxxxxxxxx; Abel Vesa
> > > <abel.vesa@xxxxxxx>; l.stach@xxxxxxxxxxxxxx; linux-arm-
> > > kernel@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> > > dl-linux-imx <linux-imx@xxxxxxx>; Daniel Baluta
> > > <daniel.baluta@xxxxxxx>
> > > Subject: Re: [PATCH RESEND 1/2] soc: imx: Add SCU SoC info driver
> > > support
> > >
> > > <snip>
> > >
> > > > +
> > > > +static u32 imx8qxp_soc_revision(void) {
> > > > + struct imx_sc_msg_misc_get_soc_id msg;
> > > > + struct imx_sc_rpc_msg *hdr = &msg.hdr;
> > > > + u32 rev = 0;
> > > > + int ret;
> > > > +
> > > > + hdr->ver = IMX_SC_RPC_VERSION;
> > > > + hdr->svc = IMX_SC_RPC_SVC_MISC;
> > > > + hdr->func = IMX_SC_MISC_FUNC_GET_CONTROL;
> > > > + hdr->size = 3;
> > > > +
> > > > + msg.data.send.control = IMX_SC_C_ID;
> > > > + msg.data.send.resource = IMX_SC_R_SYSTEM;
> > > > +
> > > > + ret = imx_scu_call_rpc(soc_ipc_handle, &msg, true);
> > > > + if (ret) {
> > > > + dev_err(&imx_scu_soc_pdev->dev,
> > > > + "get soc info failed, ret %d\n", ret);
> > > > + return rev;
> > >
> > > So you return 0 (rev = 0) here in case of error? This doesn't seem to be
> right.
> > > Maybe return ret?
> >
> > This is intentional, similar with current i.MX8MQ soc info driver,
> > when getting revision failed, just return 0 as revision info and it will show
> "unknown" in sysfs.
>
> Ok, I understand. Lets make this clear from the source code.
>
> ret = imx_scu_call_rpc(soc_ipc_handle, &msg, true);
> + if (ret) {
> + dev_err(&imx_scu_soc_pdev->dev,
> + "get soc info failed, ret %d\n", ret);
> /* returning 0 means getting revision failed */
> + return 0;
> + }
OK, will add a comment in V2.
Anson.