Hi, [+ Saravana]
On Wed Mar 11, 2026 at 4:54 PM CET, Bartholomäus Steinmayr wrote: > this patch series adds support for the Densitron DMT050WVNMCMI-1A panel > to the ILI9806E DSI driver. The patch mainly contains initialization > code for the panel. > > However, the display also has a peculiarity which required some more > changes to the driver. The display contains a Goodix GT911 touchpanel > controller. The GT911 and ILI9806E share a single reset line. The i2c > address of the GT911 chip is set by manipulating an IO line during > reset. This is already handled by the existing GT911 driver, but it > means that the reset line MUST be controlled by the Goodix driver > (drivers/input/touchscreen/goodix.c). The ILI9806E should defer its > probing until the Goodix driver has completed its reset. The ILI9806E > should then probe with asserting the reset line. 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 > ILI9806E driver. If this node exists, the Ilitek driver defers its > probing until the i2c node has been initialized. Furthermore, the > reset-gpios property has been made optional. To keep the Ilitek driver > from asserting the reset line, the reset-gpios property should be left > out for the DMT050 display. 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 > more straight-forward one. This is also my first kernel patch, so I > appreciate your patience. Thanks for joining the linux kernel community and don't worry. -michael [1] https://lore.kernel.org/all/[email protected]/
signature.asc
Description: PGP signature
