Re: [PATCH 2/2] HID: i2c-hid: elan: Add support for Elan eKTH6915 i2c-hid touchscreens

From: Dmitry Torokhov
Date: Sun May 22 2022 - 17:31:45 EST


On Thu, May 19, 2022 at 04:00:03PM -0700, Douglas Anderson wrote:
> Like many i2c-hid touchscreen controllers, the Elan eKTH6915 has a
> reset GPIO hooked up to it. According to the datasheet, the way we're
> supposed to turn the touchscreen on is:
>
> 1. Turn on the 3.3V supply.
> 2. Turn on the IO supply. It's OK if this is hardwired to the 3.3V
> supply, but if it's not then it must be turned on _after_ the 3.3V
> supply.
> 3. Wait >= 1 ms.
> 4. Deassert the reset GPIO (reset GPIO is active low, so there would
> be a leakage path if this was deasserted _before_ the IO supply).
> 5. Wait 300 ms.
>
> Much of the above can be handled by the generic i2c-hid-of driver, but
> the "reset" GPIO is not supported by that driver. Thus we'll do the
> same as we did for Goodix and add a new tiny driver that uses the
> i2c-hid core.
>
> NOTE: support for this new touchscreen could theorically fit into the
> Goodix driver. I've made it a separate driver because the Elan driver
> supports _two_ regulators and it's unclear exactly how that would fit
> in with commit 18eeef46d359 ("HID: i2c-hid: goodix: Tie the reset line
> to true state of the regulator").
>
> Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx>

Reviewed-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

> +
> + return i2c_hid_core_probe(client, &ihid_elan->ops, 0x0001, 0);

Maybe #define for the descriptor address, or rename
elan_i2c_hid_timing_data into elan_i2c_hid_chip_data and put it there?

Thanks.

--
Dmitry