dt-bindings: Add devicetree bindings

Add snapshot of device tree bindings from keystone common kernel, branch
"android-mainline-keystone-qcom-release" at c4c12103f9c0 ("Snap for 9228065
from e32903b9a63bb558df8b803b076619c53c16baad to
android-mainline-keystone-qcom-release").

Change-Id: I7682079615cbd9f29340a5c1f2a1d84ec441a1f1
Signed-off-by: Melody Olvera <quic_molvera@quicinc.com>
This commit is contained in:
Melody Olvera
2023-04-03 14:38:11 -07:00
parent c334acf377
commit 6f18ce8026
4878 changed files with 424312 additions and 0 deletions

View File

@@ -0,0 +1,170 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/nfc/marvell,nci.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Marvell International Ltd. NCI NFC controller
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
properties:
compatible:
enum:
- marvell,nfc-i2c
- marvell,nfc-spi
- marvell,nfc-uart
hci-muxed:
type: boolean
description: |
Specifies that the chip is muxing NCI over HCI frames
interrupts:
maxItems: 1
reg:
maxItems: 1
reset-n-io:
$ref: "/schemas/types.yaml#/definitions/phandle-array"
maxItems: 1
description: |
Output GPIO pin used to reset the chip (active low)
i2c-int-falling:
type: boolean
description: |
For I2C type of connection. Specifies that the chip read event shall be
trigged on falling edge.
i2c-int-rising:
type: boolean
description: |
For I2C type of connection. Specifies that the chip read event shall be
trigged on rising edge.
break-control:
type: boolean
description: |
For UART type of connection. Specifies that the chip needs specific break
management.
flow-control:
type: boolean
description: |
For UART type of connection. Specifies that the chip is using RTS/CTS.
spi-cpha: true
spi-cpol: true
required:
- compatible
allOf:
- if:
properties:
compatible:
contains:
const: marvell,nfc-i2c
then:
properties:
break-control: false
flow-control: false
spi-cpha: false
spi-cpol: false
spi-max-frequency: false
required:
- reg
- if:
properties:
compatible:
contains:
const: marvell,nfc-spi
then:
$ref: /schemas/spi/spi-peripheral-props.yaml#
properties:
break-control: false
flow-control: false
i2c-int-falling: false
i2c-int-rising: false
required:
- reg
- if:
properties:
compatible:
contains:
const: marvell,nfc-uart
then:
properties:
i2c-int-falling: false
i2c-int-rising: false
interrupts: false
spi-cpha: false
spi-cpol: false
spi-max-frequency: false
reg: false
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
nfc@8 {
compatible = "marvell,nfc-i2c";
reg = <0x8>;
interrupt-parent = <&gpio3>;
interrupts = <21 IRQ_TYPE_EDGE_RISING>;
i2c-int-rising;
reset-n-io = <&gpio3 19 GPIO_ACTIVE_LOW>;
};
};
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
spi {
#address-cells = <1>;
#size-cells = <0>;
nfc@0 {
compatible = "marvell,nfc-spi";
reg = <0>;
spi-max-frequency = <3000000>;
spi-cpha;
spi-cpol;
interrupt-parent = <&gpio1>;
interrupts = <17 IRQ_TYPE_EDGE_RISING>;
reset-n-io = <&gpio3 19 GPIO_ACTIVE_LOW>;
};
};
- |
#include <dt-bindings/gpio/gpio.h>
uart {
nfc {
compatible = "marvell,nfc-uart";
reset-n-io = <&gpio3 16 GPIO_ACTIVE_LOW>;
hci-muxed;
flow-control;
};
};

View File

@@ -0,0 +1,60 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/nfc/nxp,nci.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: NXP Semiconductors NCI NFC controller
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
properties:
compatible:
oneOf:
- const: nxp,nxp-nci-i2c
- items:
- const: nxp,pn547
- const: nxp,nxp-nci-i2c
enable-gpios:
description: Output GPIO pin used for enabling/disabling the controller
firmware-gpios:
description: Output GPIO pin used to enter firmware download mode
interrupts:
maxItems: 1
reg:
maxItems: 1
required:
- compatible
- enable-gpios
- interrupts
- reg
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
nfc@29 {
compatible = "nxp,nxp-nci-i2c";
reg = <0x29>;
interrupt-parent = <&gpio1>;
interrupts = <29 IRQ_TYPE_LEVEL_HIGH>;
enable-gpios = <&gpio0 30 GPIO_ACTIVE_HIGH>;
firmware-gpios = <&gpio0 31 GPIO_ACTIVE_HIGH>;
};
};

View File

@@ -0,0 +1,65 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/nfc/nxp,pn532.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: NXP Semiconductors PN532 NFC controller
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
properties:
compatible:
oneOf:
- const: nxp,pn532
- description: Deprecated bindings
enum:
- nxp,pn532-i2c
- nxp,pn533-i2c
deprecated: true
interrupts:
description: Required if connected via I2C
maxItems: 1
reg:
description: Required if connected via I2C
maxItems: 1
required:
- compatible
dependencies:
interrupts: [ 'reg' ]
additionalProperties: false
examples:
# PN532 on I2C bus
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
nfc@24 {
compatible = "nxp,pn532";
reg = <0x24>;
interrupt-parent = <&gpio1>;
interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
};
};
# PN532 connected via UART
- |
serial@49042000 {
reg = <0x49042000 0x400>;
nfc {
compatible = "nxp,pn532";
};
};

View File

@@ -0,0 +1,58 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/nfc/nxp,pn544.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: NXP Semiconductors PN544 NFC Controller
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
properties:
compatible:
const: nxp,pn544-i2c
reg:
maxItems: 1
interrupts:
maxItems: 1
enable-gpios:
description: Output GPIO pin used for enabling/disabling the PN544
maxItems: 1
firmware-gpios:
description: Output GPIO pin used to enter firmware download mode
maxItems: 1
required:
- compatible
- reg
- interrupts
- enable-gpios
- firmware-gpios
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
nfc@28 {
compatible = "nxp,pn544-i2c";
reg = <0x28>;
interrupt-parent = <&gpio1>;
interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
enable-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
firmware-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
};
};

View File

@@ -0,0 +1,99 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/nfc/samsung,s3fwrn5.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Samsung S3FWRN5 NCI NFC Controller
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
properties:
compatible:
enum:
- samsung,s3fwrn5-i2c
- samsung,s3fwrn82
en-gpios:
maxItems: 1
description:
Output GPIO pin used for enabling/disabling the chip
interrupts:
maxItems: 1
reg:
maxItems: 1
clocks:
maxItems: 1
wake-gpios:
maxItems: 1
description:
Output GPIO pin used to enter firmware mode and sleep/wakeup control
s3fwrn5,en-gpios:
maxItems: 1
deprecated: true
description:
Use en-gpios
s3fwrn5,fw-gpios:
maxItems: 1
deprecated: true
description:
Use wake-gpios
additionalProperties: false
required:
- compatible
- en-gpios
- wake-gpios
allOf:
- if:
properties:
compatible:
contains:
const: samsung,s3fwrn5-i2c
then:
required:
- interrupts
- reg
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
i2c4 {
#address-cells = <1>;
#size-cells = <0>;
s3fwrn5@27 {
compatible = "samsung,s3fwrn5-i2c";
reg = <0x27>;
interrupt-parent = <&gpa1>;
interrupts = <3 IRQ_TYPE_EDGE_RISING>;
en-gpios = <&gpf1 4 GPIO_ACTIVE_HIGH>;
wake-gpios = <&gpj0 2 GPIO_ACTIVE_HIGH>;
clocks = <&rpmcc 20>;
};
};
# UART example on Raspberry Pi
- |
uart0 {
nfc {
compatible = "samsung,s3fwrn82";
en-gpios = <&gpio 20 GPIO_ACTIVE_HIGH>;
wake-gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
};
};

View File

@@ -0,0 +1,105 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/nfc/st,st-nci.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: STMicroelectronics ST NCI NFC controller
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
properties:
compatible:
enum:
- st,st21nfcb-i2c
- st,st21nfcb-spi
- st,st21nfcc-i2c
reset-gpios:
description: Output GPIO pin used for resetting the controller
ese-present:
type: boolean
description: |
Specifies that an ese is physically connected to the controller
interrupts:
maxItems: 1
reg:
maxItems: 1
uicc-present:
type: boolean
description: |
Specifies that the uicc swp signal can be physically connected to the
controller
required:
- compatible
- interrupts
- reg
- reset-gpios
if:
properties:
compatible:
contains:
enum:
- st,st21nfcb-i2c
- st,st21nfcc-i2c
then:
properties:
spi-max-frequency: false
else:
$ref: /schemas/spi/spi-peripheral-props.yaml#
required:
- spi-max-frequency
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
nfc@8 {
compatible = "st,st21nfcb-i2c";
reg = <0x08>;
interrupt-parent = <&gpio5>;
interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
reset-gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>;
ese-present;
uicc-present;
};
};
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
spi {
#address-cells = <1>;
#size-cells = <0>;
nfc@0 {
compatible = "st,st21nfcb-spi";
reg = <0>;
spi-max-frequency = <4000000>;
interrupt-parent = <&gpio5>;
interrupts = <2 IRQ_TYPE_EDGE_RISING>;
reset-gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>;
ese-present;
uicc-present;
};
};

