linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Werner Sembach <wse@tuxedocomputers.com>
To: Benjamin Tissoires <bentiss@kernel.org>
Cc: dri-devel@lists.freedesktop.org, hdegoede@redhat.com,
	jelle@vdwaa.nl, jikos@kernel.org, lee@kernel.org,
	linux-input@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-leds@vger.kernel.org, miguel.ojeda.sandonis@gmail.com,
	ojeda@kernel.org, onitake@gmail.com, pavel@ucw.cz
Subject: Re: [PATCH 0/1] platform/x86/tuxedo: Add virtual LampArray for TUXEDO NB04
Date: Sat, 28 Sep 2024 09:31:11 +0200	[thread overview]
Message-ID: <e78428cd-c0db-456a-887f-bd8cbb229a5c@tuxedocomputers.com> (raw)
In-Reply-To: <et3cv7i2lhsjoq26toweh4uv72yo34u3wqrj3q2urfnx2bhiq3@fdtkag4bcekh>

Hi Benjamin,

Am 27.09.24 um 18:08 schrieb Benjamin Tissoires:
> On Sep 26 2024, Werner Sembach wrote:
>> Hi,
>> took some time but now a first working draft of the suggested new way of
>> handling per-key RGB keyboard backlights is finished. See:
>> https://lore.kernel.org/all/1fb08a74-62c7-4d0c-ba5d-648e23082dcb@tuxedocomputers.com/
>> First time for me sending a whole new driver to the LKML, so please excuse
>> mistakes I might have made.
>>
>> Known bugs:
>> - The device has a lightbar which is currently not implemented and
>>    therefore stuck to blue once the first backlight control command is send.
>>
>> What is still missing:
>> - The leds fallback
>> - Lightbar control
>>
>> Some general noob questions:
>>
>> Initially I though it would be nice to have 2 modules, one jsut being the
>> wmi initialization and utility stuff and one just being the backlight logic
>> stuff, being loaded automatically via module_alias, but that would still
>> require me to create the virtual hid device during the wmi_ab probe, and
>> that already needs the ll_driver, so i guess I have to do it statically
>> like i did now?
>> Or in other words: I would have liked to have a module dependency graph
>> like this:
>>      tuxedo_nb04_lamp_array depends on tuxedo_nb04_platform (combining *_wmi_init and *_wmi_utility)
>> but if i currently split it into modules i would get this:
>>      tuxedo_nb04_wmi_ab_init dpends on tuxedo_nb04_wmi_ab_lamp_array depends on tuxedo_nb04_wmi_utility
> On more general question to you: how much confident are you about your
> LampArray implementation?
>
> If you still need to add/fix stuff in it, I would advise you to have a
> simple HID device, with bare minimum functionality, and then add the
> LampArray functionality on top through HID-BPF. This way you can fix
> LampArray out of band with the kernel, while having a more stable kernel
> module. This should be possible with v6.11+.
>
> Another solution is to still have your wmi-to-hid module, and then a
> HID kernel module in drivers/hid that supports LampArray.
>
> But I would strongly suggest while you are figuring out the userspace
> part to stick to HID-BPF, and then once you are happy we can move to a
> full kernel module.

I don't expect this patch to get merged right away, but like i wrote, 
wanted to collect some feedback on it to already start refining it.

With this driver now functional I have something to build and test 
userspace against while waiting on the feedback and the undoubtly 
following discussion of details to get it right ^^.

Until now I only tested with a very simple, self built command line 
binary, looping some patterns. My next step is to try the work in 
progress implementetion for LampArray in OpenRGB: 
https://gitlab.com/CalcProgrammer1/OpenRGB/-/merge_requests/2348

Regards,

Werner

