Skip to content

Commit

Permalink
dt-bindings: usb: Convert Allwinner A10 mUSB controller to a schema
Browse files Browse the repository at this point in the history
The Allwinner SoCs have an mUSB controller that is supported in Linux, with
a matching Device Tree binding.

Now that we have the DT validation in place, let's convert the device tree
bindings for that controller over to a YAML schemas.

Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Signed-off-by: Rob Herring <robh@kernel.org>
  • Loading branch information
Maxime Ripard authored and Rob Herring committed Nov 5, 2019
1 parent 067c650 commit 23c091d
Show file tree
Hide file tree
Showing 2 changed files with 100 additions and 28 deletions.
28 changes: 0 additions & 28 deletions Documentation/devicetree/bindings/usb/allwinner,sun4i-a10-musb.txt

This file was deleted.

100 changes: 100 additions & 0 deletions Documentation/devicetree/bindings/usb/allwinner,sun4i-a10-musb.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/usb/allwinner,sun4i-a10-musb.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Allwinner A10 mUSB OTG Controller Device Tree Bindings

maintainers:
- Chen-Yu Tsai <wens@csie.org>
- Maxime Ripard <maxime.ripard@bootlin.com>

properties:
compatible:
oneOf:
- const: allwinner,sun4i-a10-musb
- const: allwinner,sun6i-a31-musb
- const: allwinner,sun8i-a33-musb
- const: allwinner,sun8i-h3-musb
- items:
- enum:
- allwinner,sun8i-a83t-musb
- allwinner,sun50i-h6-musb
- const: allwinner,sun8i-a33-musb

reg:
maxItems: 1

interrupts:
maxItems: 1

interrupt-names:
const: mc

clocks:
maxItems: 1

resets:
maxItems: 1

phys:
description: PHY specifier for the OTG PHY

phy-names:
const: usb

extcon:
description: Extcon specifier for the OTG PHY

dr_mode:
enum:
- host
- otg
- peripheral

allwinner,sram:
description: Phandle to the device SRAM
$ref: /schemas/types.yaml#/definitions/phandle-array

required:
- compatible
- reg
- interrupts
- interrupt-names
- clocks
- phys
- phy-names
- dr_mode
- extcon

if:
properties:
compatible:
contains:
enum:
- allwinner,sun6i-a31-musb
- allwinner,sun8i-a33-musb
- allwinner,sun8i-h3-musb

then:
required:
- resets

additionalProperties: false

examples:
- |
usb_otg: usb@1c13000 {
compatible = "allwinner,sun4i-a10-musb";
reg = <0x01c13000 0x0400>;
clocks = <&ahb_gates 0>;
interrupts = <38>;
interrupt-names = "mc";
phys = <&usbphy 0>;
phy-names = "usb";
extcon = <&usbphy 0>;
dr_mode = "peripheral";
};
...

0 comments on commit 23c091d

Please sign in to comment.