NFC: nfcmrvl: add i2c driver

This driver adds the support of I2C-based Marvell NFC controller.

Signed-off-by: Vincent Cuissard <cuissard@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
Vincent Cuissard
2015-10-26 10:27:41 +01:00
committed by Samuel Ortiz
parent 58d34aa677
commit b5b3e23e4c
8 changed files with 353 additions and 5 deletions

View File

@@ -1,7 +1,9 @@
* Marvell International Ltd. NCI NFC Controller
Required properties:
- compatible: Should be "mrvl,nfc-uart".
- compatible: Should be:
- "mrvl,nfc-uart" for UART devices
- "mrvl,nfc-i2c" for I2C devices
Optional SoC specific properties:
- pinctrl-names: Contains only one value - "default".
@@ -13,6 +15,12 @@ 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 {
@@ -27,3 +35,27 @@ Example (for ARM-based BeagleBoard Black with 88W8887 on UART5):
flow-control;
}
};
Example (for ARM-based BeagleBoard Black with 88W8887 on I2C1):
&i2c1 {
status = "okay";
clock-frequency = <400000>;
nfcmrvli2c0: i2c@1 {
compatible = "mrvl,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>;
};
};