[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <X2KJB3xtnC-pWM7o5TBw6ln3ItpMwn7tdn5Z8gpZY3oW31isE8PLTX5GUbJ6HcZk_9s72jb6ImwGL-anIoto4dK1MINTxzdRKfbejp_nXcA=@protonmail.com>
Date: Wed, 09 Jul 2025 07:44:49 +0000
From: Yassine Oudjana <y.oudjana@...tonmail.com>
To: Simon Horman <horms@...nel.org>
Cc: Konrad Dybcio <konrad.dybcio@....qualcomm.com>, Jonathan Cameron <jic23@...nel.org>, Lars-Peter Clausen <lars@...afoo.de>, Bjorn Andersson <andersson@...nel.org>, Konrad Dybcio <konradybcio@...nel.org>, Manivannan Sadhasivam <manivannan.sadhasivam@...aro.org>, "David S. Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>, Masahiro Yamada <masahiroy@...nel.org>, Nathan Chancellor <nathan@...nel.org>, Nicolas Schier <nicolas.schier@...ux.dev>, Alexander Sverdlin <alexander.sverdlin@...il.com>, Sean Nyekjaer <sean@...nix.com>, Javier Carrasco <javier.carrasco.cruz@...il.com>, Matti Vaittinen <mazziesaccount@...il.com>, Antoniu Miclaus <antoniu.miclaus@...log.com>, Ramona Gradinariu <ramona.gradinariu@...log.com>, "Yo-Jung (Leo) Lin" <0xff07@...il.com>, Andy Shevchenko <andriy.shevchenko@...ux.intel.com>, Neil Armstrong <neil.armstrong@...aro.org>, Barnabás Czémán
<barnabas.czeman@...nlining.org>, Danila Tikhonov <danila@...xyga.com>, Antoni Pokusinski <apokusinski01@...il.com>, Vasileios Amoiridis <vassilisamir@...il.com>, Petar Stoykov <pd.pstoykov@...il.com>, shuaijie wang <wangshuaijie@...nic.com>, Yasin Lee <yasin.lee.x@...il.com>, "Borislav Petkov (AMD)" <bp@...en8.de>, Dave Hansen <dave.hansen@...ux.intel.com>, Tony Luck <tony.luck@...el.com>, Pawan Gupta <pawan.kumar.gupta@...ux.intel.com>, Ingo Molnar <mingo@...nel.org>, Yassine Oudjana <yassine.oudjana@...il.com>, linux-kernel@...r.kernel.org, linux-iio@...r.kernel.org, linux-arm-msm@...r.kernel.org, netdev@...r.kernel.org, linux-kbuild@...r.kernel.org
Subject: Re: [PATCH 2/3] net: qrtr: Define macro to convert QMI version and instance to QRTR instance
Sent with Proton Mail secure email.
On Monday, July 7th, 2025 at 6:06 PM, Simon Horman <horms@...nel.org> wrote:
> On Sat, Jul 05, 2025 at 06:29:39PM +0000, Yassine Oudjana wrote:
>
> > On Wednesday, April 9th, 2025 at 3:54 PM, Konrad Dybcio konrad.dybcio@....qualcomm.com wrote:
> >
> > > On 4/6/25 4:07 PM, Yassine Oudjana wrote:
>
>
> ...
>
> > > > diff --git a/include/linux/soc/qcom/qrtr.h b/include/linux/soc/qcom/qrtr.h
> > > > index 4d7f25c64c56..10c89a35cbb9 100644
> > > > --- a/include/linux/soc/qcom/qrtr.h
> > > > +++ b/include/linux/soc/qcom/qrtr.h
> > > > @@ -13,6 +13,8 @@ struct qrtr_device {
> > > >
> > > > #define to_qrtr_device(d) container_of(d, struct qrtr_device, dev)
> > > >
> > > > +#define QRTR_INSTANCE(qmi_version, qmi_instance) (qmi_version | qmi_instance << 8)
> > >
> > > Please use FIELD_PREP + GENMASK to avoid potential overflows
> > >
> > > Konrad
> >
> > Since I'm using this macro in initializing QRTR match tables I am unable to use
> > FIELD_PREP. When I do, I get such errors:
>
>
> Does using FIELD_PREP_CONST, say in a QRTR_INSTANCE_CONST variant, help?
That works, but do we want to have two variants? Or in this case maybe
I should leave qmi_interface.c untouched and define the macro only for use
in match tables?
>
> > In file included from ../arch/arm64/include/asm/sysreg.h:1108,
> > from ../arch/arm64/include/asm/memory.h:223,
> > from ../arch/arm64/include/asm/pgtable-prot.h:8,
> > from ../arch/arm64/include/asm/sparsemem.h:8,
> > from ../include/linux/numa.h:23,
> > from ../include/linux/cpumask.h:17,
> > from ../include/linux/smp.h:13,
> > from ../include/linux/lockdep.h:14,
> > from ../include/linux/mutex.h:17,
> > from ../include/linux/kernfs.h:11,
> > from ../include/linux/sysfs.h:16,
> > from ../include/linux/iio/buffer.h:9,
> > from ../drivers/iio/common/qcom_smgr/qcom_smgr.c:8:
> > ../include/linux/bitfield.h:114:9: error: braced-group within expression allowed only inside a function
> > 114 | ({ \
> > | ^
> > ../include/linux/soc/qcom/qrtr.h:21:10: note: in expansion of macro 'FIELD_PREP'
> > 21 | (FIELD_PREP(GENMASK(7, 0), qmi_version) | FIELD_PREP(GENMASK(15, 8), qmi_instance))
> > | ^~~~~~~~~~
> > ../drivers/iio/common/qcom_smgr/qcom_smgr.c:825:29: note: in expansion of macro 'QRTR_INSTANCE'
> > 825 | .instance = QRTR_INSTANCE(SNS_SMGR_QMI_SVC_V1,
> > | ^~~~~~~~~~~~~
>
>
> ...
Powered by blists - more mailing lists