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