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 7503FFED2EF for ; Thu, 12 Mar 2026 08:31:32 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 9A86010E1DB; Thu, 12 Mar 2026 08:31:31 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.b="RTWQr9Ly"; dkim-atps=neutral Received: from sea.source.kernel.org (sea.source.kernel.org [172.234.252.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id CFC0F10E1DB for ; Thu, 12 Mar 2026 08:31:29 +0000 (UTC) Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sea.source.kernel.org (Postfix) with ESMTP id 7A68C40112; Thu, 12 Mar 2026 08:31:29 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 077C5C4CEF7; Thu, 12 Mar 2026 08:31:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773304289; bh=wnqwCB/RC8YkY4H3iz/qhyNJbCIz4tG29G0+0qleYok=; h=Date:Subject:Cc:From:To:References:In-Reply-To:From; b=RTWQr9LyYG+XIeUvlXLuEnXy9p8nxHFU4HikSUq3zwcZS9ByCmFoZkq3WNVjP4uQR y0Hgi3Xl8DA159W8f+sgneMQWP3MKx7o7RVzott5jln6YCW+K1JRJqZyxnRD5iDFAG DgsyGAhxUWhwNOXM65k7L/hogbUKwVGrbL/hN17y2u24KbOZUbOF0wj1Y5HqgCcOnD dRtpjok6h4ZtVSLq1IZLtd73wwW03yW7tcvMwPTFDGqxcbnzae7sd5D8ro1hCj8gjS MYSZPBAOf9JiTcktYkMl7Wm2Vrn1Lq5fFiznp6EL8OwJ9A9hM7sE1RAw9khed/85Dw Omj6NIu3mLH/A== Mime-Version: 1.0 Content-Type: multipart/signed; boundary=171d0663d4913ba14e1633ddd6767b3a2489d9d68ab0add80e6f29a7fd82; micalg=pgp-sha384; protocol="application/pgp-signature" Date: Thu, 12 Mar 2026 09:30:26 +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?= , "dri-devel@lists.freedesktop.org" X-Mailer: aerc 0.20.0 References: In-Reply-To: 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" --171d0663d4913ba14e1633ddd6767b3a2489d9d68ab0add80e6f29a7fd82 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Hi, [+ 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/ --171d0663d4913ba14e1633ddd6767b3a2489d9d68ab0add80e6f29a7fd82 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iKgEABMJADAWIQTIVZIcOo5wfU/AngkSJzzuPgIf+AUCabJ5tRIcbXdhbGxlQGtl cm5lbC5vcmcACgkQEic87j4CH/jergGAi7bDYGykE0co7OA+Ut1VvQVRxf9bN/RM 5K+UTe96+yBsLQ+oUz9ZrtthfMpbAxSiAYDvUDjT72kHYKVVQvKBYmPYPijvE+YH 3QMk/Hgsl5zBDRQi4wpLiJyP8puO6thVqxA= =h900 -----END PGP SIGNATURE----- --171d0663d4913ba14e1633ddd6767b3a2489d9d68ab0add80e6f29a7fd82--