[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <d349f8cb-13cd-4bd5-83e3-0d7643c408d1@oss.qualcomm.com>
Date: Fri, 19 Dec 2025 11:49:30 +0100
From: Konrad Dybcio <konrad.dybcio@....qualcomm.com>
To: David Heidelberg <david@...t.cz>, Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>
Cc: linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, phone-devel@...r.kernel.org
Subject: Re: [PATCH] arm64: dts: qcom: sdm845-oneplus: Enable known blocks and
add placeholders
On 12/18/25 11:30 PM, David Heidelberg wrote:
> On 17/12/2025 16:28, Konrad Dybcio wrote:
>> On 12/17/25 4:00 PM, David Heidelberg wrote:
>>> On 17/12/2025 13:04, Konrad Dybcio wrote:
>>>> On 12/16/25 9:34 PM, David Heidelberg via B4 Relay wrote:
>>>>> From: David Heidelberg <david@...t.cz>
>>>>>
>>>>> We know these devices are present; most of them are supported by
>>>>> downstream and are close to the mainline kernels.
>>>>>
>>>>> This adds placeholders for:
>>>>> - front camera (imx371)
>>>>> - rear cameras (imx519, imx376k)
>>>>> - actuators
>>>>> - NFC node on i2c3
>>>>>
>>>>> This is very handy when rebasing the integration tree with
>>>>> support for multiple different blocks at the same time.
>>>>>
>>>>> Signed-off-by: David Heidelberg <david@...t.cz>
>>>>> ---
>>>>
>>>> [...]
>>>>
>>>>> +&i2c3 {
>>>>> + clock-frequency = <400000>;
>>>>> +
>>>>> + status = "okay";
>>>>> +
>>>>> + /* nxp,nxp-nci-i2c @28 */
>>>>
>>>> This seems fairly straightforward to enable - could you just
>>>> do that instead?
>>>
>>> I have patch for it in-tree, but most likely not correct. See notes in:
>>>
>>> https://gitlab.com/sdm845/sdm845-next/-/commit/eeb765bb1166e020a771ed712fec76b56da229ee
>>>
>>> For now, I can only confirm the device is on the i2c address.
>>
>> Taking a look at just the names of the sdm845-qrd.dtsi/sony modifications for
>> their sdm845 phones in downstream which I presume have the exact same chip anyway:
>>
>> notes based on observation and driver (drivers/nfc/nq-nci.c)
>>
>> nq@28 {
>> compatible = "qcom,nq-nci";
>> reg = <0x28>;
>> qcom,nq-irq = <&tlmm 63 0x00>; // interrupt, duplicated below
>> qcom,nq-ven = <&tlmm 12 0x00>; // voltage enable, ACTIVE_HIGH
>> qcom,nq-firm = <&tlmm 62 0x00>; // firmware download, ACTIVE_HIGH
>> qcom,nq-clkreq = <&pm8998_gpios 21 0x00>; // clock enable, INPUT
>> qcom,nq-esepwr = <&tlmm 116 0x00>; // eSE power enable, ACTIVE_HIGH
>> interrupt-parent = <&tlmm>;
>> interrupts = <63 0>;
>> [... blurb ...]
>> };
>>
>>
>> pm8998_gpio_21: pm8998_gpio_21 {
>> pins = "gpio21";
>> function = "normal";
>> input-enable;
>> bias-pull-down;
>> power-source = <1>;
>> };
>>
>>
>> /* GPIO_62: NFC_DWLD_EN */
>> sdm_gpio_62: sdm_gpio_62 {
>> mux {
>> pins = "gpio62";
>> function = "gpio";
>> };
>>
>> config {
>> pins = "gpio62";
>> drive-strength = <2>;
>> bias-disable;
>> output-low;
>> };
>> };
>>
>>
>> /* GPIO_63: NFC_IRQ */
>> sdm_gpio_63: sdm_gpio_63 {
>> mux {
>> pins = "gpio63";
>> function = "gpio";
>> };
>>
>> config {
>> pins = "gpio63";
>> drive-strength = <2>;
>> bias-pull-down;
>> input-enable;
>> };
>> };
>>
>>
>> /* GPIO_12 : NFC_VEN */
>> sdm_gpio_12: sdm_gpio_12 {
>> mux {
>> pins = "gpio12";
>> function = "gpio";
>> };
>>
>> config {
>> pins = "gpio12";
>> drive-strength = <2>;
>> bias-disable;
>> output-low;
>> };
>> };
>>
>> Konrad
>
> we have something similar, just different strengths (see below), but I would leave this into the point, when someone can properly verify the configuration and test it.
You *really* need to configure the PMIC GPIO explicitly
Konrad
Powered by blists - more mailing lists