From: "Heiko Stübner" <heiko@sntech.de>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Cc: kernel@collabora.com, linux-input@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org,
Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Subject: Re: [PATCH 2/4] Input: adc-keys - support types that aren't just keyboard keys
Date: Mon, 30 Jun 2025 13:49:21 +0200 [thread overview]
Message-ID: <10163666.lvqk35OSZv@diego> (raw)
In-Reply-To: <20250630-rock4d-audio-v1-2-0b3c8e8fda9c@collabora.com>
Am Montag, 30. Juni 2025, 12:19:25 Mitteleuropäische Sommerzeit schrieb Nicolas Frattaroli:
> Instead of doing something like what gpio-keys is doing, adc-keys
> hardcodes that all keycodes must be of type EV_KEY.
>
> This limits the usefulness of adc-keys, and overcomplicates the code
> with manual bit-setting logic.
>
> Instead, refactor the code to read the linux,input-type fwnode property,
> and get rid of the custom bit setting logic, replacing it with
> input_set_capability instead. input_report_key is replaced with
> input_event, which allows us to explicitly pass the type.
>
> Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
> ---
> drivers/input/keyboard/adc-keys.c | 16 ++++++++++++----
> 1 file changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/input/keyboard/adc-keys.c b/drivers/input/keyboard/adc-keys.c
> index f1753207429db02ce6510e5ec0da9b24d9edb61d..339dd4d4a0842108da2c6136b1e0098cd1f6a3cd 100644
> --- a/drivers/input/keyboard/adc-keys.c
> +++ b/drivers/input/keyboard/adc-keys.c
> @@ -19,12 +19,14 @@
> struct adc_keys_button {
> u32 voltage;
> u32 keycode;
nit: consistency ... the above is still "keycode"
Naming things "code" like in gpio-keys might make sense maybe?
Though I guess, it could also just be needless churn
> + u32 type;
> };
>
> struct adc_keys_state {
> struct iio_channel *channel;
> u32 num_keys;
> u32 last_key;
^^ same
I'v checked that the function transistions
- __set_bit -> input_set_capability
- input_report_key -> input_event
do the right thing,
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
WARNING: multiple messages have this Message-ID (diff)
From: "Heiko Stübner" <heiko@sntech.de>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-rockchip@lists.infradead.org, linux-input@vger.kernel.org,
kernel@collabora.com, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 2/4] Input: adc-keys - support types that aren't just keyboard keys
Date: Mon, 30 Jun 2025 13:49:21 +0200 [thread overview]
Message-ID: <10163666.lvqk35OSZv@diego> (raw)
In-Reply-To: <20250630-rock4d-audio-v1-2-0b3c8e8fda9c@collabora.com>
Am Montag, 30. Juni 2025, 12:19:25 Mitteleuropäische Sommerzeit schrieb Nicolas Frattaroli:
> Instead of doing something like what gpio-keys is doing, adc-keys
> hardcodes that all keycodes must be of type EV_KEY.
>
> This limits the usefulness of adc-keys, and overcomplicates the code
> with manual bit-setting logic.
>
> Instead, refactor the code to read the linux,input-type fwnode property,
> and get rid of the custom bit setting logic, replacing it with
> input_set_capability instead. input_report_key is replaced with
> input_event, which allows us to explicitly pass the type.
>
> Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
> ---
> drivers/input/keyboard/adc-keys.c | 16 ++++++++++++----
> 1 file changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/input/keyboard/adc-keys.c b/drivers/input/keyboard/adc-keys.c
> index f1753207429db02ce6510e5ec0da9b24d9edb61d..339dd4d4a0842108da2c6136b1e0098cd1f6a3cd 100644
> --- a/drivers/input/keyboard/adc-keys.c
> +++ b/drivers/input/keyboard/adc-keys.c
> @@ -19,12 +19,14 @@
> struct adc_keys_button {
> u32 voltage;
> u32 keycode;
nit: consistency ... the above is still "keycode"
Naming things "code" like in gpio-keys might make sense maybe?
Though I guess, it could also just be needless churn
> + u32 type;
> };
>
> struct adc_keys_state {
> struct iio_channel *channel;
> u32 num_keys;
> u32 last_key;
^^ same
I'v checked that the function transistions
- __set_bit -> input_set_capability
- input_report_key -> input_event
do the right thing,
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
next prev parent reply other threads:[~2025-06-30 12:20 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-30 10:19 [PATCH 0/4] ROCK 4D audio enablement Nicolas Frattaroli
2025-06-30 10:19 ` Nicolas Frattaroli
2025-06-30 10:19 ` [PATCH 1/4] dt-bindings: input: adc-keys: allow linux,input-type property Nicolas Frattaroli
2025-06-30 10:19 ` Nicolas Frattaroli
2025-06-30 11:37 ` Heiko Stübner
2025-06-30 11:37 ` Heiko Stübner
2025-06-30 10:19 ` [PATCH 2/4] Input: adc-keys - support types that aren't just keyboard keys Nicolas Frattaroli
2025-06-30 10:19 ` Nicolas Frattaroli
2025-06-30 11:49 ` Heiko Stübner [this message]
2025-06-30 11:49 ` Heiko Stübner
2025-10-28 21:32 ` Dragan Simic
2025-10-28 21:32 ` Dragan Simic
2025-12-15 11:10 ` Nicolas Frattaroli
2025-12-15 11:10 ` Nicolas Frattaroli
2025-06-30 10:19 ` [PATCH 3/4] arm64: dts: rockchip: add analog audio to ROCK 4D Nicolas Frattaroli
2025-06-30 10:19 ` Nicolas Frattaroli
2025-07-02 9:49 ` Cristian Ciocaltea
2025-07-02 9:49 ` Cristian Ciocaltea
2025-06-30 10:19 ` [PATCH 4/4] arm64: dts: rockchip: add HDMI audio on " Nicolas Frattaroli
2025-06-30 10:19 ` Nicolas Frattaroli
2025-07-02 8:57 ` Cristian Ciocaltea
2025-07-02 8:57 ` Cristian Ciocaltea
2025-07-10 9:27 ` (subset) [PATCH 0/4] ROCK 4D audio enablement Heiko Stuebner
2025-07-10 9:27 ` Heiko Stuebner
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=10163666.lvqk35OSZv@diego \
--to=heiko@sntech.de \
--cc=alexandre.belloni@bootlin.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.torokhov@gmail.com \
--cc=kernel@collabora.com \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=nicolas.frattaroli@collabora.com \
--cc=robh@kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.