View File

@@ -0,0 +1,64 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/nfc/st,st21nfca.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: STMicroelectronics SAS ST21NFCA NFC controller
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
properties:
compatible:
const: st,st21nfca-i2c
enable-gpios:
description: Output GPIO pin used for enabling/disabling the controller
ese-present:
type: boolean
description: |
Specifies that an ese is physically connected to the controller
interrupts:
maxItems: 1
reg:
maxItems: 1
uicc-present:
type: boolean
description: |
Specifies that the uicc swp signal can be physically connected to the
controller
required:
- compatible
- enable-gpios
- interrupts
- reg
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
nfc@1 {
compatible = "st,st21nfca-i2c";
reg = <0x1>;
interrupt-parent = <&gpio5>;
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
enable-gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>;
ese-present;
uicc-present;
};
};

View File

@@ -0,0 +1,58 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/nfc/st,st95hf.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: STMicroelectronics ST95HF NFC controller
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
properties:
compatible:
const: st,st95hf
enable-gpio:
description: Output GPIO pin used for enabling/disabling the controller
interrupts:
maxItems: 1
reg:
maxItems: 1
st95hfvin-supply:
description: ST95HF transceiver's Vin regulator supply
required:
- compatible
- enable-gpio
- interrupts
- reg
- spi-max-frequency
allOf:
- $ref: /schemas/spi/spi-peripheral-props.yaml#
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
spi {
#address-cells = <1>;
#size-cells = <0>;
nfc@0{
compatible = "st,st95hf";
reg = <0>;
spi-max-frequency = <1000000>;
enable-gpio = <&pio4 GPIO_ACTIVE_HIGH>;
interrupt-parent = <&pio0>;
interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
};
};

View File

@@ -0,0 +1,99 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/nfc/ti,trf7970a.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Texas Instruments TRF7970A RFID/NFC/15693 Transceiver
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
- Mark Greer <mgreer@animalcreek.com>
properties:
compatible:
const: ti,trf7970a
autosuspend-delay:
$ref: /schemas/types.yaml#/definitions/uint32
description: |
Specify autosuspend delay in milliseconds.
clock-frequency:
description: |
Set to specify that the input frequency to the trf7970a is 13560000Hz or
27120000Hz
en2-rf-quirk:
type: boolean
description: |
Specify that the trf7970a being used has the "EN2 RF" erratum
interrupts:
maxItems: 1
irq-status-read-quirk:
type: boolean
description: |
Specify that the trf7970a being used has the "IRQ Status Read" erratum
reg:
maxItems: 1
ti,enable-gpios:
minItems: 1
maxItems: 2
description: |
One or two GPIO entries used for 'EN' and 'EN2' pins on the TRF7970A. EN2
is optional.
vdd-io-supply:
description: |
Regulator specifying voltage for VDD-IO
vin-supply:
description: |
Regulator for supply voltage to VIN pin
required:
- compatible
- interrupts
- reg
- spi-max-frequency
- ti,enable-gpios
- vin-supply
allOf:
- $ref: /schemas/spi/spi-peripheral-props.yaml#
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
nfc@0 {
compatible = "ti,trf7970a";
reg = <0>;
pinctrl-names = "default";
pinctrl-0 = <&trf7970a_default>;
spi-max-frequency = <2000000>;
interrupt-parent = <&gpio2>;
interrupts = <14 0>;
ti,enable-gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>,
<&gpio2 5 GPIO_ACTIVE_HIGH>;
vin-supply = <&ldo3_reg>;
vdd-io-supply = <&ldo2_reg>;
autosuspend-delay = <30000>;
irq-status-read-quirk;
en2-rf-quirk;
clock-frequency = <27120000>;
};
};