Re: Future handling of complex RGB devices on Linux v2

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

 



Hi,

Am 21.02.24 um 23:17 schrieb Pavel Machek:
Hi!

so after more feedback from the OpenRGB maintainers I came up with an even
more generic proposal:
https://gitlab.com/CalcProgrammer1/OpenRGB/-/issues/3916#note_1753072869
evaluate-set-command ioctl taking:
{
     enum command                /* one of supported_commands */
     union data
     {
         char raw[3072],
         {
             <input struct for command 0>
         },
Yeah, so ... this is not a interface. This is a backdoor to pass
arbitrary data. That's not going to fly.

For keyboards, we don't need complete new interface; we reasonable
extensions over existing display APIs -- keyboards are clearly 2D.

Maybe we should look on this from a users perspective: Running custom Animation (i.e. where treating it as a display would be helpfull) is only >one< of the ways a user might want to use the keyboard backlight.

Equally viable are for example:
- Having it mono colored.
- Playing a hardware effect
- Playing a hardware effect on one side of the keyboard while having the other side of the keyboard playing a custom animation (As I learned from the OpenRGB maintainers: There are keyboards which allow this)

There is no reason to define a custom animation as the default and then just bolt the other options on top as it might not even be possible for some devices where the firmware is plainly to slow for custom animations.

Also I still think a 2*2, 1*3 or even 1*1 matrix is not a display, coming back aground to the earlier point where I want to implement this for keyboard first, but this discussion is also thought to find a way that works for all complex RGB devices. And I don't think it is a good idea find a way that works for keyboards and then introduce again something completely new for other device categories.


Best regards,
								Pavel

Best regards,

Werner





[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