Gt9xx1024x600 • Bonus Inside
These commands force the HDMI output to use a custom mode with a resolution of 1024x600 and a 60Hz refresh rate.
Connect the LCD panel to the driver board via the 40/50-pin FPC cable.
| Register Address | Purpose | Value for 1024x600 | Notes | |----------------|---------|--------------------|-------| | 0x8048 | X Resolution (Low Byte) | 0x00 | 1024 = 0x0400 | | 0x8049 | X Resolution (High Byte) | 0x04 | Little-endian: low byte first | | 0x804A | Y Resolution (Low Byte) | 0x58 | 600 = 0x0258 | | 0x804B | Y Resolution (High Byte) | 0x02 | | | 0x804C | Touch threshold | 0x28 (40 dec) | Adjust for sensitivity | | 0x804D | Switch 1 (output panel info) | 0x01 | Enable coordinate output | gt9xx1024x600
An exemplary device tree node configuration binds the I2C bus to the touchscreen driver, establishing the boundaries for the 1024x600 coordinate framework:
: For a 1024x600 setup, you must modify the following registers starting at address 0x8047 : X Output Max (0x8047 - 0x8048) : Set to 0x0400 (1024). Y Output Max (0x8049 - 0x804A) : Set to 0x0258 (600). These commands force the HDMI output to use
The (specifically GT911) is a robust, industrial-grade capacitive touch controller. When paired with a 1024x600 IPS LCD , you get a combination that rivals a cheap tablet screen but works over simple I2C and RGB/SPI interfaces.
Some GT9xx devices require specific power management handling. Ensure the driver properly supports system sleep/resume callbacks and that the reset GPIO is correctly toggled during resume. Y Output Max (0x8049 - 0x804A) : Set to 0x0258 (600)
When sourcing a module, not all are equal. Look for:
Add the following entry to drivers/input/touchscreen/Kconfig (typically around line 350):
| Register Address | Name | Value for 1024x600 | Description | | :--- | :--- | :--- | :--- | | 0x8048 | X Resolution (High Byte) | 0x04 | 1024 >> 8 | | 0x8049 | X Resolution (Low Byte) | 0x00 | 1024 & 0xFF | | 0x804A | Y Resolution (High Byte) | 0x02 | 600 >> 8 | | 0x804B | Y Resolution (Low Byte) | 0x58 | 600 & 0xFF | | 0x804C | Touch Number | 0x05 | Max touches = 5 | | 0x804D | Module Switch 1 | 0x01 | Enable touch | | 0x804E | Module Switch 2 | 0x00 | Default | | 0x80D0~0x80DF | Config Checksum | Computed | Ensures integrity |
*/ #include #include #include #include #include #include #include #include #include #include #include #include #include "goodix.h"