linux/Documentation/devicetree/bindings/phy/qcom,usb-hs-phy.yaml
Rob Herring 27e4a85cf7 dt-bindings: Fix incomplete if/then/else schemas
A recent review highlighted that the json-schema meta-schema allows any
combination of if/then/else schema keywords even though if, then or else
by themselves makes little sense. With an added meta-schema to only
allow valid combinations, there's a handful of schemas found which need
fixing in a variety of ways. Incorrect indentation is the most common
issue.

Cc: Lars-Peter Clausen <lars@metafoo.de>
Cc: Michael Hennerich <Michael.Hennerich@analog.com>
Cc: Jonathan Cameron <jic23@kernel.org>
Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
Cc: Olivier Moysan <olivier.moysan@foss.st.com>
Cc: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: Georgi Djakov <djakov@kernel.org>
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Paolo Abeni <pabeni@redhat.com>
Cc: Kishon Vijay Abraham I <kishon@ti.com>
Cc: Vinod Koul <vkoul@kernel.org>
Cc: Mark Brown <broonie@kernel.org>
Cc: Fabrice Gasnier <fabrice.gasnier@foss.st.com>
Cc: Grygorii Strashko <grygorii.strashko@ti.com>
Cc: Dmitry Osipenko <digetx@gmail.com>
Cc: linux-iio@vger.kernel.org
Cc: alsa-devel@alsa-project.org
Cc: linux-mmc@vger.kernel.org
Cc: linux-tegra@vger.kernel.org
Cc: netdev@vger.kernel.org
Cc: linux-phy@lists.infradead.org
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20220330145741.3044896-1-robh@kernel.org
2022-04-04 14:20:09 -05:00

112 lines
2.1 KiB
YAML

# SPDX-License-Identifier: GPL-2.0-only
%YAML 1.2
---
$id: http://devicetree.org/schemas/phy/qcom,usb-hs-phy.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Qualcomm's USB HS PHY binding description
maintainers:
- Bjorn Andersson <bjorn.andersson@linaro.org>
if:
properties:
compatible:
contains:
const: qcom,usb-hs-phy-apq8064
then:
properties:
resets:
maxItems: 1
reset-names:
const: por
else:
properties:
resets:
minItems: 2
maxItems: 2
reset-names:
items:
- const: phy
- const: por
properties:
compatible:
items:
- enum:
- qcom,usb-hs-phy-apq8064
- qcom,usb-hs-phy-msm8226
- qcom,usb-hs-phy-msm8916
- qcom,usb-hs-phy-msm8974
- const: qcom,usb-hs-phy
clocks:
minItems: 2
maxItems: 2
clock-names:
maxItems: 2
contains:
items:
- const: ref
- const: sleep
resets: true
reset-names: true
v1p8-supply: true
v3p3-supply: true
extcon: true
"#phy-cells":
const: 0
qcom,init-seq:
$ref: /schemas/types.yaml#/definitions/uint8-matrix
description: >
Sequence of ULPI address and value pairs to
program into the ULPI_EXT_VENDOR_SPECIFIC area.
This is related to Device Mode Eye Diagram test.
maxItems: 32 # no hard limit
items:
items:
- description: >
the address is offset from the ULPI_EXT_VENDOR_SPECIFIC address
- description: value
required:
- clocks
- clock-names
- resets
- reset-names
- "#phy-cells"
additionalProperties: false
examples:
- |
otg: usb-controller {
#reset-cells = <1>;
ulpi {
phy {
compatible = "qcom,usb-hs-phy-msm8974", "qcom,usb-hs-phy";
#phy-cells = <0>;
clocks = <&clk 0>, <&clk 258>;
clock-names = "ref", "sleep";
resets = <&gcc 10>, <&otg 0>;
reset-names = "phy", "por";
v3p3-supply = <&pm8941_l24>;
v1p8-supply = <&pm8941_l6>;
extcon = <&smbb>;
qcom,init-seq = /bits/ 8 <0x1 0x63>;
};
};
};