>
> Cheers,
> Benjamin
>
>> Currently after creating the virtual hdev in the wmi init probe function I
>> have to keep track of it and manually destroy it during the wmi init
>> remove. Can this be automated devm_kzalloc-style?
>>
>> Kind regards,
>> Werner Sembach
>>
>>

      parent reply	other threads:[~2024-09-28  7:31 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-26 17:44 [PATCH 0/1] platform/x86/tuxedo: Add virtual LampArray for TUXEDO NB04 Werner Sembach
2024-09-26 17:44 ` [PATCH 1/1] platform/x86/tuxedo: Add virtual LampArray for TUXEDO NB04 devices Werner Sembach
2024-09-26 18:39   ` Armin Wolf
2024-09-27  6:59     ` Werner Sembach
2024-09-27 11:24       ` Werner Sembach
2024-09-27 17:18         ` Armin Wolf
2024-09-28  7:40           ` Werner Sembach
2024-09-27 17:15       ` Armin Wolf
2024-09-28  7:36         ` Werner Sembach
2024-09-27  8:59   ` kernel test robot
2024-09-27  9:20   ` kernel test robot
2024-09-27 12:18   ` kernel test robot
2024-09-27 21:01   ` Pavel Machek
2024-09-27 22:21     ` Armin Wolf
2024-09-28  7:27       ` Benjamin Tissoires
2024-09-28  8:23         ` Werner Sembach
2024-09-28 10:05           ` Benjamin Tissoires
2024-09-30 15:35             ` Werner Sembach
2024-09-30 16:15               ` Benjamin Tissoires
2024-09-30 16:35                 ` Werner Sembach
2024-09-30 17:06                   ` Benjamin Tissoires
2024-10-01 12:23                     ` Werner Sembach
2024-10-01 12:28                       ` Werner Sembach
2024-10-01 13:41                       ` Benjamin Tissoires
2024-10-01 16:45                         ` Armin Wolf
2024-10-01 19:32                           ` Werner Sembach
2024-10-02  8:42                             ` Benjamin Tissoires
2024-10-02  9:27                               ` Armin Wolf
2024-10-03 16:01                                 ` Benjamin Tissoires
2024-10-01 19:18                         ` Werner Sembach
2024-10-02  8:31                           ` Benjamin Tissoires
2024-10-07 17:57                             ` Werner Sembach
2024-10-08  9:53                               ` Benjamin Tissoires
2024-10-08 10:45                                 ` Werner Sembach
2024-10-08 12:18                                   ` Benjamin Tissoires
2024-10-08 14:51                                     ` Werner Sembach
2024-10-08 15:21                                       ` Benjamin Tissoires
2024-10-09  9:55                                         ` Werner Sembach
2024-10-11 12:14                                           ` Armin Wolf
2024-10-11 15:26                                             ` Pavel Machek
2024-10-21 20:26                                               ` Armin Wolf
2024-10-22  7:58                                                 ` Hans de Goede
2024-10-22  8:51                                                   ` Benjamin Tissoires
2024-10-22  9:37                                                     ` Pavel Machek
2024-10-22 15:02                                                       ` Armin Wolf
2024-10-23 17:54                                                         ` Werner Sembach
2024-10-22  9:47                                                   ` Pavel Machek
2024-10-22 15:18                                                     ` Armin Wolf
2024-10-22 19:15                                                       ` Pavel Machek
2024-10-23  7:03                                                         ` Armin Wolf
2024-10-23 17:14                                                         ` Werner Sembach
2024-10-23 17:47                                                           ` Pavel Machek
2024-10-23 16:38                                                     ` Werner Sembach
2024-10-22  9:05                                           ` Benjamin Tissoires
2024-10-23 17:23                                             ` Werner Sembach
2024-10-01 21:03                         ` Pavel Machek
2024-10-02  8:13                           ` Benjamin Tissoires
2024-10-02  9:53                             ` Pavel Machek
2024-10-02 10:21                               ` Benjamin Tissoires
2024-10-03 10:59                                 ` Pavel Machek
2024-10-03 12:54                                   ` Benjamin Tissoires
2024-10-11 15:23                                     ` Pavel Machek
2024-09-28  8:09       ` Werner Sembach
2024-10-01 20:47         ` Pavel Machek
2024-09-28  7:55     ` Werner Sembach
2024-09-27 16:08 ` [PATCH 0/1] platform/x86/tuxedo: Add virtual LampArray for TUXEDO NB04 Benjamin Tissoires
2024-09-27 21:03   ` Pavel Machek
2024-09-28  7:31   ` Werner Sembach [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e78428cd-c0db-456a-887f-bd8cbb229a5c@tuxedocomputers.com \
    --to=wse@tuxedocomputers.com \
    --cc=bentiss@kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hdegoede@redhat.com \
    --cc=jelle@vdwaa.nl \
    --cc=jikos@kernel.org \
    --cc=lee@kernel.org \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=miguel.ojeda.sandonis@gmail.com \
    --cc=ojeda@kernel.org \
    --cc=onitake@gmail.com \
    --cc=pavel@ucw.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).