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
Type-C Cable and Connector specification, when Power Delivery is not
supported.
allOf:
- $ref: /schemas/types.yaml#/definitions/string
$ref: /schemas/types.yaml#/definitions/string
enum:
- default
- 1.5A

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -95,8 +95,7 @@ patternProperties:
addresses. Cache and memory access settings are provided through a
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:
compatible:

View File

@ -281,10 +281,7 @@ patternProperties:
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
interrupt-controller node.
allOf:
- $ref: /schemas/interrupt-controller/ti,pruss-intc.yaml#
$ref: /schemas/interrupt-controller/ti,pruss-intc.yaml#
type: object
mdio@[a-f0-9]+$:
@ -292,10 +289,7 @@ patternProperties:
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
the MDIO Controller used in TI Davinci SoCs.
allOf:
- $ref: /schemas/net/ti,davinci-mdio.yaml#
$ref: /schemas/net/ti,davinci-mdio.yaml#
type: object
"^(pru|rtu|txpru)@[0-9a-f]+$":
@ -305,10 +299,7 @@ patternProperties:
inactive by using the standard DT string property, "status". The ICSSG IP
present on K3 SoCs have additional auxiliary PRU cores with slightly
different IP integration.
allOf:
- $ref: /schemas/remoteproc/ti,pru-rproc.yaml#
$ref: /schemas/remoteproc/ti,pru-rproc.yaml#
type: object
required:

View File

@ -115,8 +115,7 @@ patternProperties:
By default, custom protocol is assumed, meaning that protocol is
configured according to protocol defined in related DAI link node,
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":
description: Configure the SAI device as master clock provider.

View File

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

View File

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

View File

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