The OnePlus 6/6T both have a NQ330 (PN553 + P73N2M0). The PN533 supported by the nxp-nci-i2c driver in mainline. It detects/reads NFC tags using "nfctool". Signed-off-by: Gergo Koteles <soyer@xxxxxx> --- .../boot/dts/qcom/sdm845-oneplus-common.dtsi | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi b/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi index 64638ea94db7..5e45801031d8 100644 --- a/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi +++ b/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi @@ -380,6 +380,24 @@ zap-shader { }; }; +&i2c3 { + clock-frequency = <400000>; + status = "okay"; + + nfc@28 { + compatible = "nxp,nxp-nci-i2c"; + reg = <0x28>; + + interrupts-extended = <&tlmm 63 IRQ_TYPE_EDGE_RISING>; + + enable-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>; + firmware-gpios = <&tlmm 62 GPIO_ACTIVE_HIGH>; + + pinctrl-0 = <&nfc_int_active &nfc_enable_active &nfc_firmware_active>; + pinctrl-names = "default"; + }; +}; + &i2c10 { status = "okay"; clock-frequency = <100000>; @@ -753,6 +771,27 @@ &usb_1_hsphy { &tlmm { gpio-reserved-ranges = <0 4>, <81 4>; + nfc_int_active: nfc-int-active-state { + pins = "gpio63"; + function = "gpio"; + drive-strength = <2>; + bias-pull-up; + }; + + nfc_enable_active: nfc-enable-active-state { + pins = "gpio12"; + function = "gpio"; + drive-strength = <2>; + bias-pull-up; + }; + + nfc_firmware_active: nfc-firmware-active-state { + pins = "gpio62"; + function = "gpio"; + drive-strength = <2>; + bias-pull-up; + }; + tri_state_key_default: tri-state-key-default-state { pins = "gpio40", "gpio42", "gpio26"; function = "gpio"; -- 2.39.2