Message ID | 1583544359-515-1-git-send-email-Anson.Huang@nxp.com (mailing list archive) |
---|---|
State | Superseded, archived |
Headers | show |
Series | [V2,1/7] firmware: imx: Add stubs for !CONFIG_IMX_SCU case | expand |
On 3/6/20 5:25 PM, Anson Huang wrote: > Add stubs for those i.MX SCU APIs to make those modules depending > on IMX_SCU can pass build when COMPILE_TEST is enabled. > > Signed-off-by: Anson Huang <Anson.Huang@nxp.com> > --- > new patch. > --- > include/linux/firmware/imx/ipc.h | 11 +++++++++++ > include/linux/firmware/imx/sci.h | 19 +++++++++++++++++++ > 2 files changed, 30 insertions(+) > > diff --git a/include/linux/firmware/imx/ipc.h b/include/linux/firmware/imx/ipc.h > index 8910574..3fff0e2 100644 > --- a/include/linux/firmware/imx/ipc.h > +++ b/include/linux/firmware/imx/ipc.h > @@ -34,6 +34,7 @@ struct imx_sc_rpc_msg { > uint8_t func; > }; > > +#ifdef CONFIG_IMX_SCU > /* > * This is an function to send an RPC message over an IPC channel. > * It is called by client-side SCFW API function shims. > @@ -55,4 +56,14 @@ int imx_scu_call_rpc(struct imx_sc_ipc *ipc, void *msg, bool have_resp); > * @return Returns an error code (0 = success, failed if < 0) > */ > int imx_scu_get_handle(struct imx_sc_ipc **ipc); > +#else > +static inline int imx_scu_call_rpc(struct imx_sc_ipc *ipc, void *msg, bool have_resp) > +{ > + return 0; > +} > +static inline int imx_scu_get_handle(struct imx_sc_ipc **ipc) > +{ > + return 0; > +} > +#endif > #endif /* _SC_IPC_H */ > diff --git a/include/linux/firmware/imx/sci.h b/include/linux/firmware/imx/sci.h > index 17ba4e4..4688b60 100644 > --- a/include/linux/firmware/imx/sci.h > +++ b/include/linux/firmware/imx/sci.h > @@ -16,8 +16,27 @@ > #include <linux/firmware/imx/svc/misc.h> > #include <linux/firmware/imx/svc/pm.h> > > +#ifdef CONFIG_IMX_SCU > int imx_scu_enable_general_irq_channel(struct device *dev); > int imx_scu_irq_register_notifier(struct notifier_block *nb); > int imx_scu_irq_unregister_notifier(struct notifier_block *nb); > int imx_scu_irq_group_enable(u8 group, u32 mask, u8 enable); > +#else > +static inline int imx_scu_enable_general_irq_channel(struct device *dev) > +{ > + return 0; > +} > +static inline int imx_scu_irq_register_notifier(struct notifier_block *nb) > +{ > + return 0; > +} > +static inline int imx_scu_irq_unregister_notifier(struct notifier_block *nb) > +{ > + return 0; > +} > +static inline int imx_scu_irq_group_enable(u8 group, u32 mask, u8 enable) > +{ > + return 0; > +} It would probably be more appropriate to return errors from the stub functions. Guenter > +#endif > #endif /* _SC_SCI_H */ >
Hi, Guenter > Subject: Re: [PATCH V2 1/7] firmware: imx: Add stubs for !CONFIG_IMX_SCU > case > > On 3/6/20 5:25 PM, Anson Huang wrote: > > Add stubs for those i.MX SCU APIs to make those modules depending on > > IMX_SCU can pass build when COMPILE_TEST is enabled. > > > > Signed-off-by: Anson Huang <Anson.Huang@nxp.com> > > --- > > new patch. > > --- > > include/linux/firmware/imx/ipc.h | 11 +++++++++++ > > include/linux/firmware/imx/sci.h | 19 +++++++++++++++++++ > > 2 files changed, 30 insertions(+) > > > > diff --git a/include/linux/firmware/imx/ipc.h > > b/include/linux/firmware/imx/ipc.h > > index 8910574..3fff0e2 100644 > > --- a/include/linux/firmware/imx/ipc.h > > +++ b/include/linux/firmware/imx/ipc.h > > @@ -34,6 +34,7 @@ struct imx_sc_rpc_msg { > > uint8_t func; > > }; > > > > +#ifdef CONFIG_IMX_SCU > > /* > > * This is an function to send an RPC message over an IPC channel. > > * It is called by client-side SCFW API function shims. > > @@ -55,4 +56,14 @@ int imx_scu_call_rpc(struct imx_sc_ipc *ipc, void > *msg, bool have_resp); > > * @return Returns an error code (0 = success, failed if < 0) > > */ > > int imx_scu_get_handle(struct imx_sc_ipc **ipc); > > +#else > > +static inline int imx_scu_call_rpc(struct imx_sc_ipc *ipc, void *msg, > > +bool have_resp) { > > + return 0; > > +} > > +static inline int imx_scu_get_handle(struct imx_sc_ipc **ipc) { > > + return 0; > > +} > > +#endif > > #endif /* _SC_IPC_H */ > > diff --git a/include/linux/firmware/imx/sci.h > > b/include/linux/firmware/imx/sci.h > > index 17ba4e4..4688b60 100644 > > --- a/include/linux/firmware/imx/sci.h > > +++ b/include/linux/firmware/imx/sci.h > > @@ -16,8 +16,27 @@ > > #include <linux/firmware/imx/svc/misc.h> #include > > <linux/firmware/imx/svc/pm.h> > > > > +#ifdef CONFIG_IMX_SCU > > int imx_scu_enable_general_irq_channel(struct device *dev); int > > imx_scu_irq_register_notifier(struct notifier_block *nb); int > > imx_scu_irq_unregister_notifier(struct notifier_block *nb); int > > imx_scu_irq_group_enable(u8 group, u32 mask, u8 enable); > > +#else > > +static inline int imx_scu_enable_general_irq_channel(struct device > > +*dev) { > > + return 0; > > +} > > +static inline int imx_scu_irq_register_notifier(struct notifier_block > > +*nb) { > > + return 0; > > +} > > +static inline int imx_scu_irq_unregister_notifier(struct > > +notifier_block *nb) { > > + return 0; > > +} > > +static inline int imx_scu_irq_group_enable(u8 group, u32 mask, u8 > > +enable) { > > + return 0; > > +} > > It would probably be more appropriate to return errors from the stub > functions. Agreed, improve them in V3 patch series. Thanks, Anson
On Sat, Mar 07, 2020 at 09:25:53AM +0800, Anson Huang wrote: > Add stubs for those i.MX SCU APIs to make those modules depending > on IMX_SCU can pass build when COMPILE_TEST is enabled. > > Signed-off-by: Anson Huang <Anson.Huang@nxp.com> Already had such a patch from Peng Fan. Shawn > --- > new patch. > --- > include/linux/firmware/imx/ipc.h | 11 +++++++++++ > include/linux/firmware/imx/sci.h | 19 +++++++++++++++++++ > 2 files changed, 30 insertions(+) > > diff --git a/include/linux/firmware/imx/ipc.h b/include/linux/firmware/imx/ipc.h > index 8910574..3fff0e2 100644 > --- a/include/linux/firmware/imx/ipc.h > +++ b/include/linux/firmware/imx/ipc.h > @@ -34,6 +34,7 @@ struct imx_sc_rpc_msg { > uint8_t func; > }; > > +#ifdef CONFIG_IMX_SCU > /* > * This is an function to send an RPC message over an IPC channel. > * It is called by client-side SCFW API function shims. > @@ -55,4 +56,14 @@ int imx_scu_call_rpc(struct imx_sc_ipc *ipc, void *msg, bool have_resp); > * @return Returns an error code (0 = success, failed if < 0) > */ > int imx_scu_get_handle(struct imx_sc_ipc **ipc); > +#else > +static inline int imx_scu_call_rpc(struct imx_sc_ipc *ipc, void *msg, bool have_resp) > +{ > + return 0; > +} > +static inline int imx_scu_get_handle(struct imx_sc_ipc **ipc) > +{ > + return 0; > +} > +#endif > #endif /* _SC_IPC_H */ > diff --git a/include/linux/firmware/imx/sci.h b/include/linux/firmware/imx/sci.h > index 17ba4e4..4688b60 100644 > --- a/include/linux/firmware/imx/sci.h > +++ b/include/linux/firmware/imx/sci.h > @@ -16,8 +16,27 @@ > #include <linux/firmware/imx/svc/misc.h> > #include <linux/firmware/imx/svc/pm.h> > > +#ifdef CONFIG_IMX_SCU > int imx_scu_enable_general_irq_channel(struct device *dev); > int imx_scu_irq_register_notifier(struct notifier_block *nb); > int imx_scu_irq_unregister_notifier(struct notifier_block *nb); > int imx_scu_irq_group_enable(u8 group, u32 mask, u8 enable); > +#else > +static inline int imx_scu_enable_general_irq_channel(struct device *dev) > +{ > + return 0; > +} > +static inline int imx_scu_irq_register_notifier(struct notifier_block *nb) > +{ > + return 0; > +} > +static inline int imx_scu_irq_unregister_notifier(struct notifier_block *nb) > +{ > + return 0; > +} > +static inline int imx_scu_irq_group_enable(u8 group, u32 mask, u8 enable) > +{ > + return 0; > +} > +#endif > #endif /* _SC_SCI_H */ > -- > 2.7.4 >
On 3/15/20 5:28 PM, Shawn Guo wrote: > On Sat, Mar 07, 2020 at 09:25:53AM +0800, Anson Huang wrote: >> Add stubs for those i.MX SCU APIs to make those modules depending >> on IMX_SCU can pass build when COMPILE_TEST is enabled. >> >> Signed-off-by: Anson Huang <Anson.Huang@nxp.com> > > Already had such a patch from Peng Fan. > Did you follow the discussion and the conclusion that the only patch really needed is patch 2/7 ? Guenter
On Sun, Mar 15, 2020 at 05:54:52PM -0700, Guenter Roeck wrote: > On 3/15/20 5:28 PM, Shawn Guo wrote: > > On Sat, Mar 07, 2020 at 09:25:53AM +0800, Anson Huang wrote: > >> Add stubs for those i.MX SCU APIs to make those modules depending > >> on IMX_SCU can pass build when COMPILE_TEST is enabled. > >> > >> Signed-off-by: Anson Huang <Anson.Huang@nxp.com> > > > > Already had such a patch from Peng Fan. > > > > Did you follow the discussion and the conclusion that the only patch > really needed is patch 2/7 ? Thanks for the reminding. Just did. Shawn
diff --git a/include/linux/firmware/imx/ipc.h b/include/linux/firmware/imx/ipc.h index 8910574..3fff0e2 100644 --- a/include/linux/firmware/imx/ipc.h +++ b/include/linux/firmware/imx/ipc.h @@ -34,6 +34,7 @@ struct imx_sc_rpc_msg { uint8_t func; }; +#ifdef CONFIG_IMX_SCU /* * This is an function to send an RPC message over an IPC channel. * It is called by client-side SCFW API function shims. @@ -55,4 +56,14 @@ int imx_scu_call_rpc(struct imx_sc_ipc *ipc, void *msg, bool have_resp); * @return Returns an error code (0 = success, failed if < 0) */ int imx_scu_get_handle(struct imx_sc_ipc **ipc); +#else +static inline int imx_scu_call_rpc(struct imx_sc_ipc *ipc, void *msg, bool have_resp) +{ + return 0; +} +static inline int imx_scu_get_handle(struct imx_sc_ipc **ipc) +{ + return 0; +} +#endif #endif /* _SC_IPC_H */ diff --git a/include/linux/firmware/imx/sci.h b/include/linux/firmware/imx/sci.h index 17ba4e4..4688b60 100644 --- a/include/linux/firmware/imx/sci.h +++ b/include/linux/firmware/imx/sci.h @@ -16,8 +16,27 @@ #include <linux/firmware/imx/svc/misc.h> #include <linux/firmware/imx/svc/pm.h> +#ifdef CONFIG_IMX_SCU int imx_scu_enable_general_irq_channel(struct device *dev); int imx_scu_irq_register_notifier(struct notifier_block *nb); int imx_scu_irq_unregister_notifier(struct notifier_block *nb); int imx_scu_irq_group_enable(u8 group, u32 mask, u8 enable); +#else +static inline int imx_scu_enable_general_irq_channel(struct device *dev) +{ + return 0; +} +static inline int imx_scu_irq_register_notifier(struct notifier_block *nb) +{ + return 0; +} +static inline int imx_scu_irq_unregister_notifier(struct notifier_block *nb) +{ + return 0; +} +static inline int imx_scu_irq_group_enable(u8 group, u32 mask, u8 enable) +{ + return 0; +} +#endif #endif /* _SC_SCI_H */
Add stubs for those i.MX SCU APIs to make those modules depending on IMX_SCU can pass build when COMPILE_TEST is enabled. Signed-off-by: Anson Huang <Anson.Huang@nxp.com> --- new patch. --- include/linux/firmware/imx/ipc.h | 11 +++++++++++ include/linux/firmware/imx/sci.h | 19 +++++++++++++++++++ 2 files changed, 30 insertions(+)