From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 370C4FED2F0 for ; Thu, 12 Mar 2026 08:38:42 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 986B410EA27; Thu, 12 Mar 2026 08:38:41 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.b="ZzgcgZmO"; dkim-atps=neutral Received: from tor.source.kernel.org (tor.source.kernel.org [172.105.4.254]) by gabe.freedesktop.org (Postfix) with ESMTPS id CEF7810EA2B for ; Thu, 12 Mar 2026 08:38:39 +0000 (UTC) Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id 0910960054; Thu, 12 Mar 2026 08:38:39 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5B556C4CEF7; Thu, 12 Mar 2026 08:38:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773304718; bh=lVCL656zwydocIkq3HCmMJ6cy3GRmtg1VVwKii+InZ8=; h=Date:Subject:Cc:From:To:From; b=ZzgcgZmOIE0slOx1hQlZ0pzO8XOx4swRFDESNLBlK/zceG4kl42wsYBz0rJOtpDYT gat5Iqckzcky2F5eUJq6Tya7aELL4r7GIAjIinwSRSlRZx4BY7pJX9k1/fiXm8+j8E Qi4Sr+4cdhrUWtfnO6S+JwGlOn6/D4ZXcvSgILkx2B8v/weEQkZ2xJ/qMrqasNvmdS gtXB3rzOltY8iXY1DMyY4RxJ0VesfZaTeiuHAz09CZdTEeYVbZjmniyxgGfJEL2OUX +al+pEe/uA1RfoyY6/tzE8Mky6775rXfrynBvILTGp7SCqQZgSmQdg4+WRPbxRh2c+ 4HH6zRHJSLu3Q== Mime-Version: 1.0 Content-Type: multipart/signed; boundary=edc915a6bded4337b39d565483d31da1ecd8aeaa66f9ec3b9cff8e37c715; micalg=pgp-sha384; protocol="application/pgp-signature" Date: Thu, 12 Mar 2026 09:37:36 +0100 Message-Id: Subject: Re: [PATCH 0/2] ili9806e: Add Densitron DMT050WVNMCMI-1A to ILI9806E DSI driver Cc: "Saravana Kannan" From: "Michael Walle" To: =?utf-8?q?Bartholom=C3=A4us_Steinmayr?= , X-Mailer: aerc 0.20.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" --edc915a6bded4337b39d565483d31da1ecd8aeaa66f9ec3b9cff8e37c715 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Hi, [now with Saravana's correct mail, sorry for the noise] [+ Saravana] On Wed Mar 11, 2026 at 4:54 PM CET, Bartholom=C3=A4us Steinmayr wrote: > this patch series adds support for the Densitron DMT050WVNMCMI-1A panel= =20 > to the ILI9806E DSI driver. The patch mainly contains initialization=20 > code for the panel.=20 > > However, the display also has a peculiarity which required some more=20 > changes to the driver. The display contains a Goodix GT911 touchpanel=20 > controller. The GT911 and ILI9806E share a single reset line. The i2c=20 > address of the GT911 chip is set by manipulating an IO line during=20 > reset. This is already handled by the existing GT911 driver, but it=20 > means that the reset line MUST be controlled by the Goodix driver > (drivers/input/touchscreen/goodix.c). The ILI9806E should defer its=20 > probing until the Goodix driver has completed its reset. The ILI9806E=20 > should then probe with asserting the reset line.=20 I see. This explanation should definitely go into the commit message of the second patch. So basically, you 'just' need to have the driver for the touch panel probed first. I'm not really sure you can just move the reset line to the touch controller or if it has to be shared between both. Also, what happens if the dsi panel is turned off, which right now, would assert the reset line. I think device-links is what you need ([1], maybe Documentation/driver-api/device_link.rst). IIRC they get added automatically by parsing the device tree. So you might just need a phandle pointint to the goodix touchscreen driver, to have it probed first. But there is probably more you'd need to handle the "turn the DSI display off and on again" case. I'd start by adding a phandle called "touch-controller" to the panel node (similar to your i2c-frag I think). > To achieve this, this patch adds an optional dt node "i2c-frag" to the=20 > ILI9806E driver. If this node exists, the Ilitek driver defers its=20 > probing until the i2c node has been initialized. Furthermore, the=20 > reset-gpios property has been made optional. To keep the Ilitek driver=20 > from asserting the reset line, the reset-gpios property should be left=20 > out for the DMT050 display.=20 Any devicetree bindings (i2c-frag, optional reset) have to be documented in the corresponding binding, i.e. see your first patch. > This solution does not seem particularly elegant, but I could not find a= =20 > more straight-forward one. This is also my first kernel patch, so I=20 > appreciate your patience.=20 Thanks for joining the linux kernel community and don't worry. -michael [1] https://lore.kernel.org/all/20190731221721.187713-1-saravanak@google.co= m/ --edc915a6bded4337b39d565483d31da1ecd8aeaa66f9ec3b9cff8e37c715 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iKgEABMJADAWIQTIVZIcOo5wfU/AngkSJzzuPgIf+AUCabJ7YhIcbXdhbGxlQGtl cm5lbC5vcmcACgkQEic87j4CH/g+pAGAlP8P1LokhunkkjyP5jtFOWxydye3N+qW HLMZtB8Dg3TMGhKpHFYR0yNWD/zUVNsMAYCPOXQzL+14lp6MMePDaD1dVrC7QcMc p6rRPp3beZBr78Hw77IEC/g3kfRYP9e8csg= =GIZd -----END PGP SIGNATURE----- --edc915a6bded4337b39d565483d31da1ecd8aeaa66f9ec3b9cff8e37c715--