162306a36Sopenharmony_ciDevice Tree Bindings for LED support on MT6323 PMIC
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciMT6323 LED controller is subfunction provided by MT6323 PMIC, so the LED
462306a36Sopenharmony_cicontrollers are defined as the subnode of the function node provided by MT6323
562306a36Sopenharmony_ciPMIC controller that is being defined as one kind of Muti-Function Device (MFD)
662306a36Sopenharmony_ciusing shared bus called PMIC wrapper for each subfunction to access remote
762306a36Sopenharmony_ciMT6323 PMIC hardware.
862306a36Sopenharmony_ci
962306a36Sopenharmony_ciFor MT6323 MFD bindings see:
1062306a36Sopenharmony_ciDocumentation/devicetree/bindings/mfd/mt6397.txt
1162306a36Sopenharmony_ciFor MediaTek PMIC wrapper bindings see:
1262306a36Sopenharmony_ciDocumentation/devicetree/bindings/soc/mediatek/mediatek,pwrap.yaml
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ciRequired properties:
1562306a36Sopenharmony_ci- compatible : Must be one of
1662306a36Sopenharmony_ci  - "mediatek,mt6323-led"
1762306a36Sopenharmony_ci  - "mediatek,mt6331-led"
1862306a36Sopenharmony_ci  - "mediatek,mt6332-led"
1962306a36Sopenharmony_ci- address-cells : Must be 1
2062306a36Sopenharmony_ci- size-cells : Must be 0
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ciEach led is represented as a child node of the mediatek,mt6323-led that
2362306a36Sopenharmony_cidescribes the initial behavior for each LED physically and currently only four
2462306a36Sopenharmony_ciLED child nodes can be supported.
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ciRequired properties for the LED child node:
2762306a36Sopenharmony_ci- reg : LED channel number (0..3)
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ciOptional properties for the LED child node:
3062306a36Sopenharmony_ci- label : See Documentation/devicetree/bindings/leds/common.txt
3162306a36Sopenharmony_ci- linux,default-trigger : See Documentation/devicetree/bindings/leds/common.txt
3262306a36Sopenharmony_ci- default-state: See Documentation/devicetree/bindings/leds/common.txt
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ciExample:
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ci	mt6323: pmic {
3762306a36Sopenharmony_ci		compatible = "mediatek,mt6323";
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci		...
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci		mt6323led: leds {
4262306a36Sopenharmony_ci			compatible = "mediatek,mt6323-led";
4362306a36Sopenharmony_ci			#address-cells = <1>;
4462306a36Sopenharmony_ci			#size-cells = <0>;
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci			led@0 {
4762306a36Sopenharmony_ci				reg = <0>;
4862306a36Sopenharmony_ci				label = "LED0";
4962306a36Sopenharmony_ci				linux,default-trigger = "timer";
5062306a36Sopenharmony_ci				default-state = "on";
5162306a36Sopenharmony_ci			};
5262306a36Sopenharmony_ci			led@1 {
5362306a36Sopenharmony_ci				reg = <1>;
5462306a36Sopenharmony_ci				label = "LED1";
5562306a36Sopenharmony_ci				default-state = "off";
5662306a36Sopenharmony_ci			};
5762306a36Sopenharmony_ci			led@2 {
5862306a36Sopenharmony_ci				reg = <2>;
5962306a36Sopenharmony_ci				label = "LED2";
6062306a36Sopenharmony_ci				default-state = "on";
6162306a36Sopenharmony_ci			};
6262306a36Sopenharmony_ci		};
6362306a36Sopenharmony_ci	};
64