2022-05-19 22:14:12

by Rob Herring

[permalink] [raw]
Subject: [PATCH] dt-bindings: Fix properties without any type

Now that the schema tools can extract type information for all
properties (in order to decode dtb files), finding properties missing
any type definition is fairly trivial though not yet automated.

Fix the various property schemas which are missing a type. Most of these
tend to be device specific properties which don't have a vendor prefix.
A vendor prefix is how we normally ensure a type is defined.

Signed-off-by: Rob Herring <[email protected]>
---
.../arm/hisilicon/controller/hip04-bootwrapper.yaml | 5 +++--
.../bindings/display/bridge/toshiba,tc358768.yaml | 1 +
.../devicetree/bindings/display/panel/panel-timing.yaml | 5 +++++
.../bindings/display/panel/raydium,rm67191.yaml | 1 +
.../bindings/display/panel/samsung,s6e8aa0.yaml | 1 +
.../devicetree/bindings/gpio/fairchild,74hc595.yaml | 1 +
.../devicetree/bindings/input/google,cros-ec-keyb.yaml | 1 +
.../devicetree/bindings/input/matrix-keymap.yaml | 4 ++++
Documentation/devicetree/bindings/media/i2c/adv7604.yaml | 3 ++-
Documentation/devicetree/bindings/mux/reg-mux.yaml | 8 ++++++--
Documentation/devicetree/bindings/net/cdns,macb.yaml | 1 +
Documentation/devicetree/bindings/net/ingenic,mac.yaml | 1 +
.../devicetree/bindings/net/ti,davinci-mdio.yaml | 1 +
.../devicetree/bindings/net/wireless/ti,wlcore.yaml | 2 ++
.../devicetree/bindings/pci/snps,dw-pcie-ep.yaml | 6 ++++--
Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml | 2 ++
.../devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml | 2 ++
Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml | 1 +
.../devicetree/bindings/power/supply/battery.yaml | 7 ++++++-
.../devicetree/bindings/power/supply/charger-manager.yaml | 1 +
Documentation/devicetree/bindings/rng/st,stm32-rng.yaml | 1 +
Documentation/devicetree/bindings/serial/8250.yaml | 1 +
.../devicetree/bindings/sound/audio-graph-card2.yaml | 3 +++
.../devicetree/bindings/sound/imx-audio-hdmi.yaml | 3 +++
Documentation/devicetree/bindings/usb/smsc,usb3503.yaml | 1 +
25 files changed, 55 insertions(+), 8 deletions(-)

diff --git a/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml b/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
index 7378159e61df..483caf0ce25b 100644
--- a/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
+++ b/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
@@ -17,14 +17,15 @@ properties:
- const: hisilicon,hip04-bootwrapper

boot-method:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
description: |
Address and size of boot method.
[0]: bootwrapper physical address
[1]: bootwrapper size
[2]: relocation physical address
[3]: relocation size
- minItems: 1
- maxItems: 2
+ minItems: 2
+ maxItems: 4

required:
- compatible
diff --git a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
index 3bd670b8e5cd..0b6f5bef120f 100644
--- a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
+++ b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
@@ -58,6 +58,7 @@ properties:

properties:
data-lines:
+ $ref: /schemas/types.yaml#/definitions/uint32
enum: [ 16, 18, 24 ]

port@1:
diff --git a/Documentation/devicetree/bindings/display/panel/panel-timing.yaml b/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
index 7749de95ee40..229e3b36ee29 100644
--- a/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
+++ b/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
@@ -146,6 +146,7 @@ properties:
Horizontal sync pulse.
0 selects active low, 1 selects active high.
If omitted then it is not used by the hardware
+ $ref: /schemas/types.yaml#/definitions/uint32
enum: [0, 1]

vsync-active:
@@ -153,6 +154,7 @@ properties:
Vertical sync pulse.
0 selects active low, 1 selects active high.
If omitted then it is not used by the hardware
+ $ref: /schemas/types.yaml#/definitions/uint32
enum: [0, 1]

de-active:
@@ -160,6 +162,7 @@ properties:
Data enable.
0 selects active low, 1 selects active high.
If omitted then it is not used by the hardware
+ $ref: /schemas/types.yaml#/definitions/uint32
enum: [0, 1]

pixelclk-active:
@@ -169,6 +172,7 @@ properties:
sample data on rising edge.
Use 1 to drive pixel data on rising edge and
sample data on falling edge
+ $ref: /schemas/types.yaml#/definitions/uint32
enum: [0, 1]

syncclk-active:
@@ -179,6 +183,7 @@ properties:
sample sync on rising edge of pixel clock.
Use 1 to drive sync on rising edge and
sample sync on falling edge of pixel clock
+ $ref: /schemas/types.yaml#/definitions/uint32
enum: [0, 1]

interlaced:
diff --git a/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml b/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
index 745dd247c409..617aa8c8c03a 100644
--- a/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
+++ b/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
@@ -24,6 +24,7 @@ properties:

dsi-lanes:
description: Number of DSI lanes to be used must be <3> or <4>
+ $ref: /schemas/types.yaml#/definitions/uint32
enum: [3, 4]

v3p3-supply:
diff --git a/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml b/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
index ca959451557e..1cdc91b3439f 100644
--- a/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
+++ b/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
@@ -36,6 +36,7 @@ properties:

init-delay:
description: delay after initialization sequence [ms]
+ $ref: /schemas/types.yaml#/definitions/uint32

panel-width-mm:
description: physical panel width [mm]
diff --git a/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml b/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
index 5fe19fa5f67c..a99e7842ca17 100644
--- a/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
+++ b/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
@@ -26,6 +26,7 @@ properties:
const: 2

registers-number:
+ $ref: /schemas/types.yaml#/definitions/uint32
description: Number of daisy-chained shift registers

enable-gpios:
diff --git a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
index e8f137abb03c..aa61fe64be63 100644
--- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
+++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
@@ -31,6 +31,7 @@ properties:
type: boolean

function-row-physmap:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
minItems: 1
maxItems: 15
description: |
diff --git a/Documentation/devicetree/bindings/input/matrix-keymap.yaml b/Documentation/devicetree/bindings/input/matrix-keymap.yaml
index 6699d5e32dca..9f703bb51e12 100644
--- a/Documentation/devicetree/bindings/input/matrix-keymap.yaml
+++ b/Documentation/devicetree/bindings/input/matrix-keymap.yaml
@@ -27,6 +27,10 @@ properties:
column and linux key-code. The 32-bit big endian cell is packed as:
row << 24 | column << 16 | key-code

+ linux,no-autorepeat:
+ type: boolean
+ description: Disable keyrepeat
+
keypad,num-rows:
$ref: /schemas/types.yaml#/definitions/uint32
description: Number of row lines connected to the keypad controller.
diff --git a/Documentation/devicetree/bindings/media/i2c/adv7604.yaml b/Documentation/devicetree/bindings/media/i2c/adv7604.yaml
index c19d8391e2d5..7589d377c686 100644
--- a/Documentation/devicetree/bindings/media/i2c/adv7604.yaml
+++ b/Documentation/devicetree/bindings/media/i2c/adv7604.yaml
@@ -60,7 +60,8 @@ properties:
enables hot-plug detection.

default-input:
- maxItems: 1
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum: [ 0, 1 ]
description:
Select which input is selected after reset.

diff --git a/Documentation/devicetree/bindings/mux/reg-mux.yaml b/Documentation/devicetree/bindings/mux/reg-mux.yaml
index 60d5746eb39d..e2f6b11f1254 100644
--- a/Documentation/devicetree/bindings/mux/reg-mux.yaml
+++ b/Documentation/devicetree/bindings/mux/reg-mux.yaml
@@ -25,8 +25,12 @@ properties:
const: 1

mux-reg-masks:
- description: an array of register offset and pre-shifted bitfield mask
- pairs, each describing a single mux control.
+ $ref: /schemas/types.yaml#/definitions/uint32-matrix
+ items:
+ items:
+ - description: register offset
+ - description: pre-shifted bitfield mask
+ description: Each entry describes a single mux control.

idle-states: true

