dt-bindings: Another pass removing cases of 'allOf' containing a '$ref'

Another pass at removing unnecessary use of 'allOf' with a '$ref'.

json-schema versions draft7 and earlier have a weird behavior in that
any keywords combined with a '$ref' are ignored (silently). The correct
form was to put a '$ref' under an 'allOf'. This behavior is now changed
in the 2019-09 json-schema spec and '$ref' can be mixed with other
keywords.

Cc: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Pavel Machek <pavel@ucw.cz>
Cc: Guenter Roeck <groeck@chromium.org>
Cc: Richard Weinberger <richard@nod.at>
Cc: Vignesh Raghavendra <vigneshr@ti.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Kishon Vijay Abraham I <kishon@ti.com>
Cc: Sebastian Reichel <sre@kernel.org>
Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-By: Vinod Koul <vkoul@kernel.org>
Acked-by: Lee Jones <lee.jones@linaro.org>
Acked-by: Marek Behún <kabel@kernel.org>
Acked-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Jakub Kicinski <kuba@kernel.org>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220228213802.1639658-1-robh@kernel.org
This commit is contained in:
Rob Herring 2022-02-28 15:38:02 -06:00
parent 53157759f5
commit dca669354e
20 changed files with 36 additions and 69 deletions

View File

@ -104,8 +104,7 @@ properties:
- "1.5A" and "3.0A", 5V 1.5A and 5V 3.0A respectively, as defined in USB - "1.5A" and "3.0A", 5V 1.5A and 5V 3.0A respectively, as defined in USB
Type-C Cable and Connector specification, when Power Delivery is not Type-C Cable and Connector specification, when Power Delivery is not
supported. supported.
allOf: $ref: /schemas/types.yaml#/definitions/string
- $ref: /schemas/types.yaml#/definitions/string
enum: enum:
- default - default
- 1.5A - 1.5A

View File

@ -72,8 +72,7 @@ properties:
- const: hpd-removed - const: hpd-removed
ddc: ddc:
allOf: $ref: /schemas/types.yaml#/definitions/phandle
- $ref: /schemas/types.yaml#/definitions/phandle
description: > description: >
Phandle of the I2C controller used for DDC EDID probing Phandle of the I2C controller used for DDC EDID probing

View File

@ -76,9 +76,8 @@ properties:
adi,input-depth: adi,input-depth:
description: Number of bits per color component at the input. description: Number of bits per color component at the input.
allOf: $ref: /schemas/types.yaml#/definitions/uint32
- $ref: /schemas/types.yaml#/definitions/uint32 enum: [ 8, 10, 12 ]
- enum: [ 8, 10, 12 ]
adi,input-colorspace: adi,input-colorspace:
description: Input color space. description: Input color space.

View File

@ -26,9 +26,8 @@ properties:
reg-io-width: reg-io-width:
description: description:
Width (in bytes) of the registers specified by the reg property. Width (in bytes) of the registers specified by the reg property.
allOf: $ref: /schemas/types.yaml#/definitions/uint32
- $ref: /schemas/types.yaml#/definitions/uint32 enum: [1, 4]
- enum: [1, 4]
default: 1 default: 1
clocks: clocks:

View File

@ -31,8 +31,7 @@ properties:
patternProperties: patternProperties:
"^timing": "^timing":
type: object type: object
allOf: $ref: panel-timing.yaml#
- $ref: panel-timing.yaml#
additionalProperties: false additionalProperties: false

View File

@ -58,8 +58,8 @@ patternProperties:
"^dsi@[0-9a-f]+$": "^dsi@[0-9a-f]+$":
description: subnodes for the three DSI host adapters description: subnodes for the three DSI host adapters
type: object type: object
allOf: $ref: dsi-controller.yaml#
- $ref: dsi-controller.yaml#
properties: properties:
compatible: compatible:
const: ste,mcde-dsi const: ste,mcde-dsi

View File

@ -61,11 +61,10 @@ patternProperties:
description: EV_ABS specific event code generated by the axis. description: EV_ABS specific event code generated by the axis.
abs-range: abs-range:
allOf: $ref: /schemas/types.yaml#/definitions/uint32-array
- $ref: /schemas/types.yaml#/definitions/uint32-array items:
- items: - description: minimum value
- description: minimum value - description: maximum value
- description: maximum value
description: > description: >
Minimum and maximum values produced by the axis. Minimum and maximum values produced by the axis.
For an ABS_X axis this will be the left-most and right-most For an ABS_X axis this will be the left-most and right-most

View File

@ -32,8 +32,7 @@ properties:
patternProperties: patternProperties:
"^multi-led@[0-9a-b]$": "^multi-led@[0-9a-b]$":
type: object type: object
allOf: $ref: leds-class-multicolor.yaml#
- $ref: leds-class-multicolor.yaml#
description: description:
This node represents one of the RGB LED devices on Turris Omnia. This node represents one of the RGB LED devices on Turris Omnia.
No subnodes need to be added for subchannels since this controller only No subnodes need to be added for subchannels since this controller only

View File

@ -55,8 +55,7 @@ properties:
patternProperties: patternProperties:
'^multi-led@[0-9a-f]$': '^multi-led@[0-9a-f]$':
type: object type: object
allOf: $ref: leds-class-multicolor.yaml#
- $ref: leds-class-multicolor.yaml#
properties: properties:
reg: reg:
minItems: 1 minItems: 1

View File

@ -38,18 +38,14 @@ properties:
description: description:
This property specifies the delay in usecs between the This property specifies the delay in usecs between the
assertion of the CS and the first clock pulse. assertion of the CS and the first clock pulse.
allOf: $ref: /schemas/types.yaml#/definitions/uint32
- $ref: /schemas/types.yaml#/definitions/uint32 default: 0
- default: 0
- minimum: 0
google,cros-ec-spi-msg-delay: google,cros-ec-spi-msg-delay:
description: description:
This property specifies the delay in usecs between messages. This property specifies the delay in usecs between messages.
allOf: $ref: /schemas/types.yaml#/definitions/uint32
- $ref: /schemas/types.yaml#/definitions/uint32 default: 0
- default: 0
- minimum: 0
google,has-vbc-nvram: google,has-vbc-nvram:
description: description:

View File

@ -96,8 +96,7 @@ patternProperties:
rockchip,boot-ecc-strength: rockchip,boot-ecc-strength:
enum: [16, 24, 40, 60, 70] enum: [16, 24, 40, 60, 70]
allOf: $ref: /schemas/types.yaml#/definitions/uint32
- $ref: /schemas/types.yaml#/definitions/uint32
description: | description: |
If specified it indicates that a different BCH/ECC setting is If specified it indicates that a different BCH/ECC setting is
supported by the boot ROM. supported by the boot ROM.

View File

@ -88,8 +88,7 @@ properties:
type: object type: object
description: CPSW external ports description: CPSW external ports
allOf: $ref: ethernet-controller.yaml#
- $ref: ethernet-controller.yaml#
properties: properties:
reg: reg:

View File

@ -76,8 +76,7 @@ patternProperties:
connector: connector:
type: object type: object
allOf: $ref: /schemas/connector/usb-connector.yaml
- $ref: ../connector/usb-connector.yaml
properties: properties:
vbus-supply: true vbus-supply: true

View File

@ -46,9 +46,7 @@ additionalProperties: false
patternProperties: patternProperties:
"^i2c@[1-4]$": "^i2c@[1-4]$":
type: object type: object
$ref: /schemas/i2c/i2c-controller.yaml#
allOf:
- $ref: /schemas/i2c/i2c-controller.yaml#
examples: examples:
- | - |

View File

