Hi, 

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. 

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. 

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. 

Thank you.

Reply via email to