diff --git a/Documentation/devicetree/bindings/net/cdns,macb.yaml b/Documentation/devicetree/bindings/net/cdns,macb.yaml
index 6cd3d853dcba..59fe2789fa44 100644
--- a/Documentation/devicetree/bindings/net/cdns,macb.yaml
+++ b/Documentation/devicetree/bindings/net/cdns,macb.yaml
@@ -129,6 +129,7 @@ patternProperties:
reset-gpios: true

magic-packet:
+ type: boolean
description:
Indicates that the hardware supports waking up via magic packet.

diff --git a/Documentation/devicetree/bindings/net/ingenic,mac.yaml b/Documentation/devicetree/bindings/net/ingenic,mac.yaml
index 8e52b2e683b8..93b3e991d209 100644
--- a/Documentation/devicetree/bindings/net/ingenic,mac.yaml
+++ b/Documentation/devicetree/bindings/net/ingenic,mac.yaml
@@ -37,6 +37,7 @@ properties:
const: stmmaceth

mode-reg:
+ $ref: /schemas/types.yaml#/definitions/phandle
description: An extra syscon register that control ethernet interface and timing delay

rx-clk-delay-ps:
diff --git a/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml b/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml
index 6f44f9516c36..a339202c5e8e 100644
--- a/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml
+++ b/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml
@@ -34,6 +34,7 @@ properties:
maxItems: 1

bus_freq:
+ $ref: /schemas/types.yaml#/definitions/uint32
maximum: 2500000
description: MDIO Bus frequency

diff --git a/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml b/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml
index 8dd164d10290..d68bb2ec1f7e 100644
--- a/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml
+++ b/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml
@@ -54,9 +54,11 @@ properties:


ref-clock-frequency:
+ $ref: /schemas/types.yaml#/definitions/uint32
description: Reference clock frequency.

tcxo-clock-frequency:
+ $ref: /schemas/types.yaml#/definitions/uint32
description: TCXO clock frequency.

clock-xtal:
diff --git a/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml b/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
index e59059ab5be0..b78535040f04 100644
--- a/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
+++ b/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
@@ -55,13 +55,15 @@ properties:
Translation Unit) registers.

num-ib-windows:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ maximum: 256
description: number of inbound address translation windows
- maxItems: 1
deprecated: true

num-ob-windows:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ maximum: 256
description: number of outbound address translation windows
- maxItems: 1
deprecated: true

required:
diff --git a/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml b/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
index a5345c494744..c90e5e2d25f6 100644
--- a/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
+++ b/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
@@ -68,6 +68,8 @@ properties:
Translation Unit) registers.

num-viewport:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ maximum: 256
description: |
number of view ports configured in hardware. If a platform
does not specify it, the driver autodetects it.
diff --git a/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml b/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml
index 53e963e090f2..533b4cfe33d2 100644
--- a/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml
@@ -120,6 +120,7 @@ patternProperties:
input-schmitt-disable: true

input-polarity-invert:
+ type: boolean
description:
Enable or disable pin input polarity inversion.

@@ -132,6 +133,7 @@ patternProperties:
output-low: true

output-polarity-invert:
+ type: boolean
description:
Enable or disable pin output polarity inversion.

diff --git a/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml b/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml
index 3301fa0c2653..301db7daf870 100644
--- a/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml
+++ b/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml
@@ -51,6 +51,7 @@ properties:
supported by the CPR power domain.

acc-syscon:
+ $ref: /schemas/types.yaml#/definitions/phandle
description: A phandle to the syscon used for writing ACC settings.

nvmem-cells:
diff --git a/Documentation/devicetree/bindings/power/supply/battery.yaml b/Documentation/devicetree/bindings/power/supply/battery.yaml
index d56ac484fec5..491488e7b970 100644
--- a/Documentation/devicetree/bindings/power/supply/battery.yaml
+++ b/Documentation/devicetree/bindings/power/supply/battery.yaml
@@ -85,8 +85,13 @@ properties:
description: battery factory internal resistance

resistance-temp-table:
+ $ref: /schemas/types.yaml#/definitions/uint32-matrix
+ items:
+ items:
+ - description: the temperature in degree Celsius
+ - description: battery internal resistance percent
description: |
- An array providing the temperature in degree Celsius
+ A table providing the temperature in degree Celsius
and corresponding battery internal resistance percent, which is used to
look up the resistance percent according to current temperature to get an
accurate batterty internal resistance in different temperatures.
diff --git a/Documentation/devicetree/bindings/power/supply/charger-manager.yaml b/Documentation/devicetree/bindings/power/supply/charger-manager.yaml
index c863cfa67865..fbb2204769aa 100644
--- a/Documentation/devicetree/bindings/power/supply/charger-manager.yaml
+++ b/Documentation/devicetree/bindings/power/supply/charger-manager.yaml
@@ -36,6 +36,7 @@ properties:

cm-poll-mode:
description: polling mode
+ $ref: /schemas/types.yaml#/definitions/uint32
default: 0
enum:
- 0 # disabled
diff --git a/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml b/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml
index 9a6e4eaf4d3c..fcd86f822a9c 100644
--- a/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml
+++ b/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml
@@ -27,6 +27,7 @@ properties:
maxItems: 1

clock-error-detect:
+ type: boolean
description: If set enable the clock detection management

required:
diff --git a/Documentation/devicetree/bindings/serial/8250.yaml b/Documentation/devicetree/bindings/serial/8250.yaml
index 3bab2f27b970..5f6b113d378f 100644
--- a/Documentation/devicetree/bindings/serial/8250.yaml
+++ b/Documentation/devicetree/bindings/serial/8250.yaml
@@ -138,6 +138,7 @@ properties:
description: The current active speed of the UART.

reg-offset:
+ $ref: /schemas/types.yaml#/definitions/uint32
description: |
Offset to apply to the mapbase from the start of the registers.

diff --git a/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml b/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml
index f7e94b1e0e4b..7416067c945e 100644
--- a/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml
+++ b/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml
@@ -24,10 +24,13 @@ properties:
connection's sink, the second being the connection's source.
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
multi:
+ type: object
description: Multi-CPU/Codec node
dpcm:
+ type: object
description: DPCM node
codec2codec:
+ type: object
description: Codec to Codec node

required:
diff --git a/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml b/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml
index d5474f83ac2c..e7e7bb65c366 100644
--- a/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml
+++ b/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml
@@ -20,9 +20,11 @@ properties:
description: User specified audio sound card name

audio-cpu:
+ $ref: /schemas/types.yaml#/definitions/phandle
description: The phandle of an CPU DAI controller

hdmi-out:
+ type: boolean
description: |
This is a boolean property. If present, the transmitting function
of HDMI will be enabled, indicating there's a physical HDMI out
@@ -30,6 +32,7 @@ properties:
block, such as an HDMI encoder or display-controller.

hdmi-in:
+ type: boolean
description: |
This is a boolean property. If present, the receiving function of
HDMI will be enabled, indicating there is a physical HDMI in
diff --git a/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml b/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
index b9e219829801..321b6f166197 100644
--- a/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
+++ b/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
@@ -45,6 +45,7 @@ properties:
property if all ports have to be enabled.

initial-mode:
+ $ref: /schemas/types.yaml#/definitions/uint32
enum: [1, 2]
description: >
Specifies initial mode. 1 for Hub mode, 2 for standby mode.
--
2.34.1



2022-05-20 13:25:29

by Peter Rosin

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: Fix properties without any type



2022-05-19 at 23:14, Rob Herring wrote:
> Now that the schema tools can extract type information for all
> properties (in order to decode dtb files), finding properties missing
> any type definition is fairly trivial though not yet automated.
>
> Fix the various property schemas which are missing a type. Most of these
> tend to be device specific properties which don't have a vendor prefix.
> A vendor prefix is how we normally ensure a type is defined.
>
> Signed-off-by: Rob Herring <[email protected]>
> ---
> .../arm/hisilicon/controller/hip04-bootwrapper.yaml | 5 +++--
> .../bindings/display/bridge/toshiba,tc358768.yaml | 1 +
> .../devicetree/bindings/display/panel/panel-timing.yaml | 5 +++++
> .../bindings/display/panel/raydium,rm67191.yaml | 1 +
> .../bindings/display/panel/samsung,s6e8aa0.yaml | 1 +
> .../devicetree/bindings/gpio/fairchild,74hc595.yaml | 1 +
> .../devicetree/bindings/input/google,cros-ec-keyb.yaml | 1 +
> .../devicetree/bindings/input/matrix-keymap.yaml | 4 ++++
> Documentation/devicetree/bindings/media/i2c/adv7604.yaml | 3 ++-
> Documentation/devicetree/bindings/mux/reg-mux.yaml | 8 ++++++--
> Documentation/devicetree/bindings/net/cdns,macb.yaml | 1 +
> Documentation/devicetree/bindings/net/ingenic,mac.yaml | 1 +
> .../devicetree/bindings/net/ti,davinci-mdio.yaml | 1 +
> .../devicetree/bindings/net/wireless/ti,wlcore.yaml | 2 ++
> .../devicetree/bindings/pci/snps,dw-pcie-ep.yaml | 6 ++++--
> Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml | 2 ++
> .../devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml | 2 ++
> Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml | 1 +
> .../devicetree/bindings/power/supply/battery.yaml | 7 ++++++-
> .../devicetree/bindings/power/supply/charger-manager.yaml | 1 +
> Documentation/devicetree/bindings/rng/st,stm32-rng.yaml | 1 +
> Documentation/devicetree/bindings/serial/8250.yaml | 1 +
> .../devicetree/bindings/sound/audio-graph-card2.yaml | 3 +++
> .../devicetree/bindings/sound/imx-audio-hdmi.yaml | 3 +++
> Documentation/devicetree/bindings/usb/smsc,usb3503.yaml | 1 +
> 25 files changed, 55 insertions(+), 8 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml b/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> index 7378159e61df..483caf0ce25b 100644
> --- a/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> +++ b/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> @@ -17,14 +17,15 @@ properties:
> - const: hisilicon,hip04-bootwrapper
>
> boot-method:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> description: |
> Address and size of boot method.
> [0]: bootwrapper physical address
> [1]: bootwrapper size
> [2]: relocation physical address
> [3]: relocation size
> - minItems: 1
> - maxItems: 2
> + minItems: 2
> + maxItems: 4
>
> required:
> - compatible
> diff --git a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> index 3bd670b8e5cd..0b6f5bef120f 100644
> --- a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> +++ b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> @@ -58,6 +58,7 @@ properties:
>
> properties:
> data-lines:
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [ 16, 18, 24 ]
>
> port@1:
> diff --git a/Documentation/devicetree/bindings/display/panel/panel-timing.yaml b/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> index 7749de95ee40..229e3b36ee29 100644
> --- a/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> @@ -146,6 +146,7 @@ properties:
> Horizontal sync pulse.
> 0 selects active low, 1 selects active high.
> If omitted then it is not used by the hardware
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> vsync-active:
> @@ -153,6 +154,7 @@ properties:
> Vertical sync pulse.
> 0 selects active low, 1 selects active high.
> If omitted then it is not used by the hardware
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> de-active:
> @@ -160,6 +162,7 @@ properties:
> Data enable.
> 0 selects active low, 1 selects active high.
> If omitted then it is not used by the hardware
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> pixelclk-active:
> @@ -169,6 +172,7 @@ properties:
> sample data on rising edge.
> Use 1 to drive pixel data on rising edge and
> sample data on falling edge
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> syncclk-active:
> @@ -179,6 +183,7 @@ properties:
> sample sync on rising edge of pixel clock.
> Use 1 to drive sync on rising edge and
> sample sync on falling edge of pixel clock
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> interlaced:
> diff --git a/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml b/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> index 745dd247c409..617aa8c8c03a 100644
> --- a/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> @@ -24,6 +24,7 @@ properties:
>
> dsi-lanes:
> description: Number of DSI lanes to be used must be <3> or <4>
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [3, 4]
>
> v3p3-supply:
> diff --git a/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml b/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> index ca959451557e..1cdc91b3439f 100644
> --- a/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> @@ -36,6 +36,7 @@ properties:
>
> init-delay:
> description: delay after initialization sequence [ms]
> + $ref: /schemas/types.yaml#/definitions/uint32
>
> panel-width-mm:
> description: physical panel width [mm]
> diff --git a/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml b/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> index 5fe19fa5f67c..a99e7842ca17 100644
> --- a/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> +++ b/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> @@ -26,6 +26,7 @@ properties:
> const: 2
>
> registers-number:
> + $ref: /schemas/types.yaml#/definitions/uint32
> description: Number of daisy-chained shift registers
>
> enable-gpios:
> diff --git a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> index e8f137abb03c..aa61fe64be63 100644
> --- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> +++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> @@ -31,6 +31,7 @@ properties:
> type: boolean
>
> function-row-physmap:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> minItems: 1
> maxItems: 15
> description: |
> diff --git a/Documentation/devicetree/bindings/input/matrix-keymap.yaml b/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> index 6699d5e32dca..9f703bb51e12 100644
> --- a/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> +++ b/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> @@ -27,6 +27,10 @@ properties:
> column and linux key-code. The 32-bit big endian cell is packed as:
> row << 24 | column << 16 | key-code
>
> + linux,no-autorepeat:
> + type: boolean
> + description: Disable keyrepeat
> +
> keypad,num-rows:
> $ref: /schemas/types.yaml#/definitions/uint32
> description: Number of row lines connected to the keypad controller.
> diff --git a/Documentation/devicetree/bindings/media/i2c/adv7604.yaml b/Documentation/devicetree/bindings/media/i2c/adv7604.yaml
> index c19d8391e2d5..7589d377c686 100644
> --- a/Documentation/devicetree/bindings/media/i2c/adv7604.yaml
> +++ b/Documentation/devicetree/bindings/media/i2c/adv7604.yaml
> @@ -60,7 +60,8 @@ properties:
> enables hot-plug detection.
>
> default-input:
> - maxItems: 1
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum: [ 0, 1 ]
> description:
> Select which input is selected after reset.
>
> diff --git a/Documentation/devicetree/bindings/mux/reg-mux.yaml b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> index 60d5746eb39d..e2f6b11f1254 100644
> --- a/Documentation/devicetree/bindings/mux/reg-mux.yaml
> +++ b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> @@ -25,8 +25,12 @@ properties:
> const: 1
>
> mux-reg-masks:
> - description: an array of register offset and pre-shifted bitfield mask
> - pairs, each describing a single mux control.
> + $ref: /schemas/types.yaml#/definitions/uint32-matrix
> + items:
> + items:
> + - description: register offset
> + - description: pre-shifted bitfield mask
> + description: Each entry describes a single mux control.

You have left out that we are dealing with "pairs". Is that implicit?

But why not explicit, so maybe like this?

+ description: Each entry pair describes a single mux control.

Either way, for reg-mux.yaml

Acked-by: Peter Rosin <[email protected]>

Cheers,
Peter

>
> idle-states: true
>
> diff --git a/Documentation/devicetree/bindings/net/cdns,macb.yaml b/Documentation/devicetree/bindings/net/cdns,macb.yaml
> index 6cd3d853dcba..59fe2789fa44 100644
> --- a/Documentation/devicetree/bindings/net/cdns,macb.yaml
> +++ b/Documentation/devicetree/bindings/net/cdns,macb.yaml
> @@ -129,6 +129,7 @@ patternProperties:
> reset-gpios: true
>
> magic-packet:
> + type: boolean
> description:
> Indicates that the hardware supports waking up via magic packet.
>
> diff --git a/Documentation/devicetree/bindings/net/ingenic,mac.yaml b/Documentation/devicetree/bindings/net/ingenic,mac.yaml
> index 8e52b2e683b8..93b3e991d209 100644
> --- a/Documentation/devicetree/bindings/net/ingenic,mac.yaml
> +++ b/Documentation/devicetree/bindings/net/ingenic,mac.yaml
> @@ -37,6 +37,7 @@ properties:
> const: stmmaceth
>
> mode-reg:
> + $ref: /schemas/types.yaml#/definitions/phandle
> description: An extra syscon register that control ethernet interface and timing delay
>
> rx-clk-delay-ps:
> diff --git a/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml b/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml
> index 6f44f9516c36..a339202c5e8e 100644
> --- a/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml
> +++ b/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml
> @@ -34,6 +34,7 @@ properties:
> maxItems: 1
>
> bus_freq:
> + $ref: /schemas/types.yaml#/definitions/uint32
> maximum: 2500000
> description: MDIO Bus frequency
>
> diff --git a/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml b/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml
> index 8dd164d10290..d68bb2ec1f7e 100644
> --- a/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml
> +++ b/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml
> @@ -54,9 +54,11 @@ properties:
>
>
> ref-clock-frequency:
> + $ref: /schemas/types.yaml#/definitions/uint32
> description: Reference clock frequency.
>
> tcxo-clock-frequency:
> + $ref: /schemas/types.yaml#/definitions/uint32
> description: TCXO clock frequency.
>
> clock-xtal:
> diff --git a/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml b/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
> index e59059ab5be0..b78535040f04 100644
> --- a/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
> +++ b/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
> @@ -55,13 +55,15 @@ properties:
> Translation Unit) registers.
>
> num-ib-windows:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + maximum: 256
> description: number of inbound address translation windows
> - maxItems: 1
> deprecated: true
>
> num-ob-windows:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + maximum: 256
> description: number of outbound address translation windows
> - maxItems: 1
> deprecated: true
>
> required:
> diff --git a/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml b/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
> index a5345c494744..c90e5e2d25f6 100644
> --- a/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
> +++ b/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
> @@ -68,6 +68,8 @@ properties:
> Translation Unit) registers.
>
> num-viewport:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + maximum: 256
> description: |
> number of view ports configured in hardware. If a platform
> does not specify it, the driver autodetects it.
> diff --git a/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml b/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml
> index 53e963e090f2..533b4cfe33d2 100644
> --- a/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml
> +++ b/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml
> @@ -120,6 +120,7 @@ patternProperties:
> input-schmitt-disable: true
>
> input-polarity-invert:
> + type: boolean
> description:
> Enable or disable pin input polarity inversion.
>
> @@ -132,6 +133,7 @@ patternProperties:
> output-low: true
>
> output-polarity-invert:
> + type: boolean
> description:
> Enable or disable pin output polarity inversion.
>
> diff --git a/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml b/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml
> index 3301fa0c2653..301db7daf870 100644
> --- a/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml
> +++ b/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml
> @@ -51,6 +51,7 @@ properties:
> supported by the CPR power domain.
>
> acc-syscon:
> + $ref: /schemas/types.yaml#/definitions/phandle
> description: A phandle to the syscon used for writing ACC settings.
>
> nvmem-cells:
> diff --git a/Documentation/devicetree/bindings/power/supply/battery.yaml b/Documentation/devicetree/bindings/power/supply/battery.yaml
> index d56ac484fec5..491488e7b970 100644
> --- a/Documentation/devicetree/bindings/power/supply/battery.yaml
> +++ b/Documentation/devicetree/bindings/power/supply/battery.yaml
> @@ -85,8 +85,13 @@ properties:
> description: battery factory internal resistance
>
> resistance-temp-table:
> + $ref: /schemas/types.yaml#/definitions/uint32-matrix
> + items:
> + items:
> + - description: the temperature in degree Celsius
> + - description: battery internal resistance percent
> description: |
> - An array providing the temperature in degree Celsius
> + A table providing the temperature in degree Celsius
> and corresponding battery internal resistance percent, which is used to
> look up the resistance percent according to current temperature to get an
> accurate batterty internal resistance in different temperatures.
> diff --git a/Documentation/devicetree/bindings/power/supply/charger-manager.yaml b/Documentation/devicetree/bindings/power/supply/charger-manager.yaml
> index c863cfa67865..fbb2204769aa 100644
> --- a/Documentation/devicetree/bindings/power/supply/charger-manager.yaml
> +++ b/Documentation/devicetree/bindings/power/supply/charger-manager.yaml
> @@ -36,6 +36,7 @@ properties:
>
> cm-poll-mode:
> description: polling mode
> + $ref: /schemas/types.yaml#/definitions/uint32
> default: 0
> enum:
> - 0 # disabled
> diff --git a/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml b/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml
> index 9a6e4eaf4d3c..fcd86f822a9c 100644
> --- a/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml
> +++ b/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml
> @@ -27,6 +27,7 @@ properties:
> maxItems: 1
>
> clock-error-detect:
> + type: boolean
> description: If set enable the clock detection management
>
> required:
> diff --git a/Documentation/devicetree/bindings/serial/8250.yaml b/Documentation/devicetree/bindings/serial/8250.yaml
> index 3bab2f27b970..5f6b113d378f 100644
> --- a/Documentation/devicetree/bindings/serial/8250.yaml
> +++ b/Documentation/devicetree/bindings/serial/8250.yaml
> @@ -138,6 +138,7 @@ properties:
> description: The current active speed of the UART.
>
> reg-offset:
> + $ref: /schemas/types.yaml#/definitions/uint32
> description: |
> Offset to apply to the mapbase from the start of the registers.
>
> diff --git a/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml b/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml
> index f7e94b1e0e4b..7416067c945e 100644
> --- a/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml
> +++ b/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml
> @@ -24,10 +24,13 @@ properties:
> connection's sink, the second being the connection's source.
> $ref: /schemas/types.yaml#/definitions/non-unique-string-array
> multi:
> + type: object
> description: Multi-CPU/Codec node
> dpcm:
> + type: object
> description: DPCM node
> codec2codec:
> + type: object
> description: Codec to Codec node
>
> required:
> diff --git a/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml b/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml
> index d5474f83ac2c..e7e7bb65c366 100644
> --- a/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml
> +++ b/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml
> @@ -20,9 +20,11 @@ properties:
> description: User specified audio sound card name
>
> audio-cpu:
> + $ref: /schemas/types.yaml#/definitions/phandle
> description: The phandle of an CPU DAI controller
>
> hdmi-out:
> + type: boolean
> description: |
> This is a boolean property. If present, the transmitting function
> of HDMI will be enabled, indicating there's a physical HDMI out
> @@ -30,6 +32,7 @@ properties:
> block, such as an HDMI encoder or display-controller.
>
> hdmi-in:
> + type: boolean
> description: |
> This is a boolean property. If present, the receiving function of
> HDMI will be enabled, indicating there is a physical HDMI in
> diff --git a/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml b/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
> index b9e219829801..321b6f166197 100644
> --- a/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
> +++ b/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
> @@ -45,6 +45,7 @@ properties:
> property if all ports have to be enabled.
>
> initial-mode:
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [1, 2]
> description: >
> Specifies initial mode. 1 for Hub mode, 2 for standby mode.

2022-05-20 15:23:32

by Bartosz Golaszewski

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: Fix properties without any type

On Thu, May 19, 2022 at 11:14 PM Rob Herring <[email protected]> wrote:
>
> Now that the schema tools can extract type information for all
> properties (in order to decode dtb files), finding properties missing
> any type definition is fairly trivial though not yet automated.
>
> Fix the various property schemas which are missing a type. Most of these
> tend to be device specific properties which don't have a vendor prefix.
> A vendor prefix is how we normally ensure a type is defined.
>
> Signed-off-by: Rob Herring <[email protected]>
> ---
> .../arm/hisilicon/controller/hip04-bootwrapper.yaml | 5 +++--
> .../bindings/display/bridge/toshiba,tc358768.yaml | 1 +
> .../devicetree/bindings/display/panel/panel-timing.yaml | 5 +++++
> .../bindings/display/panel/raydium,rm67191.yaml | 1 +
> .../bindings/display/panel/samsung,s6e8aa0.yaml | 1 +
> .../devicetree/bindings/gpio/fairchild,74hc595.yaml | 1 +
> .../devicetree/bindings/input/google,cros-ec-keyb.yaml | 1 +
> .../devicetree/bindings/input/matrix-keymap.yaml | 4 ++++
> Documentation/devicetree/bindings/media/i2c/adv7604.yaml | 3 ++-
> Documentation/devicetree/bindings/mux/reg-mux.yaml | 8 ++++++--
> Documentation/devicetree/bindings/net/cdns,macb.yaml | 1 +
> Documentation/devicetree/bindings/net/ingenic,mac.yaml | 1 +
> .../devicetree/bindings/net/ti,davinci-mdio.yaml | 1 +
> .../devicetree/bindings/net/wireless/ti,wlcore.yaml | 2 ++
> .../devicetree/bindings/pci/snps,dw-pcie-ep.yaml | 6 ++++--
> Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml | 2 ++
> .../devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml | 2 ++
> Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml | 1 +
> .../devicetree/bindings/power/supply/battery.yaml | 7 ++++++-
> .../devicetree/bindings/power/supply/charger-manager.yaml | 1 +
> Documentation/devicetree/bindings/rng/st,stm32-rng.yaml | 1 +
> Documentation/devicetree/bindings/serial/8250.yaml | 1 +
> .../devicetree/bindings/sound/audio-graph-card2.yaml | 3 +++
> .../devicetree/bindings/sound/imx-audio-hdmi.yaml | 3 +++
> Documentation/devicetree/bindings/usb/smsc,usb3503.yaml | 1 +
> 25 files changed, 55 insertions(+), 8 deletions(-)
>

For GPIO:

Acked-by: Bartosz Golaszewski <[email protected]>

2022-05-21 03:28:53

by Mark Brown

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: Fix properties without any type

On Thu, May 19, 2022 at 04:14:11PM -0500, Rob Herring wrote:
> Now that the schema tools can extract type information for all
> properties (in order to decode dtb files), finding properties missing
> any type definition is fairly trivial though not yet automated.
>
> Fix the various property schemas which are missing a type. Most of these
> tend to be device specific properties which don't have a vendor prefix.
> A vendor prefix is how we normally ensure a type is defined.

Acked-by: Mark Brown <[email protected]>


Attachments:
(No filename) (532.00 B)
signature.asc (499.00 B)
Download all attachments

2022-05-21 03:52:55

by Sam Ravnborg

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: Fix properties without any type

On Thu, May 19, 2022 at 04:14:11PM -0500, Rob Herring wrote:
> Now that the schema tools can extract type information for all
> properties (in order to decode dtb files), finding properties missing
> any type definition is fairly trivial though not yet automated.
>
> Fix the various property schemas which are missing a type. Most of these
> tend to be device specific properties which don't have a vendor prefix.
> A vendor prefix is how we normally ensure a type is defined.
>
> Signed-off-by: Rob Herring <[email protected]>
Acked-by: Sam Ravnborg <[email protected]> # for everything in .../bindings/display/

2022-05-23 06:11:41

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: Fix properties without any type

On 19/05/2022 23:14, Rob Herring wrote:
> Now that the schema tools can extract type information for all
> properties (in order to decode dtb files), finding properties missing
> any type definition is fairly trivial though not yet automated.
>
> Fix the various property schemas which are missing a type. Most of these
> tend to be device specific properties which don't have a vendor prefix.
> A vendor prefix is how we normally ensure a type is defined.
>
> Signed-off-by: Rob Herring <[email protected]>
> ---
> .../arm/hisilicon/controller/hip04-bootwrapper.yaml | 5 +++--
> .../bindings/display/bridge/toshiba,tc358768.yaml | 1 +
> .../devicetree/bindings/display/panel/panel-timing.yaml | 5 +++++
> .../bindings/display/panel/raydium,rm67191.yaml | 1 +
> .../bindings/display/panel/samsung,s6e8aa0.yaml | 1 +
> .../devicetree/bindings/gpio/fairchild,74hc595.yaml | 1 +
> .../devicetree/bindings/input/google,cros-ec-keyb.yaml | 1 +
> .../devicetree/bindings/input/matrix-keymap.yaml | 4 ++++
> Documentation/devicetree/bindings/media/i2c/adv7604.yaml | 3 ++-
> Documentation/devicetree/bindings/mux/reg-mux.yaml | 8 ++++++--
> Documentation/devicetree/bindings/net/cdns,macb.yaml | 1 +
> Documentation/devicetree/bindings/net/ingenic,mac.yaml | 1 +
> .../devicetree/bindings/net/ti,davinci-mdio.yaml | 1 +
> .../devicetree/bindings/net/wireless/ti,wlcore.yaml | 2 ++
> .../devicetree/bindings/pci/snps,dw-pcie-ep.yaml | 6 ++++--
> Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml | 2 ++
> .../devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml | 2 ++
> Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml | 1 +
> .../devicetree/bindings/power/supply/battery.yaml | 7 ++++++-
> .../devicetree/bindings/power/supply/charger-manager.yaml | 1 +
> Documentation/devicetree/bindings/rng/st,stm32-rng.yaml | 1 +
> Documentation/devicetree/bindings/serial/8250.yaml | 1 +
> .../devicetree/bindings/sound/audio-graph-card2.yaml | 3 +++
> .../devicetree/bindings/sound/imx-audio-hdmi.yaml | 3 +++
> Documentation/devicetree/bindings/usb/smsc,usb3503.yaml | 1 +
> 25 files changed, 55 insertions(+), 8 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml b/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> index 7378159e61df..483caf0ce25b 100644
> --- a/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> +++ b/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> @@ -17,14 +17,15 @@ properties:
> - const: hisilicon,hip04-bootwrapper
>
> boot-method:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> description: |
> Address and size of boot method.
> [0]: bootwrapper physical address
> [1]: bootwrapper size
> [2]: relocation physical address
> [3]: relocation size
> - minItems: 1
> - maxItems: 2
> + minItems: 2
> + maxItems: 4
>
> required:
> - compatible
> diff --git a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> index 3bd670b8e5cd..0b6f5bef120f 100644
> --- a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> +++ b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> @@ -58,6 +58,7 @@ properties:
>
> properties:
> data-lines:
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [ 16, 18, 24 ]
>
> port@1:
> diff --git a/Documentation/devicetree/bindings/display/panel/panel-timing.yaml b/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> index 7749de95ee40..229e3b36ee29 100644
> --- a/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> @@ -146,6 +146,7 @@ properties:
> Horizontal sync pulse.
> 0 selects active low, 1 selects active high.
> If omitted then it is not used by the hardware
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> vsync-active:
> @@ -153,6 +154,7 @@ properties:
> Vertical sync pulse.
> 0 selects active low, 1 selects active high.
> If omitted then it is not used by the hardware
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> de-active:
> @@ -160,6 +162,7 @@ properties:
> Data enable.
> 0 selects active low, 1 selects active high.
> If omitted then it is not used by the hardware
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> pixelclk-active:
> @@ -169,6 +172,7 @@ properties:
> sample data on rising edge.
> Use 1 to drive pixel data on rising edge and
> sample data on falling edge
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> syncclk-active:
> @@ -179,6 +183,7 @@ properties:
> sample sync on rising edge of pixel clock.
> Use 1 to drive sync on rising edge and
> sample sync on falling edge of pixel clock
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> interlaced:
> diff --git a/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml b/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> index 745dd247c409..617aa8c8c03a 100644
> --- a/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> @@ -24,6 +24,7 @@ properties:
>
> dsi-lanes:
> description: Number of DSI lanes to be used must be <3> or <4>
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [3, 4]
>
> v3p3-supply:
> diff --git a/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml b/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> index ca959451557e..1cdc91b3439f 100644
> --- a/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> @@ -36,6 +36,7 @@ properties:
>
> init-delay:
> description: delay after initialization sequence [ms]
> + $ref: /schemas/types.yaml#/definitions/uint32
>
> panel-width-mm:
> description: physical panel width [mm]
> diff --git a/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml b/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> index 5fe19fa5f67c..a99e7842ca17 100644
> --- a/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> +++ b/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> @@ -26,6 +26,7 @@ properties:
> const: 2
>
> registers-number:
> + $ref: /schemas/types.yaml#/definitions/uint32
> description: Number of daisy-chained shift registers
>
> enable-gpios:
> diff --git a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> index e8f137abb03c..aa61fe64be63 100644
> --- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> +++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> @@ -31,6 +31,7 @@ properties:
> type: boolean
>
> function-row-physmap:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> minItems: 1
> maxItems: 15
> description: |
> diff --git a/Documentation/devicetree/bindings/input/matrix-keymap.yaml b/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> index 6699d5e32dca..9f703bb51e12 100644
> --- a/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> +++ b/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> @@ -27,6 +27,10 @@ properties:
> column and linux key-code. The 32-bit big endian cell is packed as:
> row << 24 | column << 16 | key-code
>
> + linux,no-autorepeat:
> + type: boolean
> + description: Disable keyrepeat

This should be rather a separate patch - it's documenting a missing
property, not only a type.

Best regards,
Krzysztof

2022-05-23 08:22:43

by Sebastian Reichel

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: Fix properties without any type

Hi,

On Thu, May 19, 2022 at 04:14:11PM -0500, Rob Herring wrote:
> Now that the schema tools can extract type information for all
> properties (in order to decode dtb files), finding properties missing
> any type definition is fairly trivial though not yet automated.
>
> Fix the various property schemas which are missing a type. Most of these
> tend to be device specific properties which don't have a vendor prefix.
> A vendor prefix is how we normally ensure a type is defined.
>
> Signed-off-by: Rob Herring <[email protected]>
> ---
> .../arm/hisilicon/controller/hip04-bootwrapper.yaml | 5 +++--
> .../bindings/display/bridge/toshiba,tc358768.yaml | 1 +
> .../devicetree/bindings/display/panel/panel-timing.yaml | 5 +++++
> .../bindings/display/panel/raydium,rm67191.yaml | 1 +
> .../bindings/display/panel/samsung,s6e8aa0.yaml | 1 +
> .../devicetree/bindings/gpio/fairchild,74hc595.yaml | 1 +
> .../devicetree/bindings/input/google,cros-ec-keyb.yaml | 1 +
> .../devicetree/bindings/input/matrix-keymap.yaml | 4 ++++
> Documentation/devicetree/bindings/media/i2c/adv7604.yaml | 3 ++-
> Documentation/devicetree/bindings/mux/reg-mux.yaml | 8 ++++++--
> Documentation/devicetree/bindings/net/cdns,macb.yaml | 1 +
> Documentation/devicetree/bindings/net/ingenic,mac.yaml | 1 +
> .../devicetree/bindings/net/ti,davinci-mdio.yaml | 1 +
> .../devicetree/bindings/net/wireless/ti,wlcore.yaml | 2 ++
> .../devicetree/bindings/pci/snps,dw-pcie-ep.yaml | 6 ++++--
> Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml | 2 ++
> .../devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml | 2 ++
> Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml | 1 +
> .../devicetree/bindings/power/supply/battery.yaml | 7 ++++++-
> .../devicetree/bindings/power/supply/charger-manager.yaml | 1 +
> Documentation/devicetree/bindings/rng/st,stm32-rng.yaml | 1 +
> Documentation/devicetree/bindings/serial/8250.yaml | 1 +
> .../devicetree/bindings/sound/audio-graph-card2.yaml | 3 +++
> .../devicetree/bindings/sound/imx-audio-hdmi.yaml | 3 +++
> Documentation/devicetree/bindings/usb/smsc,usb3503.yaml | 1 +
> 25 files changed, 55 insertions(+), 8 deletions(-)

For power-supply:

Acked-by: Sebastian Reichel <[email protected]>

-- Sebastian