@ -95,8 +95,7 @@ patternProperties:
addresses. Cache and memory access settings are provided through a addresses. Cache and memory access settings are provided through a
Memory Protection Unit (MPU), programmable only from the R5Fs. Memory Protection Unit (MPU), programmable only from the R5Fs.
allOf: $ref: /schemas/arm/keystone/ti,k3-sci-common.yaml#
- $ref: /schemas/arm/keystone/ti,k3-sci-common.yaml#
properties: properties:
compatible: compatible:

View File

@ -281,10 +281,7 @@ patternProperties:
PRUSS INTC Node. Each PRUSS has a single interrupt controller instance PRUSS INTC Node. Each PRUSS has a single interrupt controller instance
that is common to all the PRU cores. This should be represented as an that is common to all the PRU cores. This should be represented as an
interrupt-controller node. interrupt-controller node.
$ref: /schemas/interrupt-controller/ti,pruss-intc.yaml#
allOf:
- $ref: /schemas/interrupt-controller/ti,pruss-intc.yaml#
type: object type: object
mdio@[a-f0-9]+$: mdio@[a-f0-9]+$:
@ -292,10 +289,7 @@ patternProperties:
MDIO Node. Each PRUSS has an MDIO module that can be used to control MDIO Node. Each PRUSS has an MDIO module that can be used to control
external PHYs. The MDIO module used within the PRU-ICSS is an instance of external PHYs. The MDIO module used within the PRU-ICSS is an instance of
the MDIO Controller used in TI Davinci SoCs. the MDIO Controller used in TI Davinci SoCs.
$ref: /schemas/net/ti,davinci-mdio.yaml#
allOf:
- $ref: /schemas/net/ti,davinci-mdio.yaml#
type: object type: object
"^(pru|rtu|txpru)@[0-9a-f]+$": "^(pru|rtu|txpru)@[0-9a-f]+$":
@ -305,10 +299,7 @@ patternProperties:
inactive by using the standard DT string property, "status". The ICSSG IP inactive by using the standard DT string property, "status". The ICSSG IP
present on K3 SoCs have additional auxiliary PRU cores with slightly present on K3 SoCs have additional auxiliary PRU cores with slightly
different IP integration. different IP integration.
$ref: /schemas/remoteproc/ti,pru-rproc.yaml#
allOf:
- $ref: /schemas/remoteproc/ti,pru-rproc.yaml#
type: object type: object
required: required:

View File

@ -115,8 +115,7 @@ patternProperties:
By default, custom protocol is assumed, meaning that protocol is By default, custom protocol is assumed, meaning that protocol is
configured according to protocol defined in related DAI link node, configured according to protocol defined in related DAI link node,
such as i2s, left justified, right justified, dsp and pdm protocols. such as i2s, left justified, right justified, dsp and pdm protocols.
allOf: $ref: /schemas/types.yaml#/definitions/flag
- $ref: /schemas/types.yaml#/definitions/flag
"#clock-cells": "#clock-cells":
description: Configure the SAI device as master clock provider. description: Configure the SAI device as master clock provider.

View File

@ -176,13 +176,12 @@ patternProperties:
4 - Drive weak low and active high 4 - Drive weak low and active high
5 - Drive Hi-Z and active high 5 - Drive Hi-Z and active high
allOf: $ref: /schemas/types.yaml#/definitions/uint32-array
- $ref: /schemas/types.yaml#/definitions/uint32-array minItems: 2
- minItems: 2 maxItems: 2
maxItems: 2 items:
items: maximum: 15
maximum: 15 default: [2, 2]
default: [2, 2]
required: required:
- compatible - compatible

View File

@ -93,9 +93,7 @@ properties:
patternProperties: patternProperties:
"^.*@[0-9a-f]+$": "^.*@[0-9a-f]+$":
type: object type: object
$ref: spi-peripheral-props.yaml
allOf:
- $ref: spi-peripheral-props.yaml
required: required:
- compatible - compatible

View File

@ -32,9 +32,7 @@ properties:
connector: connector:
type: object type: object
$ref: /schemas/connector/usb-connector.yaml#
allOf:
- $ref: ../connector/usb-connector.yaml
properties: properties:
compatible: compatible: