[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <6e6ecdbf-f3cb-4d7e-a679-4640d6603ac8@oss.qualcomm.com>
Date: Fri, 5 Dec 2025 12:58:27 +0100
From: Konrad Dybcio <konrad.dybcio@....qualcomm.com>
To: Nihal Kumar Gupta <quic_nihalkum@...cinc.com>,
Vikram Sharma <quic_vikramsa@...cinc.com>
Cc: bryan.odonoghue@...aro.org, mchehab@...nel.org, robh@...nel.org,
krzk+dt@...nel.org, conor+dt@...nel.org, andersson@...nel.org,
konradybcio@...nel.org, hverkuil-cisco@...all.nl,
cros-qcom-dts-watchers@...omium.org, catalin.marinas@....com,
will@...nel.org, linux-arm-kernel@...ts.infradead.org,
quic_svankada@...cinc.com, linux-media@...r.kernel.org,
linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, Ravi Shankar <quic_rshankar@...cinc.com>,
Vishal Verma <quic_vishverm@...cinc.com>
Subject: Re: [PATCH v6 2/3] arm64: dts: qcom: qcs8300: Add CCI definitions
On 12/2/25 8:35 AM, Nihal Kumar Gupta wrote:
>
>
> On 11/26/25 9:10 AM, Vikram Sharma wrote:
>>> From: Nihal Kumar Gupta <quic_nihalkum@...cinc.com>
>>>
>>> Qualcomm QCS8300 SoC contains three Camera Control Interface (CCI).
>>> Compared to Lemans, the key difference is in SDA/SCL GPIO assignments
>>> and number of CCIs.
>> [...]
>>
>>> @@ -5071,6 +5182,240 @@ tlmm: pinctrl@...0000 {
>>> #interrupt-cells = <2>;
>>> wakeup-parent = <&pdc>;
>>>
>>> + cam0_avdd_2v8_en_default: cam0-avdd-2v8-en-state {
>>> + pins = "gpio73";
>>> + function = "gpio";
>>> + drive-strength = <2>;
>>> + bias-disable;
>>> + };
>> I'm not sure whether I was unclear, but my intention was to ask you to move the MCLK pin definitions to the SoC DTSI, because that comes from the design of the platform and doesn't vary between end products.
>>
>> GPIO_73 being related to a voltage regulator is strictly a property of the EVK.
>
> MCLK pin definitions are already present under the tlmm block in SoC dtsi(monaco.dtsi) as required by the pinctrl subsystem(qcom,qcs8300-tlmm.yaml).
The latter part of your sentence refers to the pin definition having to end
up under TLMM in the final DT, which it will be regardless of where exactly
in the source files it appears.
What I'm alluding to is that we organize some of these definitions in a
specific source file to make logical sense and keep them within relevant
scope (i.e. you shouldn't be able to refer to a board X-specific setting
from board Y DT - that's unnecessary room for error, whereas pin definitions
that are a result of the SoC design make sense to be shared)
> Are you suggesting they shouldn’t be part of TLMM in the SoC DTSI? This doesn’t align with the YAML file.
That's not exactly true, the YAML file you're referencing only lists the
allowed entries in the 'function' property of the pinmux subnodes.
The DT checker makes no effort to analyze your file structure, it only
makes sure that you're not adding illegal properties (or lacking required
ones) for a given device described by a binding.
> Regarding GPIO_73: Noted. I will move it to monaco-evk.dts under the tlmm section.
>
> Below are the example snippets:
> In monaco.dtsi (SoC level):
> tlmm: pinctrl@... {
> cam_mclk0_default: cam-mclk0-default-state {
> pins = "gpio67";
> function = "cam_mclk";
> drive-strength = <2>;
> };
> ....
> };
>
> In monaco-evk.dts (Board level):
> &tlmm {
> cam0_avdd_2v8_en_default: cam0-avdd-2v8-en-state {
> pins = "gpio73";
> function = "gpio";
> drive-strength = <2>;
> bias-disable;
> };
That was my entire points, thanks
Konrad
Powered by blists - more mailing lists