From d2c758b49df1a85806c5c8db7d83197a8512671d Mon Sep 17 00:00:00 2001 From: Kumar Gala Date: Fri, 9 Aug 2019 08:41:02 -0500 Subject: [PATCH] dts: Add base gpio-controller to dts bindings Introduce a gpio.yaml that GPIO controller bindings should inherit from. gpio.yaml defines the properties "gpio-controller" and "#gpio-cells" which all gpio controllers should have. Signed-off-by: Kumar Gala --- dts/bindings/gpio/arm,cmsdk-gpio.yaml | 2 +- dts/bindings/gpio/atmel,sam-gpio.yaml | 2 +- dts/bindings/gpio/atmel,sam0-gpio.yaml | 2 +- dts/bindings/gpio/gpio-controller.yaml | 20 +++++++++++++++++++ dts/bindings/gpio/intel,apl-gpio.yaml | 2 +- dts/bindings/gpio/intel,qmsi-gpio.yaml | 2 +- dts/bindings/gpio/intel,qmsi-ss-gpio.yaml | 2 +- dts/bindings/gpio/microchip,xec-gpio.yaml | 2 +- dts/bindings/gpio/nordic,nrf-gpio.yaml | 2 +- dts/bindings/gpio/nxp,imx-gpio.yaml | 2 +- dts/bindings/gpio/nxp,kinetis-gpio.yaml | 2 +- dts/bindings/gpio/openisa,rv32m1-gpio.yaml | 2 +- dts/bindings/gpio/semtech,sx1509b-gpio.yaml | 2 +- dts/bindings/gpio/sifive,gpio0.yaml | 2 +- dts/bindings/gpio/silabs,efm32-gpio-port.yaml | 2 +- .../gpio/silabs,efr32mg12-gpio-port.yaml | 2 +- .../gpio/silabs,efr32xg1-gpio-port.yaml | 2 +- dts/bindings/gpio/snps,designware-gpio.yaml | 2 +- dts/bindings/gpio/st,stm32-gpio.yaml | 2 +- dts/bindings/gpio/ti,cc13xx-cc26xx-gpio.yaml | 2 +- dts/bindings/gpio/ti,cc2650-gpio.yaml | 2 +- dts/bindings/gpio/ti,cc32xx-gpio.yaml | 2 +- dts/bindings/gpio/ti,stellaris-gpio.yaml | 2 +- 23 files changed, 42 insertions(+), 22 deletions(-) create mode 100644 dts/bindings/gpio/gpio-controller.yaml diff --git a/dts/bindings/gpio/arm,cmsdk-gpio.yaml b/dts/bindings/gpio/arm,cmsdk-gpio.yaml index 853d16e062b..d41dc343e0a 100644 --- a/dts/bindings/gpio/arm,cmsdk-gpio.yaml +++ b/dts/bindings/gpio/arm,cmsdk-gpio.yaml @@ -4,7 +4,7 @@ description: > This binding gives a base representation of the ARM CMSDK GPIO inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/atmel,sam-gpio.yaml b/dts/bindings/gpio/atmel,sam-gpio.yaml index e8a2527317a..7c459f82502 100644 --- a/dts/bindings/gpio/atmel,sam-gpio.yaml +++ b/dts/bindings/gpio/atmel,sam-gpio.yaml @@ -4,7 +4,7 @@ description: > This is a representation of the SAM GPIO PORT nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/atmel,sam0-gpio.yaml b/dts/bindings/gpio/atmel,sam0-gpio.yaml index 2efd9c0314f..50d3ddeab48 100644 --- a/dts/bindings/gpio/atmel,sam0-gpio.yaml +++ b/dts/bindings/gpio/atmel,sam0-gpio.yaml @@ -4,7 +4,7 @@ description: > This is a representation of the SAM0 GPIO PORT nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/gpio-controller.yaml b/dts/bindings/gpio/gpio-controller.yaml new file mode 100644 index 00000000000..7ee33e24b50 --- /dev/null +++ b/dts/bindings/gpio/gpio-controller.yaml @@ -0,0 +1,20 @@ +# +# Copyright (c) 2019, Linaro Limited +# +# SPDX-License-Identifier: Apache-2.0 +# + +title: GPIO Controller Base Structure + +description: > + This binding gives the base structure for all GPIO Controller devices + +properties: + "gpio-controller": + type: boolean + category: required + description: Convey's this node is a GPIO controller + "#gpio-cells": + type: int + category: required + description: Number of items to expect in a GPIO specifier diff --git a/dts/bindings/gpio/intel,apl-gpio.yaml b/dts/bindings/gpio/intel,apl-gpio.yaml index be26ca2007c..8441ac1d25e 100644 --- a/dts/bindings/gpio/intel,apl-gpio.yaml +++ b/dts/bindings/gpio/intel,apl-gpio.yaml @@ -10,7 +10,7 @@ description: > This is a representation of the Intel Apollo Lake GPIO node inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/intel,qmsi-gpio.yaml b/dts/bindings/gpio/intel,qmsi-gpio.yaml index c9319baad50..1a529a5a9c5 100644 --- a/dts/bindings/gpio/intel,qmsi-gpio.yaml +++ b/dts/bindings/gpio/intel,qmsi-gpio.yaml @@ -10,7 +10,7 @@ description: > This is a representation of the Intel QMSI GPIO nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/intel,qmsi-ss-gpio.yaml b/dts/bindings/gpio/intel,qmsi-ss-gpio.yaml index 92452e364ed..711d6760780 100644 --- a/dts/bindings/gpio/intel,qmsi-ss-gpio.yaml +++ b/dts/bindings/gpio/intel,qmsi-ss-gpio.yaml @@ -10,7 +10,7 @@ description: > This is a representation of the Intel QMSI SS GPIO nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/microchip,xec-gpio.yaml b/dts/bindings/gpio/microchip,xec-gpio.yaml index 68b1d907e3d..85920fcf470 100644 --- a/dts/bindings/gpio/microchip,xec-gpio.yaml +++ b/dts/bindings/gpio/microchip,xec-gpio.yaml @@ -11,7 +11,7 @@ description: > This is a representation of the CEC/MEC GPIO nodes for Microchip inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/nordic,nrf-gpio.yaml b/dts/bindings/gpio/nordic,nrf-gpio.yaml index 6973c17fc5b..57467b8f192 100644 --- a/dts/bindings/gpio/nordic,nrf-gpio.yaml +++ b/dts/bindings/gpio/nordic,nrf-gpio.yaml @@ -10,7 +10,7 @@ description: > This is a representation of the NRF GPIO nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/nxp,imx-gpio.yaml b/dts/bindings/gpio/nxp,imx-gpio.yaml index 1c6e7d0cfe8..36370dede9e 100644 --- a/dts/bindings/gpio/nxp,imx-gpio.yaml +++ b/dts/bindings/gpio/nxp,imx-gpio.yaml @@ -10,7 +10,7 @@ description: > This is a representation of the i.MX GPIO nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/nxp,kinetis-gpio.yaml b/dts/bindings/gpio/nxp,kinetis-gpio.yaml index 77d7964a6e2..110e50a13b7 100644 --- a/dts/bindings/gpio/nxp,kinetis-gpio.yaml +++ b/dts/bindings/gpio/nxp,kinetis-gpio.yaml @@ -4,7 +4,7 @@ description: > This is a representation of the Kinetis GPIO nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/openisa,rv32m1-gpio.yaml b/dts/bindings/gpio/openisa,rv32m1-gpio.yaml index 00afd80c58a..817e438f870 100644 --- a/dts/bindings/gpio/openisa,rv32m1-gpio.yaml +++ b/dts/bindings/gpio/openisa,rv32m1-gpio.yaml @@ -4,7 +4,7 @@ description: > This is a representation of the OpenISA GPIO nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/semtech,sx1509b-gpio.yaml b/dts/bindings/gpio/semtech,sx1509b-gpio.yaml index 1b0b6be16e7..20234acb14b 100644 --- a/dts/bindings/gpio/semtech,sx1509b-gpio.yaml +++ b/dts/bindings/gpio/semtech,sx1509b-gpio.yaml @@ -10,7 +10,7 @@ description: > This is a representation of the SX1509B GPIO node inherits: - !include i2c-device.yaml + !include [i2c-device.yaml, gpio-controller.yaml] properties: compatible: diff --git a/dts/bindings/gpio/sifive,gpio0.yaml b/dts/bindings/gpio/sifive,gpio0.yaml index 200fbb99cd0..f3c358ff2f6 100644 --- a/dts/bindings/gpio/sifive,gpio0.yaml +++ b/dts/bindings/gpio/sifive,gpio0.yaml @@ -10,7 +10,7 @@ description: > This is a representation of the SiFive GPIO nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/silabs,efm32-gpio-port.yaml b/dts/bindings/gpio/silabs,efm32-gpio-port.yaml index cdf8109d2c4..14b15d33278 100644 --- a/dts/bindings/gpio/silabs,efm32-gpio-port.yaml +++ b/dts/bindings/gpio/silabs,efm32-gpio-port.yaml @@ -4,7 +4,7 @@ description: > This is a representation of the EFM32 GPIO Port nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/silabs,efr32mg12-gpio-port.yaml b/dts/bindings/gpio/silabs,efr32mg12-gpio-port.yaml index a4991c23dd4..e0b4e8dac79 100644 --- a/dts/bindings/gpio/silabs,efr32mg12-gpio-port.yaml +++ b/dts/bindings/gpio/silabs,efr32mg12-gpio-port.yaml @@ -4,7 +4,7 @@ description: > This is a representation of the EFR32MG GPIO Port nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/silabs,efr32xg1-gpio-port.yaml b/dts/bindings/gpio/silabs,efr32xg1-gpio-port.yaml index afce5ff4d82..17317561a7b 100644 --- a/dts/bindings/gpio/silabs,efr32xg1-gpio-port.yaml +++ b/dts/bindings/gpio/silabs,efr32xg1-gpio-port.yaml @@ -4,7 +4,7 @@ description: > This is a representation of the EFR32XG1 GPIO Port nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/snps,designware-gpio.yaml b/dts/bindings/gpio/snps,designware-gpio.yaml index eda89308e52..008d18ab764 100644 --- a/dts/bindings/gpio/snps,designware-gpio.yaml +++ b/dts/bindings/gpio/snps,designware-gpio.yaml @@ -10,7 +10,7 @@ description: > This is a representation of the Synopsys DesignWare gpio node inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/st,stm32-gpio.yaml b/dts/bindings/gpio/st,stm32-gpio.yaml index cd99942fbcd..2399f410237 100644 --- a/dts/bindings/gpio/st,stm32-gpio.yaml +++ b/dts/bindings/gpio/st,stm32-gpio.yaml @@ -10,7 +10,7 @@ description: > This is a representation of the STM32 GPIO nodes inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/ti,cc13xx-cc26xx-gpio.yaml b/dts/bindings/gpio/ti,cc13xx-cc26xx-gpio.yaml index 89b43937f29..265bf97e285 100644 --- a/dts/bindings/gpio/ti,cc13xx-cc26xx-gpio.yaml +++ b/dts/bindings/gpio/ti,cc13xx-cc26xx-gpio.yaml @@ -10,7 +10,7 @@ description: > This is a representation of the TI SimpleLink CC13xx / CC26xx GPIO node inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/ti,cc2650-gpio.yaml b/dts/bindings/gpio/ti,cc2650-gpio.yaml index dce49494eb8..899509ec8cf 100644 --- a/dts/bindings/gpio/ti,cc2650-gpio.yaml +++ b/dts/bindings/gpio/ti,cc2650-gpio.yaml @@ -5,7 +5,7 @@ description: > This is a representation of the TI CC2650 GPIO node inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/ti,cc32xx-gpio.yaml b/dts/bindings/gpio/ti,cc32xx-gpio.yaml index cb2ff3b98be..1d71fbc2065 100644 --- a/dts/bindings/gpio/ti,cc32xx-gpio.yaml +++ b/dts/bindings/gpio/ti,cc32xx-gpio.yaml @@ -5,7 +5,7 @@ description: > This is a representation of the TI CC32XX GPIO node inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: diff --git a/dts/bindings/gpio/ti,stellaris-gpio.yaml b/dts/bindings/gpio/ti,stellaris-gpio.yaml index a4c15796b03..8d813129337 100644 --- a/dts/bindings/gpio/ti,stellaris-gpio.yaml +++ b/dts/bindings/gpio/ti,stellaris-gpio.yaml @@ -5,7 +5,7 @@ description: > This is a representation of the TI Stellaris GPIO node inherits: - !include base.yaml + !include [gpio-controller.yaml, base.yaml] properties: compatible: