[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20221024140001.139111-1-job@noorman.info>
Date: Mon, 24 Oct 2022 15:59:56 +0200
From: Job Noorman <job@...rman.info>
To: Job Noorman <job@...rman.info>,
Dmitry Torokhov <dmitry.torokhov@...il.com>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Andy Gross <agross@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konrad.dybcio@...ainline.org>,
Henrik Rydberg <rydberg@...math.org>
Cc: Luca Weiss <luca@...tu.xyz>, linux-input@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-arm-msm@...r.kernel.org
Subject: [PATCH v6 0/3] Add Himax hx83112b touchscreen driver
Hi all,
This series adds support for the Himax hx83112b. The hx83112b supports 10
point multitouch with hardware tracking of touch points. It is the
touchschreen used by the Fairphone 3.
Note that a datasheet was unavailable for this device, so it was built
based on the Android driver that was tagged as GPLv2. This series is a
complete rewrite, though, and the code bears no resemblence to the original
implementation.
It is expected that this driver can be made to work on other hx83xxx
devices, especially the hx83112a used in the Fairphone 4. However, since we
have been unable to verify this, this driver only declares compatibility
with the hx83112b and uses very specific file names.
Changes since v5 (based on Jeff LaBundy's 3rd round of comments):
- Consistently reuse local variable dev in himax_probe()
Changes since v4 (based on Jeff LaBundy's 2nd round of comments):
- Kconfig: depend on I2C and select REGMAP_I2C
- Don't suppress dev_err() on EPROBE_DEFER
- Some minor coding style updates
Changes since v3 (based on Dmitry Torokhov's comments):
- Use gpiod_set_value_cansleep (instead of gpiod_set_value) during probe
- Inline some small helper functions
- Use DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
- Use PTR_ERR_OR_ZERO instead of IS_ERR+PTR_ERR
- Some minor coding style updates (e.g., use C-style comments)
Changes since v2 (based on Jeff LaBundy's comments):
- Kconfig: depend on REGMAP_I2C instead of I2C
- Don't use dev_err_probe()
- Return IRQ_NONE on failed register reads to prevent possible interrupt
storm
- Add small delay after de-asserting reset pin
- Some minor coding style updates
- dt-bindings: make touchscreen-size-{x,y} required
Changes since v1:
- Fix sparse warnings. Reported-by: kernel test robot <lkp@...el.com>.
- Fix dt_binding_check.
Best regards,
Job
Previous versions:
- v5: https://lore.kernel.org/lkml/20221023163032.144150-1-job@noorman.info/
- v4: https://lore.kernel.org/lkml/20221017100409.189293-1-job@noorman.info/
- v3: https://lore.kernel.org/lkml/20221016102756.40345-1-job@noorman.info/
- v2: https://lore.kernel.org/lkml/20221012202341.295351-1-job@noorman.info/
- v1: https://lore.kernel.org/lkml/20221011190729.14747-1-job@noorman.info/
Job Noorman (3):
dt-bindings: touchscreen: add Himax hx83112b bindings
Input: add driver for Himax hx83112b touchscreen devices
arm64: dts: qcom: sdm632: fairphone-fp3: add touchscreen
.../input/touchscreen/himax,hx83112b.yaml | 63 +++
MAINTAINERS | 7 +
.../boot/dts/qcom/sdm632-fairphone-fp3.dts | 14 +
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen/Makefile | 1 +
drivers/input/touchscreen/himax_hx83112b.c | 361 ++++++++++++++++++
6 files changed, 458 insertions(+)
create mode 100644 Documentation/devicetree/bindings/input/touchscreen/himax,hx83112b.yaml
create mode 100644 drivers/input/touchscreen/himax_hx83112b.c
base-commit: 8b96465c93a8c0f85ead5b3f8d4305beac97899e
--
2.38.1
Powered by blists - more mailing lists