NFC 4.4 pull request
This is the NFC pull request for 4.4. It's a bit bigger than usual, the 3 main culprits being: - A new driver for Intel's Fields Peak NCI chipset. In order to support this chipset we had to export a few NCI routines and extend the driver NCI ops to not only support proprietary commands but also core ones. - Support for vendor commands for both STM drivers, st-nci and st21nfca. Those vendor commands allow to run factory tests through the NFC netlink interface. - New i2c and SPI support for the Marvell driver, together with firmware download support for this driver's core. Besides that we also have: - A few file renames in the STM drivers, to keep the naming consistent between drivers. - Some improvements and fixes on the NCI HCI layer, mostly to properly reach a secure element over a legacy HCI link. - A few fixes for the s3fwrn5 and trf7970a drivers. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJWMGIaAAoJEIqAPN1PVmxKHjYP/3Q3Y4Vhvw3kTfDP3IlnAuH3 XjBMGKPLu72MmtSk9jFOr5VuC76YtJzwf+4nKGJybu619NPKfxXN7r83bpsZV1Bk +0cS1RpjIQh92a0ElvX1muCFhgH7ax7zeqQ+29OSpA33e67/DlUcwxiqzF15cwWC Bk0pUv1FxMoNi5ZkG1JrRqrhx/Yqo1dw2HrnMbKVgwLtLzODBuzoGVKfydTo0b1j hkl30DPF3AYMxnwIml3tM8zT96b1LtD0Xgs1yF8IdrIJ+6YLn/6tnw1rUxnE8Ovo JFtvtS0OKjGTNFr1NhueG0i5td8TR4MAJKHh0Lz9ISIFWtNtsVjFfGuAeWZcQ/n/ rQS7xOvzBCndNbe8PS9wBiNQAqLAH5/dzvKRwNboRttkpwIrNOgaBYj2LpuRzpfO p+ArwBryAorfxQVOIWl4knc59UsiPUKOK61uMTZ1sU7jCEvUNVChIm8EGRlMnpMQ ZFlBa2lqNdgz7ubKLofbnWLiCNY6r0E13MSLHZlJZX61IMjs13ojDeKMvitFBe+b 1hDwbSWxIRB8xKbcsIA9bPUnEc16Syywz/Q4iAsE8Gy6l5J41MhA/q2QaO9WSrPE Leah53l5EwQRd55WjJkCkIKZwvCjIerkESfAS0oprELIYXaxs/1PbVl6C7VYZA4K A5tYLw2vS+tTK4Mgi/ym =aw/h -----END PGP SIGNATURE----- Merge tag 'nfc-next-4.4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/nfc-next Samuel Ortiz says: ==================== NFC 4.4 pull request This is the NFC pull request for 4.4. It's a bit bigger than usual, the 3 main culprits being: - A new driver for Intel's Fields Peak NCI chipset. In order to support this chipset we had to export a few NCI routines and extend the driver NCI ops to not only support proprietary commands but also core ones. - Support for vendor commands for both STM drivers, st-nci and st21nfca. Those vendor commands allow to run factory tests through the NFC netlink interface. - New i2c and SPI support for the Marvell driver, together with firmware download support for this driver's core. Besides that we also have: - A few file renames in the STM drivers, to keep the naming consistent between drivers. - Some improvements and fixes on the NCI HCI layer, mostly to properly reach a secure element over a legacy HCI link. - A few fixes for the s3fwrn5 and trf7970a drivers. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
740215ddb5
74 changed files with 4379 additions and 480 deletions
|
@ -1,7 +1,10 @@
|
|||
* Marvell International Ltd. NCI NFC Controller
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "mrvl,nfc-uart".
|
||||
- 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".
|
||||
|
@ -13,13 +16,19 @@ 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 = "mrvl,nfc-uart";
|
||||
compatible = "marvell,nfc-uart";
|
||||
|
||||
reset-n-io = <&gpio3 16 0>;
|
||||
|
||||
|
@ -27,3 +36,51 @@ 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 = "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>;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -11,6 +11,10 @@ Required properties:
|
|||
Optional SoC Specific Properties:
|
||||
- pinctrl-names: Contains only one value - "default".
|
||||
- pintctrl-0: Specifies the pin control groups used for this controller.
|
||||
- ese-present: Specifies that an ese is physically connected to the nfc
|
||||
controller.
|
||||
- uicc-present: Specifies that the uicc swp signal can be physically
|
||||
connected to the nfc controller.
|
||||
|
||||
Example (for ARM-based BeagleBoard xM with ST21NFCB on I2C2):
|
||||
|
||||
|
@ -29,5 +33,8 @@ Example (for ARM-based BeagleBoard xM with ST21NFCB on I2C2):
|
|||
interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
||||
reset-gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
ese-present;
|
||||
uicc-present;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
Required properties:
|
||||
- compatible: Should be "st,st21nfcb-spi"
|
||||
- spi-max-frequency: Maximum SPI frequency (<= 10000000).
|
||||
- spi-max-frequency: Maximum SPI frequency (<= 4000000).
|
||||
- interrupt-parent: phandle for the interrupt gpio controller
|
||||
- interrupts: GPIO interrupt to which the chip is connected
|
||||
- reset-gpios: Output GPIO pin used to reset the ST21NFCB
|
||||
|
@ -10,6 +10,10 @@ Required properties:
|
|||
Optional SoC Specific Properties:
|
||||
- pinctrl-names: Contains only one value - "default".
|
||||
- pintctrl-0: Specifies the pin control groups used for this controller.
|
||||
- ese-present: Specifies that an ese is physically connected to the nfc
|
||||
controller.
|
||||
- uicc-present: Specifies that the uicc swp signal can be physically
|
||||
connected to the nfc controller.
|
||||
|
||||
Example (for ARM-based BeagleBoard xM with ST21NFCB on SPI4):
|
||||
|
||||
|
@ -27,5 +31,8 @@ Example (for ARM-based BeagleBoard xM with ST21NFCB on SPI4):
|
|||
interrupts = <2 IRQ_TYPE_EDGE_RISING>;
|
||||
|
||||
reset-gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
ese-present;
|
||||
uicc-present;
|
||||
};
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue