Re: Clarification questions regarding multicolor leds

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi!
> 
> I'm currently implementing the multicolors sysfs leds interface for several
> Clevo and Tongfang barebones, but I'm unsure how to actually map the leds to
> the multicolor interface:
> 
> The keyboards come in 5 variants:
> 
> Single zone RGB + Brightness
> 
> Single Zone RGB
> 
> 3 Zone RGB + Shared Brightness
> 
> Per Key RGB
> 
> Per Key RGB + Shared Brightness
> 
> First question: How do I map multiple zones or per-key leds?
> 
> Should I register a seperate ::kbd_backlight for zone/key? resulting in
> ::kbd_backlight, ::kbd_backlight_1, ::kbd_backlight_2, ::kbd_backlight_3,
> etc?

For a zone, yes.

> Should I give them more desciptive names like ::kbd_backlight_left,
> ::kbd_backlight_center, ::kbd_backlight_right, ::kbd_backlight_a,
> ::kbd_backlight_b, ::kbd_backlight_enter?
> 
> Or Should I only create a single ::kbd_backlight instance and map the
> different zones to subleds? So there are number of zones * 3 subleds, with
> each tripplet controlling the rgb values of one zone/key? This would help
> performance, as for the per-key backlight, the firmware in the backend wants
> an array for all keys at once. So setting each key seperatly would mean
> sending the whole array for each key individually. And I think what most
> people want to do is to set the whole keyboard at once anyway and nit key by
> key.

Not sure what to do there. And not sure if LED subsystem is suitable
for this, actually. This starts to look like a display...

> Second question: For the keyboards with shared brightness, is it ok to have
> the brightness values of ::kbd_backlight, ::kbd_backlight_1 etc. just in
> sync? I did not see a way to have a ::kbd_backlight without the brightness
> sysfs entry (then I would have just given the brightness switch to
> ::kbd_backlight and not to ::kbd_backlight_1 and ::kbd_backlight_2)

Can we simply ignore shared brightness to get reasonable API?

> Third question: The 3 zone RGB and the per-key keyboards have firmware
> accelerated modes, like breathing and rainbow. How do I make them accessible
> via the multicolor leds interface? the blinking pattern interface does not
> really match the usecase as these modes are a simple single value toggle
> (0=static color, 1=breathing, 2=ignore color settings and play predefined
> moving rainbow pattern, etc).

Take a look at drivers/leds/trigger/ledtrig-pattern.c . That's
interface we'd like.

Best regards,
								Pavel
-- 
People of Russia, stop Putin before his war on Ukraine escalates.

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux