Commit 0499220d authored by Rob Herring's avatar Rob Herring

dt-bindings: Add missing array size constraints

DT properties which can have multiple entries need to specify what the
entries are and define how many entries there can be. In the case of
only a single entry, just 'maxItems: 1' is sufficient.

Add the missing entry constraints. These were found with a modified
meta-schema. Unfortunately, there are a few cases where the size
constraints are not defined such as common bindings, so the meta-schema
can't be part of the normal checks.

Cc: Jens Axboe <axboe@kernel.dk>
Cc: Stephen Boyd <sboyd@kernel.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: MyungJoo Ham <myungjoo.ham@samsung.com>
Cc: Chanwoo Choi <cw00.choi@samsung.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Cc: Jonathan Cameron <jic23@kernel.org>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: Chen-Yu Tsai <wens@csie.org>
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Sebastian Reichel <sre@kernel.org>
Cc: Ohad Ben-Cohen <ohad@wizery.com>
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: default avatarSebastian Reichel <sre@kernel.org>
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> #for-iio
Acked-by: default avatarChanwoo Choi <cw00.choi@samsung.com>
Reviewed-by: default avatarSuman Anna <s-anna@ti.com>
Acked-by: default avatarPaul Cercueil <paul@crapouillou.net>
Acked-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
Acked-by: default avatarBartosz Golaszewski <bgolaszewski@baylibre.com>
Reviewed-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20210104230253.2805217-1-robh@kernel.orgSigned-off-by: default avatarRob Herring <robh@kernel.org>
parent ca880a15
......@@ -61,6 +61,7 @@ properties:
maxItems: 8
calxeda,sgpio-gpio:
maxItems: 3
description: |
phandle-gpio bank, bit offset, and default on or off, which indicates
that the driver supports SGPIO indicator lights using the indicated
......
......@@ -22,6 +22,7 @@ properties:
const: canaan,k210-clk
clocks:
maxItems: 1
description:
Phandle of the SoC 26MHz fixed-rate oscillator clock.
......
......@@ -60,6 +60,7 @@ properties:
Phandle of the I2C controller used for DDC EDID probing
hpd-gpios:
maxItems: 1
description: >
The GPIO pin for the HDMI hotplug detect (if it doesn't appear
as an interrupt/status bit in the HDMI controller itself)
......
......@@ -37,6 +37,7 @@ properties:
Phandle of the I2C controller used for DDC EDID probing
hpd-gpios:
maxItems: 1
description: >
The GPIO pin for the HDMI hotplug detect (if it doesn't appear
as an interrupt/status bit in the HDMI controller itself)
......
......@@ -30,6 +30,7 @@ properties:
power supply for LCM (1.8V)
dcdc-en-gpios:
maxItems: 1
description: |
phandle of the gpio for power ic line
Power IC supply enable, High active
......
......@@ -37,7 +37,8 @@ properties:
reset-gpios: true
'mantix,tp-rstn-gpios':
mantix,tp-rstn-gpios:
maxItems: 1
description: second reset line that triggers DSI config load
backlight: true
......
......@@ -30,6 +30,7 @@ properties:
panel. The novatek,nt36672a compatible shall always be provided as a fallback.
reset-gpios:
maxItems: 1
description: phandle of gpio for reset line - This should be 8mA, gpio
can be configured using mux, pinctrl, pinctrl-names (active high)
......
......@@ -21,7 +21,7 @@ properties:
- fsl,imx8mp-dsp
reg:
description: Should contain register location and length
maxItems: 1
clocks:
items:
......
......@@ -39,8 +39,7 @@ properties:
- const: atmel,at25
reg:
description:
Chip select number.
maxItems: 1
spi-max-frequency: true
......
......@@ -19,6 +19,7 @@ properties:
const: nxp,ptn5150
int-gpios:
maxItems: 1
deprecated: true
description:
GPIO pin (input) connected to the PTN5150's INTB pin.
......@@ -31,6 +32,7 @@ properties:
maxItems: 1
vbus-gpios:
maxItems: 1
description:
GPIO pin (output) used to control VBUS. If skipped, no such control
takes place.
......
......@@ -81,6 +81,7 @@ properties:
const: 2
reset-gpios:
maxItems: 1
description:
GPIO specification for the RESET input. This is an active low signal to
the PCA953x. Not valid for Maxim MAX732x devices.
......
......@@ -40,6 +40,7 @@ properties:
ADC reference voltage supply
adi,sync-in-gpios:
maxItems: 1
description:
Enables synchronization of multiple devices that require simultaneous
sampling. A pulse is always required if the configuration is changed
......@@ -76,6 +77,7 @@ patternProperties:
properties:
reg:
maxItems: 1
description: |
The channel number.
......
......@@ -23,6 +23,7 @@ properties:
maxItems: 1
clocks:
maxItems: 1
description:
Input clock used to derive the sample clock. Expected to be the
SoC's APB clock.
......
......@@ -20,7 +20,7 @@ properties:
description: Power supply for the reference voltage
reg:
description: spi chipselect number according to the usual spi bindings
maxItems: 1
spi-max-frequency:
description: maximal spi bus frequency supported
......
......@@ -68,6 +68,7 @@ patternProperties:
properties:
reg:
maxItems: 1
description: |
ADC channel number.
See include/dt-bindings/iio/qcom,spmi-vadc.h
......
......@@ -41,6 +41,8 @@ properties:
maxItems: 2
clocks:
minItems: 1
maxItems: 2
description: |
Core can use up to two clocks, depending on part used:
- "adc" clock: for the analog circuitry, common to all ADCs.
......
......@@ -47,6 +47,7 @@ properties:
description: an optional 3x3 mounting rotation matrix.
reset-gpios:
maxItems: 1
description: |
an optional pin needed for AK09911 to set the reset state. This should
be usually active low
......
......@@ -25,6 +25,7 @@ properties:
maxItems: 1
reset-gpios:
maxItems: 1
description:
Active low signal to the AD5272 RESET input.
......
......@@ -29,6 +29,7 @@ properties:
description: touchscreen can be used as a wakeup source.
reset-gpios:
maxItems: 1
description: reset gpio the chip is connected to.
vcc33-supply:
......
......@@ -31,7 +31,7 @@ properties:
The 1st cell is hw interrupt number, the 2nd cell is channel index.
clocks:
description: ipg clock.
maxItems: 1
clock-names:
const: ipg
......
......@@ -36,6 +36,8 @@ properties:
Reference to a phandle of a hardware spinlock provider node.
interrupts:
minItems: 1
maxItems: 96
description:
Interrupts references to primary interrupt controller
......
......@@ -53,6 +53,7 @@ properties:
maxItems: 1
memory-region:
maxItems: 1
description:
CMA pool to use for buffers allocation instead of the default
CMA pool.
......
......@@ -40,6 +40,7 @@ properties:
Digital core voltage supply, 1.2 volts
reset-gpios:
maxItems: 1
description: |-
Reference to the GPIO connected to the xclr pin, if any.
Must be released (set high) after all supplies are applied.
......
......@@ -28,6 +28,8 @@ properties:
const: 1
ranges:
minItems: 1
maxItems: 4
description: |
Reflects the memory layout with four integer values per bank. Format:
<bank-number> 0 <parent address of bank> <size>
......
......@@ -15,6 +15,7 @@ properties:
const: "fsl,dpaa2-console"
reg:
maxItems: 1
description: A standard property. Specifies the region where the MCFBA
(MC firmware base address) register can be found.
......
......@@ -40,6 +40,7 @@ properties:
There is no card detection available; polling must be used.
cd-gpios:
maxItems: 1
description:
The card detection will be done using the GPIO provided.
......@@ -104,6 +105,7 @@ properties:
line. Not used in combination with eMMC or SDIO.
wp-gpios:
maxItems: 1
description:
GPIO to use for the write-protect detection.
......
......@@ -66,6 +66,7 @@ properties:
dma-coherent: true
clocks:
maxItems: 1
description: CPSW2G NUSS functional clock
clock-names:
......
......@@ -59,6 +59,7 @@ properties:
- const: cpts
clocks:
maxItems: 1
description: CPTS reference clock
clock-names:
......
......@@ -51,9 +51,11 @@ properties:
- const: usb2_reset
usb0_id_det-gpios:
maxItems: 1
description: GPIO to the USB OTG ID pin
usb0_vbus_det-gpios:
maxItems: 1
description: GPIO to the USB OTG VBUS detect pin
usb0_vbus_power-supply:
......
......@@ -50,9 +50,11 @@ properties:
- const: usb1_reset
usb0_id_det-gpios:
maxItems: 1
description: GPIO to the USB OTG ID pin
usb0_vbus_det-gpios:
maxItems: 1
description: GPIO to the USB OTG VBUS detect pin
usb0_vbus_power-supply:
......
......@@ -50,9 +50,11 @@ properties:
- const: usb3_reset
usb0_id_det-gpios:
maxItems: 1
description: GPIO to the USB OTG ID pin
usb0_vbus_det-gpios:
maxItems: 1
description: GPIO to the USB OTG VBUS detect pin
usb0_vbus_power-supply:
......
......@@ -45,9 +45,11 @@ properties:
- const: usb1_reset
usb0_id_det-gpios:
maxItems: 1
description: GPIO to the USB OTG ID pin
usb0_vbus_det-gpios:
maxItems: 1
description: GPIO to the USB OTG VBUS detect pin
usb0_vbus_power-supply:
......
......@@ -54,9 +54,11 @@ properties:
- const: usb2_reset
usb0_id_det-gpios:
maxItems: 1
description: GPIO to the USB OTG ID pin
usb0_vbus_det-gpios:
maxItems: 1
description: GPIO to the USB OTG VBUS detect pin
usb0_vbus_power-supply:
......
......@@ -50,9 +50,11 @@ properties:
- const: usb1_reset
usb0_id_det-gpios:
maxItems: 1
description: GPIO to the USB OTG ID pin
usb0_vbus_det-gpios:
maxItems: 1
description: GPIO to the USB OTG VBUS detect pin
usb0_vbus_power-supply:
......
......@@ -56,9 +56,11 @@ properties:
- const: usb2_reset
usb0_id_det-gpios:
maxItems: 1
description: GPIO to the USB OTG ID pin
usb0_vbus_det-gpios:
maxItems: 1
description: GPIO to the USB OTG VBUS detect pin
usb0_vbus_power-supply:
......
......@@ -62,9 +62,11 @@ properties:
- const: usb3_reset
usb0_id_det-gpios:
maxItems: 1
description: GPIO to the USB OTG ID pin
usb0_vbus_det-gpios:
maxItems: 1
description: GPIO to the USB OTG VBUS detect pin
usb0_vbus_power-supply:
......
......@@ -56,9 +56,11 @@ properties:
- const: usb2_reset
usb0_id_det-gpios:
maxItems: 1
description: GPIO to the USB OTG ID pin
usb0_vbus_det-gpios:
maxItems: 1
description: GPIO to the USB OTG VBUS detect pin
usb0_vbus_power-supply:
......
......@@ -42,9 +42,11 @@ properties:
const: usb0_reset
usb0_id_det-gpios:
maxItems: 1
description: GPIO to the USB OTG ID pin
usb0_vbus_det-gpios:
maxItems: 1
description: GPIO to the USB OTG VBUS detect pin
usb0_vbus_power-supply:
......
......@@ -22,7 +22,8 @@ properties:
clocks:
anyOf:
- description: Main PHY Clock
- maxItems: 1
description: Main PHY Clock
- items:
- description: Main PHY clock
......@@ -39,18 +40,14 @@ properties:
- const: hsic_480M
resets:
anyOf:
- description: Normal USB PHY reset
- items:
minItems: 1
items:
- description: Normal USB PHY reset
- description: HSIC Reset
reset-names:
oneOf:
- const: phy
- items:
minItems: 1
items:
- const: phy
- const: hsic
......
......@@ -20,7 +20,7 @@ properties:
- socionext,uniphier-pxs3-ahci-phy
reg:
description: PHY register region (offset and length)
maxItems: 1
"#phy-cells":
const: 0
......
......@@ -21,7 +21,7 @@ properties:
- socionext,uniphier-pxs3-pcie-phy
reg:
description: PHY register region (offset and length)
maxItems: 1
"#phy-cells":
const: 0
......
......@@ -24,7 +24,7 @@ properties:
- socionext,uniphier-pxs3-usb3-hsphy
reg:
description: PHY register region (offset and length)
maxItems: 1
"#phy-cells":
const: 0
......
......@@ -25,7 +25,7 @@ properties:
- socionext,uniphier-pxs3-usb3-ssphy
reg:
description: PHY register region (offset and length)
maxItems: 1
"#phy-cells":
const: 0
......
......@@ -55,7 +55,7 @@ properties:
- ti,am654-phy-gmii-sel
reg:
description: Address and length of the register set for the device
maxItems: 1
'#phy-cells': true
......
......@@ -23,8 +23,7 @@ properties:
compatible:
const: aspeed,ast2400-pinctrl
reg:
description: |
A hint for the memory regions associated with the pin-controller
maxItems: 2
patternProperties:
'^.*$':
......
......@@ -24,8 +24,8 @@ properties:
compatible:
const: aspeed,ast2500-pinctrl
reg:
description: |
A hint for the memory regions associated with the pin-controller
maxItems: 2
aspeed,external-nodes:
minItems: 2
maxItems: 2
......
......@@ -70,6 +70,7 @@ properties:
description: Enables bypass mode at boot time
interrupts:
maxItems: 1
description: |
Indicates that the device state has changed.
......
......@@ -44,7 +44,7 @@ properties:
- const: vpu
interrupts:
description: VPU hardware interrupt
maxItems: 1
required:
- compatible
......
......@@ -70,10 +70,13 @@ properties:
the firmware image.
clocks:
maxItems: 1
description: |
Main functional clock for the remote processor
resets:
minItems: 1
maxItems: 2
description: |
Reset handles for the remote processor
......
......@@ -63,6 +63,7 @@ properties:
next-level-cache: true
memory-region:
maxItems: 1
description: |
The reference to the reserved-memory for the L2 Loosely Integrated Memory region.
The reserved memory node should be defined as per the bindings in reserved-memory.txt.
......
......@@ -81,6 +81,8 @@ properties:
maxItems: 1
dmas:
minItems: 2
maxItems: 4
description:
Must contain a list of pairs of references to DMA specifiers, one for
transmission, and one for reception.
......
......@@ -120,6 +120,8 @@ properties:
maxItems: 1
dmas:
minItems: 2
maxItems: 4
description:
Must contain a list of pairs of references to DMA specifiers, one for
transmission, and one for reception.
......
......@@ -55,6 +55,8 @@ properties:
maxItems: 1
dmas:
minItems: 2
maxItems: 4
description:
Must contain a list of pairs of references to DMA specifiers, one for
transmission, and one for reception.
......
......@@ -55,6 +55,8 @@ properties:
maxItems: 1
dmas:
minItems: 2
maxItems: 4
description:
Must contain a list of pairs of references to DMA specifiers, one for
transmission, and one for reception.
......
......@@ -88,6 +88,7 @@ properties:
description: Phandle to the codec analog controls in the PRCM
allwinner,pa-gpios:
maxItems: 1
description: GPIO to enable the external amplifier
required:
......
......@@ -55,6 +55,7 @@ patternProperties:
maxItems: 1
reg:
maxItems: 1
description: dai link address.
cpu:
......
......@@ -62,12 +62,15 @@ properties:
description: Supply for the micbias on the headset mic
earpath-sel-gpios:
maxItems: 1
description: GPIO for switching between tv-out and mic paths
headset-detect-gpios:
maxItems: 1
description: GPIO for detection of headset insertion
headset-key-gpios:
maxItems: 1
description: GPIO for detection of headset key press
io-channels:
......
......@@ -53,9 +53,11 @@ properties:
description: Supply for the micbias on the Sub microphone
fm-sel-gpios:
maxItems: 1
description: GPIO pin for FM selection
lineout-sel-gpios:
maxItems: 1
description: GPIO pin for line out selection
required:
......
......@@ -36,10 +36,12 @@ properties:
I2C address of the device can be one of these 0x4c, 0x4d, 0x4e or 0x4f
shut-down-gpios:
maxItems: 1
description: GPIO used to control the state of the device.
deprecated: true
shutdown-gpios:
maxItems: 1
description: GPIO used to control the state of the device.
interrupts:
......
......@@ -27,9 +27,11 @@ properties:
I2C address of the device can be between 0x41 to 0x48.
reset-gpio:
maxItems: 1
description: GPIO used to reset the device.
shutdown-gpios:
maxItems: 1
description: GPIO used to control the state of the device.
interrupts:
......
......@@ -35,6 +35,7 @@ properties:
I2C addresss of the device can be one of these 0x4c, 0x4d, 0x4e or 0x4f
reset-gpios:
maxItems: 1
description: |
GPIO used for hardware reset.
......
......@@ -68,6 +68,8 @@ properties:
maxItems: 1
dmas:
minItems: 2
maxItems: 4
description:
Must contain a list of pairs of references to DMA specifiers, one for
transmission, and one for reception.
......
......@@ -35,6 +35,7 @@ properties:
maxItems: 1
clocks:
maxItems: 1
description:
A list of phandle and clock specifier pair that controls the single
SRAM clock.
......@@ -46,6 +47,7 @@ properties:
const: 1
ranges:
maxItems: 1
description:
Should translate from local addresses within the sram to bus addresses.
......
......@@ -22,6 +22,8 @@ properties:
maxItems: 1
interrupts:
minItems: 2
maxItems: 6
description:
List of timers interrupts
......
......@@ -18,7 +18,7 @@ properties:
- const: intel,ixp4xx-timer
reg:
description: Should contain registers location and length
maxItems: 1
interrupts:
minItems: 1
......
......@@ -39,7 +39,7 @@ properties:
maxItems: 1
phys:
description: PHY specifier for the OTG PHY
maxItems: 1
phy-names:
const: usb
......
......@@ -22,6 +22,8 @@ properties:
description: Interrupt for signals mirrored to out-gpios.
in-gpios:
minItems: 1
maxItems: 2
description: Array of one or two GPIO pins used for input signals.
brcm,in-functions:
......@@ -33,6 +35,7 @@ properties:
description: Array of enable and mask pairs, one per gpio in-gpios.
out-gpios:
maxItems: 1
description: Array of one GPIO pin used for output signals.
brcm,out-functions:
......
......@@ -83,7 +83,7 @@ properties:
Phandle of a companion.
phys:
description: PHY specifier for the USB PHY
maxItems: 1
phy-names:
const: usb
......
......@@ -71,7 +71,7 @@ properties:
Overrides the detected port count
phys:
description: PHY specifier for the USB PHY
maxItems: 1
phy-names:
const: usb
......
......@@ -40,7 +40,7 @@ properties:
- const: mc
phys:
description: PHY specifier for the USB PHY
maxItems: 1
usb-role-switch:
type: boolean
......
......@@ -68,6 +68,7 @@ properties:
Integer to use BUSWAIT register.
renesas,enable-gpio:
maxItems: 1
description: |
gpio specifier to check GPIO determining if USB function should be
enabled.
......
......@@ -15,13 +15,14 @@ properties:
- const: ti,j721e-usb
reg:
description: module registers
maxItems: 1
power-domains:
description:
PM domain provider node and an args specifier containing
the USB device id value. See,
Documentation/devicetree/bindings/soc/ti/sci-pm-domain.txt
maxItems: 1
clocks:
description: Clock phandles to usb2_refclk and lpm_clk
......
......@@ -43,12 +43,14 @@ properties:
maxItems: 2
power-domains:
maxItems: 1
description: Should contain a phandle to a PM domain provider node
and an args specifier containing the USB device id
value. This property is as per the binding,
Documentation/devicetree/bindings/soc/ti/sci-pm-domain.txt
phys:
maxItems: 1
description:
PHY specifier for the USB3.0 PHY. Some SoCs need the USB3.0 PHY
to be turned on before the controller.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment