[PATCH 2/2] arm64: dts: qcom: x1e80100-dell-inspiron-14-plus-7441: fix touchscreen i2c address

From: Charlie Garner

Date: Wed Sep 23 2026 - 11:42:29 EST


The touchscreen is at i2c address 0x09, not 0x10. Nothing responds at 0x10,
so i2c_hid_of never probes and the panel does not work. tlmm pin 51, the
touchscreen interrupt, is left unclaimed as a result.

Scanning the bus shows only 0x09 responding (0x28 also ACKs but returns
zeros, presumably an alternate address on the same controller). Linux bus
0 here is the GENI I2C controller at 0xa80000, which is i2c8 in the DT:

# i2cdetect -y -r 0
00: -- 09 -- -- -- -- -- --
...

and 0x09 returns a valid HID-over-I2C descriptor:

1e 00 descriptor length 30
00 01 bcdVersion 1.00
6b 03 report descriptor length 875
...
bd 29 vendor 0x29bd
03 11 product 0x1103

whose report descriptor opens as a Windows Precision touchscreen:

05 0d Usage Page (Digitizer)
09 04 Usage (Touch Screen)
a1 01 Collection (Application)
85 10 Report ID (0x10)
05 0d Usage Page (Digitizer)
09 22 Usage (Finger)
a1 02 Collection (Logical)
09 42 Usage (Tip Switch)
... Contact Id, 16-bit X/Y, unit exponent -3

The firmware agrees. The DSDT describes one touchscreen, \_SB.TSC1, on
I2C9 (QUP_1_SE_0 at 0xa80000, i2c8 here) with its interrupt on GPIO 51.
Its _HID, slave address and HID descriptor address are placeholders that
UEFI fills in at boot, and on this machine they read LXST2021, 0x09 and
0x0001. Nothing at 0x28 is described. The Latitude 7455 DT already has the
same LXST2021 touchscreen at 0x09.

The original touchscreen@10 node is identical to the ones in
x1-crd.dtsi, x1e80100-dell-xps13-9345.dts and
x1e78100-lenovo-thinkpad-t14s.dtsi, which the Inspiron DT was based on.

Rename the node to match the corrected unit address.

Fixes: e7733b42111c ("arm64: dts: qcom: Add support for Dell Inspiron 7441 / Latitude 7455")
Signed-off-by: Charlie Garner <charlie@xxxxxxx>
---

Notes:
As far as I know, no Inspiron 14 Plus 7441 has its touchscreen at 0x10.
The 7441 ships with a single touch display option, but the DSDT address is
filled in by UEFI per unit, so please say if you have one that differs.

.../boot/dts/qcom/x1e80100-dell-inspiron-14-plus-7441.dts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/x1e80100-dell-inspiron-14-plus-7441.dts b/arch/arm64/boot/dts/qcom/x1e80100-dell-inspiron-14-plus-7441.dts
index 5779a4e84522..edbba5101b82 100644
--- a/arch/arm64/boot/dts/qcom/x1e80100-dell-inspiron-14-plus-7441.dts
+++ b/arch/arm64/boot/dts/qcom/x1e80100-dell-inspiron-14-plus-7441.dts
@@ -37,9 +37,9 @@ &gpu_zap_shader {
};

&i2c8 {
- touchscreen@10 {
+ touchscreen@9 {
compatible = "hid-over-i2c";
- reg = <0x10>;
+ reg = <0x9>;

hid-descr-addr = <0x1>;
interrupts-extended = <&tlmm 51 IRQ_TYPE_LEVEL_LOW>;
--
2.55.0