These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / Documentation / devicetree / bindings / net / nfc / nfcmrvl.txt
diff --git a/kernel/Documentation/devicetree/bindings/net/nfc/nfcmrvl.txt b/kernel/Documentation/devicetree/bindings/net/nfc/nfcmrvl.txt
new file mode 100644 (file)
index 0000000..76df917
--- /dev/null
@@ -0,0 +1,86 @@
+* Marvell International Ltd. NCI NFC Controller
+
+Required properties:
+- compatible: Should be:
+  - "marvell,nfc-uart" or "mrvl,nfc-uart" for UART devices
+  - "marvell,nfc-i2c" for I2C devices
+  - "marvell,nfc-spi" for SPI devices
+
+Optional SoC specific properties:
+- pinctrl-names: Contains only one value - "default".
+- pintctrl-0: Specifies the pin control groups used for this controller.
+- reset-n-io: Output GPIO pin used to reset the chip (active low).
+- hci-muxed: Specifies that the chip is muxing NCI over HCI frames.
+
+Optional UART-based chip specific properties:
+- flow-control: Specifies that the chip is using RTS/CTS.
+- break-control: Specifies that the chip needs specific break management.
+
+Optional I2C-based chip specific properties:
+- i2c-int-falling: Specifies that the chip read event shall be trigged on
+                  falling edge.
+- i2c-int-rising: Specifies that the chip read event shall be trigged on
+                 rising edge.
+
+Example (for ARM-based BeagleBoard Black with 88W8887 on UART5):
+
+&uart5 {
+       status = "okay";
+
+       nfcmrvluart: nfcmrvluart@5 {
+               compatible = "marvell,nfc-uart";
+
+               reset-n-io = <&gpio3 16 0>;
+
+               hci-muxed;
+               flow-control;
+        }
+};
+
+
+Example (for ARM-based BeagleBoard Black with 88W8887 on I2C1):
+
+&i2c1 {
+       status = "okay";
+       clock-frequency = <400000>;
+
+       nfcmrvli2c0: i2c@1 {
+               compatible = "marvell,nfc-i2c";
+
+               reg = <0x8>;
+
+               /* I2C INT configuration */
+               interrupt-parent = <&gpio3>;
+               interrupts = <21 0>;
+
+               /* I2C INT trigger configuration */
+               i2c-int-rising;
+
+               /* Reset IO */
+               reset-n-io = <&gpio3 19 0>;
+       };
+};
+
+
+Example (for ARM-based BeagleBoard Black on SPI0):
+
+&spi0 {
+
+       mrvlnfcspi0: spi@0 {
+               compatible = "marvell,nfc-spi";
+
+               reg = <0>;
+
+               /* SPI Bus configuration */
+               spi-max-frequency = <3000000>;
+               spi-cpha;
+               spi-cpol;
+
+               /* SPI INT configuration */
+               interrupt-parent = <&gpio1>;
+               interrupts = <17 0>;
+
+               /* Reset IO */
+                       reset-n-io = <&gpio3 19 0>;
+       };
+};