#include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/input/input.h>
 #include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
 
 / {
        aliases {
                        pinctrl-0 = <&tkey_default>;
                };
        };
+
+       i2c-nfc {
+               compatible = "i2c-gpio";
+               sda-gpios = <&msmgpio 0 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
+               scl-gpios = <&msmgpio 1 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&nfc_i2c_default>;
+
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               nfc@27 {
+                       compatible = "samsung,s3fwrn5-i2c";
+                       reg = <0x27>;
+
+                       interrupt-parent = <&msmgpio>;
+                       interrupts = <21 IRQ_TYPE_EDGE_RISING>;
+
+                       en-gpios = <&msmgpio 20 GPIO_ACTIVE_HIGH>;
+                       wake-gpios = <&msmgpio 49 GPIO_ACTIVE_HIGH>;
+
+                       clocks = <&rpmcc RPM_SMD_BB_CLK2_PIN>;
+
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&nfc_default &nfc_clk_req>;
+               };
+       };
 };
 
 &blsp_i2c2 {
                bias-disable;
        };
 
+       nfc_default: nfc-default {
+               pins = "gpio20", "gpio49";
+               function = "gpio";
+
+               drive-strength = <2>;
+               bias-disable;
+
+               irq {
+                       pins = "gpio21";
+                       function = "gpio";
+
+                       drive-strength = <2>;
+                       bias-pull-down;
+               };
+       };
+
+       nfc_i2c_default: nfc-i2c-default {
+               pins = "gpio0", "gpio1";
+               function = "gpio";
+
+               drive-strength = <2>;
+               bias-disable;
+       };
+
        tkey_default: tkey-default {
                pins = "gpio98";
                function = "gpio";
                bias-disable;
        };
 };
+
+&pm8916_gpios {
+       nfc_clk_req: nfc-clk-req {
+               pins = "gpio2";
+               function = "func1";
+
+               input-enable;
+               bias-disable;
+               power-source = <PM8916_GPIO_L2>;
+       };
+};