brintos

brintos / linux-shallow public Read only

0
0
Text · 2.9 KiB · 211ffc3 Raw
144 lines · plain
1LEDs connected to Broadcom BCM6358 controller2 3This controller is present on BCM6358 and BCM6368.4In these SoCs there are Serial LEDs (LEDs connected to a 74x164 controller),5which can either be controlled by software (exporting the 74x164 as spi-gpio.6See Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml), or7by hardware using this driver.8 9Required properties:10  - compatible : should be "brcm,bcm6358-leds".11  - #address-cells : must be 1.12  - #size-cells : must be 0.13  - reg : BCM6358 LED controller address and size.14 15Optional properties:16  - brcm,clk-div : SCK signal divider. Possible values are 1, 2, 4 and 8.17    Default : 118  - brcm,clk-dat-low : Boolean, makes clock and data signals active low.19    Default : false20 21Each LED is represented as a sub-node of the brcm,bcm6358-leds device.22 23LED sub-node required properties:24  - reg : LED pin number (only LEDs 0 to 31 are valid).25 26LED sub-node optional properties:27  - label : see Documentation/devicetree/bindings/leds/common.txt28  - default-state : see29    Documentation/devicetree/bindings/leds/common.txt30  - linux,default-trigger : see31    Documentation/devicetree/bindings/leds/common.txt32 33Examples:34Scenario 1 : BCM635835	leds0: led-controller@fffe00d0 {36		compatible = "brcm,bcm6358-leds";37		#address-cells = <1>;38		#size-cells = <0>;39		reg = <0xfffe00d0 0x8>;40 41		alarm_white {42			reg = <0>;43			active-low;44			label = "white:alarm";45		};46		tv_white {47			reg = <2>;48			active-low;49			label = "white:tv";50		};51		tel_white {52			reg = <3>;53			active-low;54			label = "white:tel";55		};56		adsl_white {57			reg = <4>;58			active-low;59			label = "white:adsl";60		};61	};62 63Scenario 2 : BCM636864	leds0: led-controller@100000d0 {65		compatible = "brcm,bcm6358-leds";66		#address-cells = <1>;67		#size-cells = <0>;68		reg = <0x100000d0 0x8>;69		brcm,pol-low;70		brcm,clk-div = <4>;71 72		power_red {73			reg = <0>;74			active-low;75			label = "red:power";76		};77		power_green {78			reg = <1>;79			active-low;80			label = "green:power";81			default-state = "on";82		};83		power_blue {84			reg = <2>;85			label = "blue:power";86		};87		broadband_red {88			reg = <3>;89			active-low;90			label = "red:broadband";91		};92		broadband_green {93			reg = <4>;94			label = "green:broadband";95		};96		broadband_blue {97			reg = <5>;98			active-low;99			label = "blue:broadband";100		};101		wireless_red {102			reg = <6>;103			active-low;104			label = "red:wireless";105		};106		wireless_green {107			reg = <7>;108			active-low;109			label = "green:wireless";110		};111		wireless_blue {112			reg = <8>;113			label = "blue:wireless";114		};115		phone_red {116			reg = <9>;117			active-low;118			label = "red:phone";119		};120		phone_green {121			reg = <10>;122			active-low;123			label = "green:phone";124		};125		phone_blue {126			reg = <11>;127			label = "blue:phone";128		};129		upgrading_red {130			reg = <12>;131			active-low;132			label = "red:upgrading";133		};134		upgrading_green {135			reg = <13>;136			active-low;137			label = "green:upgrading";138		};139		upgrading_blue {140			reg = <14>;141			label = "blue:upgrading";142		};143	};144