blob: 760cb336dccb5c4a7ecb9f24f9f2c6a5f3176a1e [file] [log] [blame]
Tom Rini93743d22024-04-01 09:08:13 -04001# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/leds/allwinner,sun50i-a100-ledc.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Allwinner A100 LED Controller
8
9maintainers:
10 - Samuel Holland <samuel@sholland.org>
11
12description:
13 The LED controller found in Allwinner sunxi SoCs uses a one-wire serial
14 interface to drive up to 1024 RGB LEDs.
15
16properties:
17 compatible:
18 oneOf:
19 - const: allwinner,sun50i-a100-ledc
20 - items:
21 - enum:
22 - allwinner,sun20i-d1-ledc
23 - allwinner,sun50i-r329-ledc
24 - const: allwinner,sun50i-a100-ledc
25
26 reg:
27 maxItems: 1
28
29 "#address-cells":
30 const: 1
31
32 "#size-cells":
33 const: 0
34
35 interrupts:
36 maxItems: 1
37
38 clocks:
39 items:
40 - description: Bus clock
41 - description: Module clock
42
43 clock-names:
44 items:
45 - const: bus
46 - const: mod
47
48 resets:
49 maxItems: 1
50
51 dmas:
52 maxItems: 1
53 description: TX DMA channel
54
55 dma-names:
56 const: tx
57
58 allwinner,pixel-format:
59 description: Pixel format (subpixel transmission order), default is "grb"
60 enum:
61 - bgr
62 - brg
63 - gbr
64 - grb
65 - rbg
66 - rgb
67
68 allwinner,t0h-ns:
69 default: 336
70 description: Length of high pulse when transmitting a "0" bit
71
72 allwinner,t0l-ns:
73 default: 840
74 description: Length of low pulse when transmitting a "0" bit
75
76 allwinner,t1h-ns:
77 default: 882
78 description: Length of high pulse when transmitting a "1" bit
79
80 allwinner,t1l-ns:
81 default: 294
82 description: Length of low pulse when transmitting a "1" bit
83
84 allwinner,treset-ns:
85 default: 300000
86 description: Minimum delay between transmission frames
87
88patternProperties:
89 "^multi-led@[0-9a-f]+$":
90 type: object
91 $ref: leds-class-multicolor.yaml#
92 unevaluatedProperties: false
93 properties:
94 reg:
95 minimum: 0
96 maximum: 1023
97 description: Index of the LED in the series (must be contiguous)
98
99 required:
100 - reg
101
102required:
103 - compatible
104 - reg
105 - interrupts
106 - clocks
107 - clock-names
108 - resets
109
110additionalProperties: false
111
112examples:
113 - |
114 #include <dt-bindings/interrupt-controller/irq.h>
115 #include <dt-bindings/leds/common.h>
116
117 ledc: led-controller@2008000 {
118 compatible = "allwinner,sun20i-d1-ledc",
119 "allwinner,sun50i-a100-ledc";
120 reg = <0x2008000 0x400>;
121 interrupts = <36 IRQ_TYPE_LEVEL_HIGH>;
122 clocks = <&ccu 12>, <&ccu 34>;
123 clock-names = "bus", "mod";
124 resets = <&ccu 12>;
125 dmas = <&dma 42>;
126 dma-names = "tx";
127 #address-cells = <1>;
128 #size-cells = <0>;
129
130 multi-led@0 {
131 reg = <0x0>;
132 color = <LED_COLOR_ID_RGB>;
133 function = LED_FUNCTION_INDICATOR;
134 };
135 };
136
137...