forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
145 lines
3.0 KiB
145 lines
3.0 KiB
LEDs connected to Broadcom BCM6358 controller |
|
|
|
This controller is present on BCM6358 and BCM6368. |
|
In these SoCs there are Serial LEDs (LEDs connected to a 74x164 controller), |
|
which can either be controlled by software (exporting the 74x164 as spi-gpio. |
|
See Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml), or |
|
by hardware using this driver. |
|
|
|
Required properties: |
|
- compatible : should be "brcm,bcm6358-leds". |
|
- #address-cells : must be 1. |
|
- #size-cells : must be 0. |
|
- reg : BCM6358 LED controller address and size. |
|
|
|
Optional properties: |
|
- brcm,clk-div : SCK signal divider. Possible values are 1, 2, 4 and 8. |
|
Default : 1 |
|
- brcm,clk-dat-low : Boolean, makes clock and data signals active low. |
|
Default : false |
|
|
|
Each LED is represented as a sub-node of the brcm,bcm6358-leds device. |
|
|
|
LED sub-node required properties: |
|
- reg : LED pin number (only LEDs 0 to 31 are valid). |
|
|
|
LED sub-node optional properties: |
|
- label : see Documentation/devicetree/bindings/leds/common.txt |
|
- active-low : Boolean, makes LED active low. |
|
Default : false |
|
- default-state : see |
|
Documentation/devicetree/bindings/leds/common.txt |
|
- linux,default-trigger : see |
|
Documentation/devicetree/bindings/leds/common.txt |
|
|
|
Examples: |
|
Scenario 1 : BCM6358 |
|
leds0: led-controller@fffe00d0 { |
|
compatible = "brcm,bcm6358-leds"; |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
reg = <0xfffe00d0 0x8>; |
|
|
|
alarm_white { |
|
reg = <0>; |
|
active-low; |
|
label = "white:alarm"; |
|
}; |
|
tv_white { |
|
reg = <2>; |
|
active-low; |
|
label = "white:tv"; |
|
}; |
|
tel_white { |
|
reg = <3>; |
|
active-low; |
|
label = "white:tel"; |
|
}; |
|
adsl_white { |
|
reg = <4>; |
|
active-low; |
|
label = "white:adsl"; |
|
}; |
|
}; |
|
|
|
Scenario 2 : BCM6368 |
|
leds0: led-controller@100000d0 { |
|
compatible = "brcm,bcm6358-leds"; |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
reg = <0x100000d0 0x8>; |
|
brcm,pol-low; |
|
brcm,clk-div = <4>; |
|
|
|
power_red { |
|
reg = <0>; |
|
active-low; |
|
label = "red:power"; |
|
}; |
|
power_green { |
|
reg = <1>; |
|
active-low; |
|
label = "green:power"; |
|
default-state = "on"; |
|
}; |
|
power_blue { |
|
reg = <2>; |
|
label = "blue:power"; |
|
}; |
|
broadband_red { |
|
reg = <3>; |
|
active-low; |
|
label = "red:broadband"; |
|
}; |
|
broadband_green { |
|
reg = <4>; |
|
label = "green:broadband"; |
|
}; |
|
broadband_blue { |
|
reg = <5>; |
|
active-low; |
|
label = "blue:broadband"; |
|
}; |
|
wireless_red { |
|
reg = <6>; |
|
active-low; |
|
label = "red:wireless"; |
|
}; |
|
wireless_green { |
|
reg = <7>; |
|
active-low; |
|
label = "green:wireless"; |
|
}; |
|
wireless_blue { |
|
reg = <8>; |
|
label = "blue:wireless"; |
|
}; |
|
phone_red { |
|
reg = <9>; |
|
active-low; |
|
label = "red:phone"; |
|
}; |
|
phone_green { |
|
reg = <10>; |
|
active-low; |
|
label = "green:phone"; |
|
}; |
|
phone_blue { |
|
reg = <11>; |
|
label = "blue:phone"; |
|
}; |
|
upgrading_red { |
|
reg = <12>; |
|
active-low; |
|
label = "red:upgrading"; |
|
}; |
|
upgrading_green { |
|
reg = <13>; |
|
active-low; |
|
label = "green:upgrading"; |
|
}; |
|
upgrading_blue { |
|
reg = <14>; |
|
label = "blue:upgrading"; |
|
}; |
|
};
|
|
|