[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <6aa04d1c-ef32-42c0-a2af-c632d69d638e@oss.qualcomm.com>
Date: Tue, 23 Dec 2025 16:59:58 +0530
From: Jishnu Prakash <jishnu.prakash@....qualcomm.com>
To: Krzysztof Kozlowski <krzk@...nel.org>
Cc: jic23@...nel.org, robh@...nel.org, krzysztof.kozlowski@...aro.org,
krzk+dt@...nel.org, conor+dt@...nel.org, agross@...nel.org,
andersson@...nel.org, lumag@...nel.org,
dmitry.baryshkov@....qualcomm.com, konradybcio@...nel.org,
daniel.lezcano@...aro.org, sboyd@...nel.org, amitk@...nel.org,
thara.gopinath@...il.com, lee@...nel.org, rafael@...nel.org,
subbaraman.narayanamurthy@....qualcomm.com,
david.collins@....qualcomm.com, anjelique.melendez@....qualcomm.com,
kamal.wadhwa@....qualcomm.com, rui.zhang@...el.com,
lukasz.luba@....com, devicetree@...r.kernel.org,
linux-arm-msm@...r.kernel.org, linux-iio@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
cros-qcom-dts-watchers@...omium.org, quic_kotarake@...cinc.com,
neil.armstrong@...aro.org, stephan.gerhold@...aro.org
Subject: Re: [PATCH V8] dt-bindings: iio/adc: Move QCOM ADC channel
definitions out of bindings folder
Hi Krzysztof,
On 12/4/2025 1:25 PM, Krzysztof Kozlowski wrote:
> On 04/12/2025 08:54, Krzysztof Kozlowski wrote:
>> On Thu, Nov 27, 2025 at 07:09:03PM +0530, Jishnu Prakash wrote:
>>> There are several header files containing QCOM ADC macros for channel names
>>> right now in the include/dt-bindings/iio folder. Since these are hardware
>>> constants mostly used in devicetree and not exactly bindings, move the
>>> files to the arch/arm(64)/boot/dts/qcom folders.
>>>
>>> Correct the header file paths in all affected devicetree files to fix
>>> compilation errors seen with this move. Update documentation files
>>> similarly to fix dtbinding check errors for the same. Make a copy
>>> of the header file with constants used in ADC driver files in the
>>> /include/linux/iio/adc folder and update driver files to use this
>>> path to include it.
>>>
>>> Signed-off-by: Jishnu Prakash <jishnu.prakash@....qualcomm.com>
>>> ---
>>> Changes since v7:
>>> - Based on a discussion with Krzysztof concluded here:
>>> https://lore.kernel.org/all/d10e2eea-4b86-4e1a-b7a0-54c55907a605@oss.qualcomm.com/,
>>> moved ADC macro header files to arch/arm(64)/boot/dts/qcom folders. The file
>>> include/dt-bindings/iio/qcom,spmi-vadc.h is moved to arch/arm/boot/dts/qcom/
>>> as it is used in both arm and arm64 SoCs and other per-PMIC adc7 header files
>>> are moved to arch/arm64/boot/dts/qcom.
>>> - Updated affected devicetree and documentation files based on path changes above.
>>> - Made a copy of qcom,spmi-vadc.h in /include/linux/iio/adc folder
>>> for inclusion in ADC driver files and updated affected driver files to use it.
>>> - Dropped Acked-by tags from Lee, Rob and Jonathan due to these significant changes
>>> made in latest patch version.
>>> - Updated some more devicetree files affected by this change.
>>> - Pushing this as a standalone change separate from ADC5 Gen3 series, as that
>>> series will no longer depend upon this patch for the location of
>>> qcom,spmi-vadc.h, as ADC5 Gen3 macros will be added in separate new files.
>>> - Link to v7: https://lore.kernel.org/all/20250826083657.4005727-2-jishnu.prakash@oss.qualcomm.com/
>>>
>>> Changes since v6:
>>> - Collected Acked-by tag from Jonathan.
>>>
>>> Changes since v5:
>>> - Updated one more devicetree file requiring this change.
>>> Ran full dt_binding_check and dtbs_check and verified that no
>>> errors were reported related to this patch.
>>>
>>> Mentioning this explicitly as there was an invalid error reported on
>>> this patch in the last two patch series, from upstream kernel
>>> automation:
>>>
>>> fatal error: dt-bindings/iio/adc/qcom,spmi-vadc.h: No such file or directory
>>>
>>> The error is invalid as this file does get added in this patch, in
>>> previous patch series too.
>>>
>>> Links to discussion for same in v5:
>>> https://lore.kernel.org/all/cc328ade-a05e-4b1d-a8f0-55b18b4a0873@oss.qualcomm.com/
>>> https://lore.kernel.org/all/9f24e85d-f762-4c29-a58f-ed7652f50919@oss.qualcomm.com/
>>>
>>> Links to discussion for same in v4:
>>> https://lore.kernel.org/all/16aaae04-4fe8-4227-9374-0919960a4ca2@quicinc.com/
>>>
>>> Changes since v4:
>>> - Updated some more devicetree files requiring this change.
>>>
>>> Changes since v3:
>>> - Updated files affected by adc file path change in /arch/arm, which
>>> were missed earlier. Updated some more new devicetree files requiring
>>> this change in /arch/arm64.
>>>
>>> Changes since v2:
>>> - Updated some more new devicetree files requiring this change.
>>> - Collected Acked-by tags from Rob and Lee.
>>>
>>> .../bindings/iio/adc/qcom,spmi-vadc.yaml | 4 +-
>>> .../bindings/mfd/qcom,spmi-pmic.yaml | 2 +-
>>> .../bindings/thermal/qcom-spmi-adc-tm-hc.yaml | 2 +-
>>> .../bindings/thermal/qcom-spmi-adc-tm5.yaml | 6 +-
>>
>> You have a checkpatch warning for a reason. You should not make these
>> combined into one change.
>>
>>> arch/arm/boot/dts/qcom/pm8226.dtsi | 2 +-
>>> arch/arm/boot/dts/qcom/pm8941.dtsi | 3 +-
>>> arch/arm/boot/dts/qcom/pma8084.dtsi | 2 +-
>>> arch/arm/boot/dts/qcom/pmx55.dtsi | 2 +-
>>> .../arm/boot/dts/qcom}/qcom,spmi-vadc.h | 0
>>> arch/arm64/boot/dts/qcom/pm4125.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm6125.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm6150.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm6150l.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm660.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm660l.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm7250b.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm8150.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm8150b.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm8150l.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm8916.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm8937.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm8950.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm8953.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm8994.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pm8998.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pmi632.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pmi8950.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pmm8155au_1.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pmp8074.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/pms405.dtsi | 2 +-
>>> .../boot/dts/qcom/qcm6490-fairphone-fp5.dts | 4 +-
>>> .../dts/qcom/qcm6490-particle-tachyon.dts | 4 +-
>>> .../boot/dts/qcom/qcm6490-shift-otter.dts | 4 +-
>>> .../boot/dts/qcom}/qcom,spmi-adc7-pm7325.h | 2 +-
>>> .../boot/dts/qcom}/qcom,spmi-adc7-pm8350.h | 2 +-
>>> .../boot/dts/qcom}/qcom,spmi-adc7-pm8350b.h | 2 +-
>>> .../boot/dts/qcom}/qcom,spmi-adc7-pmk8350.h | 2 +-
>>> .../boot/dts/qcom}/qcom,spmi-adc7-pmr735a.h | 2 +-
>>> .../boot/dts/qcom}/qcom,spmi-adc7-pmr735b.h | 2 +-
>>> .../boot/dts/qcom}/qcom,spmi-adc7-smb139x.h | 2 +-
>>> .../dts/qcom/qcs6490-radxa-dragon-q6a.dts | 4 +-
>>> arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 4 +-
>>> arch/arm64/boot/dts/qcom/sc7280-idp.dts | 2 +-
>>> arch/arm64/boot/dts/qcom/sc7280-idp.dtsi | 2 +-
>>> arch/arm64/boot/dts/qcom/sc7280-qcard.dtsi | 4 +-
>>> arch/arm64/boot/dts/qcom/sc8180x-pmics.dtsi | 2 +-
>>> .../boot/dts/qcom/sc8280xp-huawei-gaokun3.dts | 2 +-
>>> .../qcom/sc8280xp-lenovo-thinkpad-x13s.dts | 2 +-
>>> .../dts/qcom/sc8280xp-microsoft-blackrock.dts | 2 +-
>>> arch/arm64/boot/dts/qcom/sc8280xp-pmics.dtsi | 6 +-
>>> .../boot/dts/qcom/sm7225-fairphone-fp4.dts | 2 +-
>>> .../boot/dts/qcom/sm7325-nothing-spacewar.dts | 6 +-
>>> arch/arm64/boot/dts/qcom/sm8450-hdk.dts | 9 +-
>>> drivers/iio/adc/qcom-spmi-adc5.c | 3 +-
>>> drivers/iio/adc/qcom-spmi-vadc.c | 3 +-
>>> include/linux/iio/adc/qcom,spmi-vadc.h | 303 ++++++++++++++++++
>>> 56 files changed, 374 insertions(+), 73 deletions(-)
>>> rename {include/dt-bindings/iio => arch/arm/boot/dts/qcom}/qcom,spmi-vadc.h (100%)
>>> rename {include/dt-bindings/iio => arch/arm64/boot/dts/qcom}/qcom,spmi-adc7-pm7325.h (98%)
>>> rename {include/dt-bindings/iio => arch/arm64/boot/dts/qcom}/qcom,spmi-adc7-pm8350.h (98%)
>>> rename {include/dt-bindings/iio => arch/arm64/boot/dts/qcom}/qcom,spmi-adc7-pm8350b.h (99%)
>>> rename {include/dt-bindings/iio => arch/arm64/boot/dts/qcom}/qcom,spmi-adc7-pmk8350.h (98%)
>>> rename {include/dt-bindings/iio => arch/arm64/boot/dts/qcom}/qcom,spmi-adc7-pmr735a.h (96%)
>>> rename {include/dt-bindings/iio => arch/arm64/boot/dts/qcom}/qcom,spmi-adc7-pmr735b.h (96%)
>>> rename {include/dt-bindings/iio => arch/arm64/boot/dts/qcom}/qcom,spmi-adc7-smb139x.h (93%)
>>
>> Huh, what? How can you drop the header? Are you sure you checked
>> previous commits, e.g. pinctrl headers, how this should be done? Where
>> did you see such commit dropping the ABI?
>>
>
> You too can use search to see how this was done...
>
> https://lore.kernel.org/all/20220605160508.134075-1-krzysztof.kozlowski@linaro.org/
Thanks for sharing the example. I went through the series fully and
understand the issue now - to avoid modifying ABI, the preference
is to copy the header files to required locations, update any
references to them and mark the older header files as deprecated.
I'll make and push a similar series for this change.
Thanks,
Jishnu
>
>
> Best regards,
> Krzysztof
Powered by blists - more mailing lists