[PATCH] ARM: dts: ux500: Add NFC to the Codina

Linus Walleij linus.walleij at linaro.org
Thu Apr 14 13:10:22 PDT 2022


This adds the PN544 NFC chip mounted on some of the Codina models
numbered GT-I8160P. The "P" at the end of the product number
indicates that an NFC chip is mounted.

Signed-off-by: Linus Walleij <linus.walleij at linaro.org>
---
 .../arm/boot/dts/ste-ux500-samsung-codina.dts | 31 ++++++++++++++++++-
 1 file changed, 30 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/ste-ux500-samsung-codina.dts b/arch/arm/boot/dts/ste-ux500-samsung-codina.dts
index e6ea63d23d26..3d8da98f16b2 100644
--- a/arch/arm/boot/dts/ste-ux500-samsung-codina.dts
+++ b/arch/arm/boot/dts/ste-ux500-samsung-codina.dts
@@ -307,7 +307,22 @@ i2c-gpio-1 {
 		#address-cells = <1>;
 		#size-cells = <0>;
 
-		/* TODO: add the NFC chip here */
+		nfc at 2b {
+			/* NXP NFC circuit PN544 C1 marked NXP 44501  */
+			compatible = "nxp,pn544-i2c";
+			/* IF0, IF1 high, gives I2C address 0x2B */
+			reg = <0x2b>;
+			clock-frequency = <400000>;
+			/* NFC IRQ on GPIO32 */
+			interrupt-parent = <&gpio1>;
+			interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
+			/* GPIO 31 */
+			firmware-gpios = <&gpio0 31 GPIO_ACTIVE_HIGH>;
+			/* GPIO88 */
+			enable-gpios = <&gpio2 24 GPIO_ACTIVE_HIGH>;
+			pinctrl-names = "default";
+			pinctrl-0 = <&pn544_codina_default>;
+		};
 	};
 
 	spi-gpio-0 {
@@ -850,6 +865,20 @@ codina_cfg1 {
 			};
 		};
 	};
+	nfc {
+		pn544_codina_default: pn544_codina {
+			/* Interrupt line */
+			codina_cfg1 {
+				pins = "GPIO32_V2";
+				ste,config = <&gpio_in_nopull>;
+			};
+			/* Enable and firmware GPIOs */
+			codina_cfg2 {
+				pins = "GPIO31_V3", "GPIO88_C4";
+				ste,config = <&gpio_out_lo>;
+			};
+		};
+	};
 	vibrator {
 		vibrator_default: vibrator_default {
 			codina_cfg1 {
-- 
2.35.1




More information about the linux-arm-kernel mailing list