>
> diff --git a/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml b/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> index 7378159e61df..483caf0ce25b 100644
> --- a/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> +++ b/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> @@ -17,14 +17,15 @@ properties:
> - const: hisilicon,hip04-bootwrapper
>
> boot-method:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> description: |
> Address and size of boot method.
> [0]: bootwrapper physical address
> [1]: bootwrapper size
> [2]: relocation physical address
> [3]: relocation size
> - minItems: 1
> - maxItems: 2
> + minItems: 2
> + maxItems: 4
>
> required:
> - compatible
> diff --git a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> index 3bd670b8e5cd..0b6f5bef120f 100644
> --- a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> +++ b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> @@ -58,6 +58,7 @@ properties:
>
> properties:
> data-lines:
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [ 16, 18, 24 ]
>
> port@1:
> diff --git a/Documentation/devicetree/bindings/display/panel/panel-timing.yaml b/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> index 7749de95ee40..229e3b36ee29 100644
> --- a/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> @@ -146,6 +146,7 @@ properties:
> Horizontal sync pulse.
> 0 selects active low, 1 selects active high.
> If omitted then it is not used by the hardware
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> vsync-active:
> @@ -153,6 +154,7 @@ properties:
> Vertical sync pulse.
> 0 selects active low, 1 selects active high.
> If omitted then it is not used by the hardware
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> de-active:
> @@ -160,6 +162,7 @@ properties:
> Data enable.
> 0 selects active low, 1 selects active high.
> If omitted then it is not used by the hardware
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> pixelclk-active:
> @@ -169,6 +172,7 @@ properties:
> sample data on rising edge.
> Use 1 to drive pixel data on rising edge and
> sample data on falling edge
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> syncclk-active:
> @@ -179,6 +183,7 @@ properties:
> sample sync on rising edge of pixel clock.
> Use 1 to drive sync on rising edge and
> sample sync on falling edge of pixel clock
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [0, 1]
>
> interlaced:
> diff --git a/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml b/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> index 745dd247c409..617aa8c8c03a 100644
> --- a/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> @@ -24,6 +24,7 @@ properties:
>
> dsi-lanes:
> description: Number of DSI lanes to be used must be <3> or <4>
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [3, 4]
>
> v3p3-supply:
> diff --git a/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml b/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> index ca959451557e..1cdc91b3439f 100644
> --- a/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> @@ -36,6 +36,7 @@ properties:
>
> init-delay:
> description: delay after initialization sequence [ms]
> + $ref: /schemas/types.yaml#/definitions/uint32
>
> panel-width-mm:
> description: physical panel width [mm]
> diff --git a/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml b/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> index 5fe19fa5f67c..a99e7842ca17 100644
> --- a/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> +++ b/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> @@ -26,6 +26,7 @@ properties:
> const: 2
>
> registers-number:
> + $ref: /schemas/types.yaml#/definitions/uint32
> description: Number of daisy-chained shift registers
>
> enable-gpios:
> diff --git a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> index e8f137abb03c..aa61fe64be63 100644
> --- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> +++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> @@ -31,6 +31,7 @@ properties:
> type: boolean
>
> function-row-physmap:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> minItems: 1
> maxItems: 15
> description: |
> diff --git a/Documentation/devicetree/bindings/input/matrix-keymap.yaml b/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> index 6699d5e32dca..9f703bb51e12 100644
> --- a/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> +++ b/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> @@ -27,6 +27,10 @@ properties:
> column and linux key-code. The 32-bit big endian cell is packed as:
> row << 24 | column << 16 | key-code
>
> + linux,no-autorepeat:
> + type: boolean
> + description: Disable keyrepeat
> +
> keypad,num-rows:
> $ref: /schemas/types.yaml#/definitions/uint32
> description: Number of row lines connected to the keypad controller.
> diff --git a/Documentation/devicetree/bindings/media/i2c/adv7604.yaml b/Documentation/devicetree/bindings/media/i2c/adv7604.yaml
> index c19d8391e2d5..7589d377c686 100644
> --- a/Documentation/devicetree/bindings/media/i2c/adv7604.yaml
> +++ b/Documentation/devicetree/bindings/media/i2c/adv7604.yaml
> @@ -60,7 +60,8 @@ properties:
> enables hot-plug detection.
>
> default-input:
> - maxItems: 1
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum: [ 0, 1 ]
> description:
> Select which input is selected after reset.
>
> diff --git a/Documentation/devicetree/bindings/mux/reg-mux.yaml b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> index 60d5746eb39d..e2f6b11f1254 100644
> --- a/Documentation/devicetree/bindings/mux/reg-mux.yaml
> +++ b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> @@ -25,8 +25,12 @@ properties:
> const: 1
>
> mux-reg-masks:
> - description: an array of register offset and pre-shifted bitfield mask
> - pairs, each describing a single mux control.
> + $ref: /schemas/types.yaml#/definitions/uint32-matrix
> + items:
> + items:
> + - description: register offset
> + - description: pre-shifted bitfield mask
> + description: Each entry describes a single mux control.
>
> idle-states: true
>
> diff --git a/Documentation/devicetree/bindings/net/cdns,macb.yaml b/Documentation/devicetree/bindings/net/cdns,macb.yaml
> index 6cd3d853dcba..59fe2789fa44 100644
> --- a/Documentation/devicetree/bindings/net/cdns,macb.yaml
> +++ b/Documentation/devicetree/bindings/net/cdns,macb.yaml
> @@ -129,6 +129,7 @@ patternProperties:
> reset-gpios: true
>
> magic-packet:
> + type: boolean
> description:
> Indicates that the hardware supports waking up via magic packet.
>
> diff --git a/Documentation/devicetree/bindings/net/ingenic,mac.yaml b/Documentation/devicetree/bindings/net/ingenic,mac.yaml
> index 8e52b2e683b8..93b3e991d209 100644
> --- a/Documentation/devicetree/bindings/net/ingenic,mac.yaml
> +++ b/Documentation/devicetree/bindings/net/ingenic,mac.yaml
> @@ -37,6 +37,7 @@ properties:
> const: stmmaceth
>
> mode-reg:
> + $ref: /schemas/types.yaml#/definitions/phandle
> description: An extra syscon register that control ethernet interface and timing delay
>
> rx-clk-delay-ps:
> diff --git a/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml b/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml
> index 6f44f9516c36..a339202c5e8e 100644
> --- a/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml
> +++ b/Documentation/devicetree/bindings/net/ti,davinci-mdio.yaml
> @@ -34,6 +34,7 @@ properties:
> maxItems: 1
>
> bus_freq:
> + $ref: /schemas/types.yaml#/definitions/uint32
> maximum: 2500000
> description: MDIO Bus frequency
>
> diff --git a/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml b/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml
> index 8dd164d10290..d68bb2ec1f7e 100644
> --- a/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml
> +++ b/Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml
> @@ -54,9 +54,11 @@ properties:
>
>
> ref-clock-frequency:
> + $ref: /schemas/types.yaml#/definitions/uint32
> description: Reference clock frequency.
>
> tcxo-clock-frequency:
> + $ref: /schemas/types.yaml#/definitions/uint32
> description: TCXO clock frequency.
>
> clock-xtal:
> diff --git a/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml b/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
> index e59059ab5be0..b78535040f04 100644
> --- a/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
> +++ b/Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
> @@ -55,13 +55,15 @@ properties:
> Translation Unit) registers.
>
> num-ib-windows:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + maximum: 256
> description: number of inbound address translation windows
> - maxItems: 1
> deprecated: true
>
> num-ob-windows:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + maximum: 256
> description: number of outbound address translation windows
> - maxItems: 1
> deprecated: true
>
> required:
> diff --git a/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml b/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
> index a5345c494744..c90e5e2d25f6 100644
> --- a/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
> +++ b/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
> @@ -68,6 +68,8 @@ properties:
> Translation Unit) registers.
>
> num-viewport:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + maximum: 256
> description: |
> number of view ports configured in hardware. If a platform
> does not specify it, the driver autodetects it.
> diff --git a/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml b/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml
> index 53e963e090f2..533b4cfe33d2 100644
> --- a/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml
> +++ b/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml
> @@ -120,6 +120,7 @@ patternProperties:
> input-schmitt-disable: true
>
> input-polarity-invert:
> + type: boolean
> description:
> Enable or disable pin input polarity inversion.
>
> @@ -132,6 +133,7 @@ patternProperties:
> output-low: true
>
> output-polarity-invert:
> + type: boolean
> description:
> Enable or disable pin output polarity inversion.
>
> diff --git a/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml b/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml
> index 3301fa0c2653..301db7daf870 100644
> --- a/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml
> +++ b/Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml
> @@ -51,6 +51,7 @@ properties:
> supported by the CPR power domain.
>
> acc-syscon:
> + $ref: /schemas/types.yaml#/definitions/phandle
> description: A phandle to the syscon used for writing ACC settings.
>
> nvmem-cells:
> diff --git a/Documentation/devicetree/bindings/power/supply/battery.yaml b/Documentation/devicetree/bindings/power/supply/battery.yaml
> index d56ac484fec5..491488e7b970 100644
> --- a/Documentation/devicetree/bindings/power/supply/battery.yaml
> +++ b/Documentation/devicetree/bindings/power/supply/battery.yaml
> @@ -85,8 +85,13 @@ properties:
> description: battery factory internal resistance
>
> resistance-temp-table:
> + $ref: /schemas/types.yaml#/definitions/uint32-matrix
> + items:
> + items:
> + - description: the temperature in degree Celsius
> + - description: battery internal resistance percent
> description: |
> - An array providing the temperature in degree Celsius
> + A table providing the temperature in degree Celsius
> and corresponding battery internal resistance percent, which is used to
> look up the resistance percent according to current temperature to get an
> accurate batterty internal resistance in different temperatures.
> diff --git a/Documentation/devicetree/bindings/power/supply/charger-manager.yaml b/Documentation/devicetree/bindings/power/supply/charger-manager.yaml
> index c863cfa67865..fbb2204769aa 100644
> --- a/Documentation/devicetree/bindings/power/supply/charger-manager.yaml
> +++ b/Documentation/devicetree/bindings/power/supply/charger-manager.yaml
> @@ -36,6 +36,7 @@ properties:
>
> cm-poll-mode:
> description: polling mode
> + $ref: /schemas/types.yaml#/definitions/uint32
> default: 0
> enum:
> - 0 # disabled
> diff --git a/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml b/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml
> index 9a6e4eaf4d3c..fcd86f822a9c 100644
> --- a/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml
> +++ b/Documentation/devicetree/bindings/rng/st,stm32-rng.yaml
> @@ -27,6 +27,7 @@ properties:
> maxItems: 1
>
> clock-error-detect:
> + type: boolean
> description: If set enable the clock detection management
>
> required:
> diff --git a/Documentation/devicetree/bindings/serial/8250.yaml b/Documentation/devicetree/bindings/serial/8250.yaml
> index 3bab2f27b970..5f6b113d378f 100644
> --- a/Documentation/devicetree/bindings/serial/8250.yaml
> +++ b/Documentation/devicetree/bindings/serial/8250.yaml
> @@ -138,6 +138,7 @@ properties:
> description: The current active speed of the UART.
>
> reg-offset:
> + $ref: /schemas/types.yaml#/definitions/uint32
> description: |
> Offset to apply to the mapbase from the start of the registers.
>
> diff --git a/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml b/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml
> index f7e94b1e0e4b..7416067c945e 100644
> --- a/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml
> +++ b/Documentation/devicetree/bindings/sound/audio-graph-card2.yaml
> @@ -24,10 +24,13 @@ properties:
> connection's sink, the second being the connection's source.
> $ref: /schemas/types.yaml#/definitions/non-unique-string-array
> multi:
> + type: object
> description: Multi-CPU/Codec node
> dpcm:
> + type: object
> description: DPCM node
> codec2codec:
> + type: object
> description: Codec to Codec node
>
> required:
> diff --git a/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml b/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml
> index d5474f83ac2c..e7e7bb65c366 100644
> --- a/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml
> +++ b/Documentation/devicetree/bindings/sound/imx-audio-hdmi.yaml
> @@ -20,9 +20,11 @@ properties:
> description: User specified audio sound card name
>
> audio-cpu:
> + $ref: /schemas/types.yaml#/definitions/phandle
> description: The phandle of an CPU DAI controller
>
> hdmi-out:
> + type: boolean
> description: |
> This is a boolean property. If present, the transmitting function
> of HDMI will be enabled, indicating there's a physical HDMI out
> @@ -30,6 +32,7 @@ properties:
> block, such as an HDMI encoder or display-controller.
>
> hdmi-in:
> + type: boolean
> description: |
> This is a boolean property. If present, the receiving function of
> HDMI will be enabled, indicating there is a physical HDMI in
> diff --git a/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml b/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
> index b9e219829801..321b6f166197 100644
> --- a/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
> +++ b/Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
> @@ -45,6 +45,7 @@ properties:
> property if all ports have to be enabled.
>
> initial-mode:
> + $ref: /schemas/types.yaml#/definitions/uint32
> enum: [1, 2]
> description: >
> Specifies initial mode. 1 for Hub mode, 2 for standby mode.
> --
> 2.34.1
>


Attachments:
(No filename) (19.73 kB)
signature.asc (849.00 B)
Download all attachments

2022-05-23 16:59:32

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: Fix properties without any type

On Sat, May 21, 2022 at 05:03:41PM +0200, Krzysztof Kozlowski wrote:
> On 19/05/2022 23:14, Rob Herring wrote:
> > Now that the schema tools can extract type information for all
> > properties (in order to decode dtb files), finding properties missing
> > any type definition is fairly trivial though not yet automated.
> >
> > Fix the various property schemas which are missing a type. Most of these
> > tend to be device specific properties which don't have a vendor prefix.
> > A vendor prefix is how we normally ensure a type is defined.
> >
> > Signed-off-by: Rob Herring <[email protected]>
> > ---
> > .../arm/hisilicon/controller/hip04-bootwrapper.yaml | 5 +++--
> > .../bindings/display/bridge/toshiba,tc358768.yaml | 1 +
> > .../devicetree/bindings/display/panel/panel-timing.yaml | 5 +++++
> > .../bindings/display/panel/raydium,rm67191.yaml | 1 +
> > .../bindings/display/panel/samsung,s6e8aa0.yaml | 1 +
> > .../devicetree/bindings/gpio/fairchild,74hc595.yaml | 1 +
> > .../devicetree/bindings/input/google,cros-ec-keyb.yaml | 1 +
> > .../devicetree/bindings/input/matrix-keymap.yaml | 4 ++++
> > Documentation/devicetree/bindings/media/i2c/adv7604.yaml | 3 ++-
> > Documentation/devicetree/bindings/mux/reg-mux.yaml | 8 ++++++--
> > Documentation/devicetree/bindings/net/cdns,macb.yaml | 1 +
> > Documentation/devicetree/bindings/net/ingenic,mac.yaml | 1 +
> > .../devicetree/bindings/net/ti,davinci-mdio.yaml | 1 +
> > .../devicetree/bindings/net/wireless/ti,wlcore.yaml | 2 ++
> > .../devicetree/bindings/pci/snps,dw-pcie-ep.yaml | 6 ++++--
> > Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml | 2 ++
> > .../devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml | 2 ++
> > Documentation/devicetree/bindings/power/avs/qcom,cpr.yaml | 1 +
> > .../devicetree/bindings/power/supply/battery.yaml | 7 ++++++-
> > .../devicetree/bindings/power/supply/charger-manager.yaml | 1 +
> > Documentation/devicetree/bindings/rng/st,stm32-rng.yaml | 1 +
> > Documentation/devicetree/bindings/serial/8250.yaml | 1 +
> > .../devicetree/bindings/sound/audio-graph-card2.yaml | 3 +++
> > .../devicetree/bindings/sound/imx-audio-hdmi.yaml | 3 +++
> > Documentation/devicetree/bindings/usb/smsc,usb3503.yaml | 1 +
> > 25 files changed, 55 insertions(+), 8 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml b/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> > index 7378159e61df..483caf0ce25b 100644
> > --- a/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> > +++ b/Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
> > @@ -17,14 +17,15 @@ properties:
> > - const: hisilicon,hip04-bootwrapper
> >
> > boot-method:
> > + $ref: /schemas/types.yaml#/definitions/uint32-array
> > description: |
> > Address and size of boot method.
> > [0]: bootwrapper physical address
> > [1]: bootwrapper size
> > [2]: relocation physical address
> > [3]: relocation size
> > - minItems: 1
> > - maxItems: 2
> > + minItems: 2
> > + maxItems: 4
> >
> > required:
> > - compatible
> > diff --git a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> > index 3bd670b8e5cd..0b6f5bef120f 100644
> > --- a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> > +++ b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
> > @@ -58,6 +58,7 @@ properties:
> >
> > properties:
> > data-lines:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > enum: [ 16, 18, 24 ]
> >
> > port@1:
> > diff --git a/Documentation/devicetree/bindings/display/panel/panel-timing.yaml b/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> > index 7749de95ee40..229e3b36ee29 100644
> > --- a/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> > +++ b/Documentation/devicetree/bindings/display/panel/panel-timing.yaml
> > @@ -146,6 +146,7 @@ properties:
> > Horizontal sync pulse.
> > 0 selects active low, 1 selects active high.
> > If omitted then it is not used by the hardware
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > enum: [0, 1]
> >
> > vsync-active:
> > @@ -153,6 +154,7 @@ properties:
> > Vertical sync pulse.
> > 0 selects active low, 1 selects active high.
> > If omitted then it is not used by the hardware
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > enum: [0, 1]
> >
> > de-active:
> > @@ -160,6 +162,7 @@ properties:
> > Data enable.
> > 0 selects active low, 1 selects active high.
> > If omitted then it is not used by the hardware
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > enum: [0, 1]
> >
> > pixelclk-active:
> > @@ -169,6 +172,7 @@ properties:
> > sample data on rising edge.
> > Use 1 to drive pixel data on rising edge and
> > sample data on falling edge
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > enum: [0, 1]
> >
> > syncclk-active:
> > @@ -179,6 +183,7 @@ properties:
> > sample sync on rising edge of pixel clock.
> > Use 1 to drive sync on rising edge and
> > sample sync on falling edge of pixel clock
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > enum: [0, 1]
> >
> > interlaced:
> > diff --git a/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml b/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> > index 745dd247c409..617aa8c8c03a 100644
> > --- a/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> > +++ b/Documentation/devicetree/bindings/display/panel/raydium,rm67191.yaml
> > @@ -24,6 +24,7 @@ properties:
> >
> > dsi-lanes:
> > description: Number of DSI lanes to be used must be <3> or <4>
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > enum: [3, 4]
> >
> > v3p3-supply:
> > diff --git a/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml b/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> > index ca959451557e..1cdc91b3439f 100644
> > --- a/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> > +++ b/Documentation/devicetree/bindings/display/panel/samsung,s6e8aa0.yaml
> > @@ -36,6 +36,7 @@ properties:
> >
> > init-delay:
> > description: delay after initialization sequence [ms]
> > + $ref: /schemas/types.yaml#/definitions/uint32
> >
> > panel-width-mm:
> > description: physical panel width [mm]
> > diff --git a/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml b/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> > index 5fe19fa5f67c..a99e7842ca17 100644
> > --- a/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> > +++ b/Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml
> > @@ -26,6 +26,7 @@ properties:
> > const: 2
> >
> > registers-number:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > description: Number of daisy-chained shift registers
> >
> > enable-gpios:
> > diff --git a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> > index e8f137abb03c..aa61fe64be63 100644
> > --- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> > +++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> > @@ -31,6 +31,7 @@ properties:
> > type: boolean
> >
> > function-row-physmap:
> > + $ref: /schemas/types.yaml#/definitions/uint32-array
> > minItems: 1
> > maxItems: 15
> > description: |
> > diff --git a/Documentation/devicetree/bindings/input/matrix-keymap.yaml b/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> > index 6699d5e32dca..9f703bb51e12 100644
> > --- a/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> > +++ b/Documentation/devicetree/bindings/input/matrix-keymap.yaml
> > @@ -27,6 +27,10 @@ properties:
> > column and linux key-code. The 32-bit big endian cell is packed as:
> > row << 24 | column << 16 | key-code
> >
> > + linux,no-autorepeat:
> > + type: boolean
> > + description: Disable keyrepeat
>
> This should be rather a separate patch - it's documenting a missing
> property, not only a type.

Yes, I've dropped this hunk while applying.

Rob

Subject: Re: [PATCH] dt-bindings: Fix properties without any type

Hello:

This patch was applied to chrome-platform/linux.git (for-next)
by Rob Herring <[email protected]>:

On Thu, 19 May 2022 16:14:11 -0500 you wrote:
> Now that the schema tools can extract type information for all
> properties (in order to decode dtb files), finding properties missing
> any type definition is fairly trivial though not yet automated.
>
> Fix the various property schemas which are missing a type. Most of these
> tend to be device specific properties which don't have a vendor prefix.
> A vendor prefix is how we normally ensure a type is defined.
>
> [...]

Here is the summary with links:
- dt-bindings: Fix properties without any type
https://git.kernel.org/chrome-platform/c/4e71ed985389

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html