Re: [PATCH] ALSA: hda/ca0132: Add Sound BlasterX AE-5 external RGB LED strip support
From: Takashi Iwai
Date: Wed Sep 30 2026 - 10:09:14 EST
On Tue, 29 Sep 2026 16:22:07 +0200,
dchristensen8 wrote:
>
> Thanks for the quick review!
>
> I went with sysfs mainly because of the streaming nature of WS2812 strips (using an atomic DMA frame):
>
> -The LED subsystem has no strip or pixel-buffer concept, individual led_classdevs would hit sysfs with thousands of writes/sec at 30-60 FPS (and leds-class.rst advises against it for addressable arrays anyway).
> -An ALSA kcontrol could hold raw bytes, but pushing frames at 60 Hz spams control change events to PipeWire/PulseAudio.
>
> I initially went with text attributes (ae5_strip_leds/ae5_strip_num_leds) so basic shell scripts could just echo colors into it, but I know comma-separated lists bend the "one value per file" rule. Would you prefer a bin_attribute for raw RGB bytes instead? or keeping both?
>
> All your code points make total sense too. I have no objections.
>
> Let me know your thoughts on the sysfs format.
On the second though, why not simply to use an ALSA control element
with bytes data? It can hold up to 512 bytes, so 100 of 24bit RGB
strips can fit.
You can declare the element as volatile (and with IFACE_CARD), so that
pipewire or alsactl won't be bothered by the changes.
thanks,
Takashi