Re: [PATCH] arm64: dts: qcom: sdm845-lg: Enable NFC

From: Paul Sajna

Date: Sun Sep 06 2026 - 14:26:25 EST


On 2026-09-06 11:13 a.m., Paul Sajna wrote:
On 2026-09-03 1:10 a.m., Konrad Dybcio wrote:
On 9/3/26 4:03 AM, Paul Sajna wrote:
Add the i2c and tlmm nodes to support the NXP PN547 NFC chip

Downstream dtsi for reference:
https://github.com/LineageOS/android_kernel_lge_sdm845/blob/ lineage-22.2/arch/arm64/boot/dts/lge/sdm845-judy/sdm845- judyln_lao_com/sdm845-judyln_lao_com-nfc.dtsi

Signed-off-by: Paul Sajna <sajattack@xxxxxxxxxxxxxxxx>
---

[...]

+    nfc_default: nfc-default-state {
+        pins = "gpio12", "gpio62", "gpio63";
+        function = "gpio";
+        drive-strength = <6>;
+        bias-pull-up;

active-high pins and pull-ups don't really go well together, please
verify that

Konrad

Downstream decompile sez

nfc {

                nfc_int_active {
                    phandle = <0x46a>;

                    config {
                        pins = "gpio63";
                        drive-strength = <0x02>;
                        bias-pull-up;
                    };

                    mux {
                        pins = "gpio63";
                        function = "gpio";
                    };
                };

                nfc_enable_suspend {
                    phandle = <0x46d>;

                    config {
                        pins = "gpio12", "gpio62", "gpio116";
                        bias-disable;
                        drive-strength = <0x02>;
                    };

                    mux {
                        pins = "gpio12", "gpio62", "gpio116";
                        function = "gpio";
                    };
                };

                nfc_enable_active {
                    phandle = <0x46c>;

                    config {
                        pins = "gpio12", "gpio62", "gpio116";
                        drive-strength = <0x02>;
                        bias-pull-up;
                    };

                    mux {
                        pins = "gpio12", "gpio62", "gpio116";
                        function = "gpio";
                    };
                };

                nfc_int_suspend {
                    phandle = <0x46b>;

                    config {
                        pins = "gpio63";
                        drive-strength = <0x02>;
                        bias-pull-up;
                    };

                    mux {
                        pins = "gpio63";
                        function = "gpio";
                    };
                };
            };




Also active high (0x00)

pn547@28 {
compatible = "nxp,pn547";
nxp,i2c-pull-up = <0x01>;
nxp,gpio_irq = <0x34 0x3f 0x00>;
nxp,gpio_ven = <0x34 0x0c 0x00>;
nxp,gpio_mode = <0x34 0x3e 0x00>;
nxp,gpio_scl = <0x34 0x2a 0x00>;
nxp,gpio_sda = <0x34 0x29 0x00>;
status = "ok";
interrupt-parent = <0x34>;
interrupts = <0x3f 0x00>;
reg = <0x28>;
qcom,clk-src = "BBCLK2";
interrupt-names = "nfc_irq";
};

--
Hal: They're going for the kernel!
Margo: Colonel Who?