[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220502112112.3ne7zy4b6gggxzoo@houat>
Date: Mon, 2 May 2022 13:21:12 +0200
From: Maxime Ripard <maxime@...no.tech>
To: Icenowy Zheng <icenowy@...c.io>
Cc: Ruslan Zalata <rz@...micro.ru>, Guenter Roeck <linux@...ck-us.net>,
Jean Delvare <jdelvare@...e.com>, Chen-Yu Tsai <wens@...e.org>,
Jernej Skrabec <jernej.skrabec@...il.com>,
Samuel Holland <samuel@...lland.org>,
linux-kernel@...r.kernel.org, linux-hwmon@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-sunxi@...ts.linux.dev
Subject: Re: [PATCH v2] hwmon: (sun4i-lradc) Add driver for LRADC found on
Allwinner A13/A20 SoC
On Mon, May 02, 2022 at 07:15:01PM +0800, Icenowy Zheng wrote:
>
>
> 于 2022年5月2日 GMT+08:00 下午7:00:10, Maxime Ripard <maxime@...no.tech> 写到:
> >Hi,
> >
> >On Thu, Apr 28, 2022 at 09:09:03PM +0000, Ruslan Zalata wrote:
> >> Some Allwinner SoCs like A13, A20 or T2 are equipped with two-channel
> >> low rate (6 bit) ADC that is often used for extra keys. There's a driver
> >> for that already implementing standard input device, but it has these
> >> limitations: 1) it cannot be used for general ADC data equisition, and
> >> 2) it uses only one LRADC channel of two available.
> >>
> >> This driver provides basic hwmon interface to both channels of LRADC on
> >> such Allwinner SoCs.
> >>
> >> Signed-off-by: Ruslan Zalata <rz@...micro.ru>
> >> ---
> >> MAINTAINERS | 6 +
> >> drivers/hwmon/Kconfig | 13 ++
> >> drivers/hwmon/Makefile | 1 +
> >> drivers/hwmon/sun4i-lradc-hwmon.c | 280 ++++++++++++++++++++++++++++++
> >> 4 files changed, 300 insertions(+)
> >> create mode 100644 drivers/hwmon/sun4i-lradc-hwmon.c
> >>
> >> diff --git a/MAINTAINERS b/MAINTAINERS
> >> index 5e8c2f61176..d9c71e94133 100644
> >> --- a/MAINTAINERS
> >> +++ b/MAINTAINERS
> >> @@ -18861,6 +18861,12 @@ S: Maintained
> >> F: Documentation/devicetree/bindings/input/allwinner,sun4i-a10-lradc-keys.yaml
> >> F: drivers/input/keyboard/sun4i-lradc-keys.c
> >>
> >> +SUN4I LOW RES ADC HWMON DRIVER
> >> +M: Ruslan Zalata <rz@...micro.ru>
> >> +L: linux-hwmon@...r.kernel.org
> >> +S: Maintained
> >> +F: drivers/hwmon/sun4i-lradc-hwmon.c
> >> +
> >> SUNDANCE NETWORK DRIVER
> >> M: Denis Kirjanov <kda@...ux-powerpc.org>
> >> L: netdev@...r.kernel.org
> >> diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig
> >> index 68a8a27ab3b..86776488a81 100644
> >> --- a/drivers/hwmon/Kconfig
> >> +++ b/drivers/hwmon/Kconfig
> >> @@ -1691,6 +1691,19 @@ config SENSORS_SIS5595
> >> This driver can also be built as a module. If so, the module
> >> will be called sis5595.
> >>
> >> +config SENSORS_SUN4I_LRADC
> >> + tristate "Allwinner A13/A20 LRADC hwmon"
> >> + depends on ARCH_SUNXI && !KEYBOARD_SUN4I_LRADC
> >> + help
> >> + Say y here to support the LRADC found in Allwinner A13/A20 SoCs.
> >> + Both channels are supported.
> >> +
> >> + This driver can also be built as module. If so, the module
> >> + will be called sun4i-lradc-hwmon.
> >> +
> >> + This option is not compatible with KEYBOARD_SUN4I_LRADC, one
> >> + of these must be used at a time.
> >
> >How do you plan on enforcing that?
> >
> >I guess a better path forward would be to either register an hwmon
> >device in the original driver, or convert that driver to iio and use
> >iio-hwmon.
>
> I think this driver should be use IIO, and then try to probe an IIO input
> if possible.
It's been a while, but if I remember well we couldn't use IIO for that
driver because it's not generating interrupts all the time but only when
it goes over a given threshold:
https://lore.kernel.org/all/52C5E9F1.9010700@redhat.com/
I'm not sure if it's still relevant, so we might just need to add an
hwmon driver to the existing driver
Maxime
Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)
Powered by blists - more mailing lists