Message ID | 20230307185942.1737867-1-soyer@irl.hu (mailing list archive) |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | [v2] arm64: dts: qcom: sdm845-oneplus-common: add PN553 NFC | expand |
On 7.03.2023 19:59, Gergo Koteles wrote: > 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@irl.hu> > --- Next time include a changelog below this --- line detailing what changed between revisions. Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org> Konrad > .../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";
On 2023. 03. 07. 20:02, Konrad Dybcio wrote: > > > On 7.03.2023 19:59, Gergo Koteles wrote: >> 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@irl.hu> >> --- > Next time include a changelog below this --- line detailing > what changed between revisions. > Okey. Thanks for the suggestion and the review. > Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org> > > Konrad >> .../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";
On 2023. 03. 07. 20:04, Gergo Koteles wrote: > On 2023. 03. 07. 20:02, Konrad Dybcio wrote: >> >> >> On 7.03.2023 19:59, Gergo Koteles wrote: >>> 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@irl.hu> >>> --- >> Next time include a changelog below this --- line detailing >> what changed between revisions. >> > Okey. Thanks for the suggestion and the review. > >> Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org> >> >> Konrad >>> .../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"; > Hi, Please disregard this patch. Although it can detect the tags and the tags type, the full readout does not work. I will send a new version when I figure out what's wrong. Thanks
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";
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@irl.hu> --- .../boot/dts/qcom/sdm845-oneplus-common.dtsi | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+)