ImmortalWrt/package/kernel
Roland Reinl 0682974aa8 filogic: Add LED driver for GCA230718
Add basic support for the LED driver for GCA230718.

 - I didn't find any documentation or driver for it, so the information below is purely based on my investigations
 - If there is already I driver for it, please tell me. Maybe I didn't search enough
 - I implemented a kernel module (leds-gca230718) to access the LEDs via DTS
 - The LED controller supports PWM for brightness control and ramp control for smooth blinking. This is not implemented in the driver
 - The LED controller supports toggling (on -> off -> on -> off) where the brightness of the LEDs can be set individually for each on cycle
 - Until now, only simple active/inactive control is implemented (like when the LEDs would have been connected via GPIO)
 - Controlling the LEDs requires three sequences sent to the chip. Each sequence consists of
   - A reset command (0x81 0xE4) written to register 0x00
   - A control command (for example 0x0C 0x02 0x01 0x00 0x00 0x00 0xFF 0x01 0x00 0x00 0x00 0xFF 0x87 written to register 0x03)
 - The reset command is always the same
 - In the control command
   - byte 0 is always the same
   - byte 1 (0x02 in the example above) must be changed in every sequence: 0x02 -> 0x01 -> 0x03)
   - byte 2 is set to 0x01 which disables toggling. 0x02 would be LED toggling without ramp control, 0x03 would be toggling with ramp control
   - byte 3 to 6 define the brightness values for the LEDs (R,G,B,W) for the first on cycle when toggling
   - byte 7 defines the toggling frequency (if toggling enabled)
   - byte 8 to 11 define the brightness values for the LEDs (R,G,B,W) for the second on cycle when toggling
   - byte 12 is constant 0x87

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
2024-03-31 19:01:19 +02:00
..
ath10k-ct treewide: use APK compatible version schema 2024-03-22 22:14:22 +01:00
bcm27xx-gpu-fw bcm27xx-gpu-fw: update to latest version 2024-01-16 13:57:14 +01:00
bcm63xx-cfe treewide: update PKG_MIRROR_HASH after APK version schema 2024-03-25 09:32:48 +01:00
bpf-headers bpf-headers: Fix download URL with kernel 6.1 2023-11-06 23:20:14 +01:00
button-hotplug button-hotplug: simplify build 2022-10-24 20:49:34 +02:00
cryptodev-linux cryptodev-linux: update to 1.13 2024-03-06 10:17:45 +01:00
dtc/patches package: kernel: dtc: Add DTO support 2017-11-06 16:39:41 +01:00
gpio-button-hotplug gpio-button-hotplug: fix 6.2 build failure 2024-03-11 20:17:26 +01:00
gpio-nct5104d kernel: move gpio packages to gpio menu 2024-02-01 17:04:54 +01:00
lantiq kernel: lantiq: ltq-vmmc: introduce user group for vmmc 2024-03-03 15:44:52 +00:00
leds-gca230718 filogic: Add LED driver for GCA230718 2024-03-31 19:01:19 +02:00
leds-ws2812b kernel: leds-ws2812b: fix build with Linux >= 5.18 2023-07-08 15:10:12 +01:00
linux kernel: kmod-phy-smsc: add dependency on crc16 2024-03-29 17:32:26 +01:00
mac80211 mac80211: carl9170: re-fix fortified-memset warning 2024-03-23 14:26:05 +01:00
mt76 treewide: use APK compatible version schema 2024-03-22 22:14:22 +01:00
mt7621-qtn-rgmii mt7621-qtn-rgmii: enable RGMII connected Quantenna QV840 2020-07-08 16:07:05 +02:00
mwlwifi treewide: update PKG_MIRROR_HASH after APK version schema 2024-03-25 09:32:48 +01:00
nat46 treewide: use APK compatible version schema 2024-03-22 22:14:22 +01:00
qca-nss-dp treewide: update PKG_MIRROR_HASH after APK version schema 2024-03-25 09:32:48 +01:00
qca-ssdk kernel: qca-ssdk: fix C45 MDIO support on kernel 6.6 2024-03-26 18:10:50 +01:00
rtc-rv5c386a kernel: Make use of KERNEL_MAKE 2022-12-17 20:12:31 +01:00
rtl8812au-ct treewide: use APK compatible version schema 2024-03-22 22:14:22 +01:00
trelay package: drop PKG_VERSION for purely local packages 2020-07-15 18:33:56 +02:00
ubnt-ledbar ubnt-ledbar: depend on mediatek and ramips subtargets 2023-05-24 00:56:54 +02:00
ubootenv-nvram kernel: ubootenv-nvram: driver for RAM backed environments 2023-08-20 01:14:06 +02:00