Dear all,
I recently acquired 5" LCD display DSN50602-PCT with capacitive touch
panel, thus my intention was to use it with Beaglebone Black board.
The image which I chose for this project is:
debian@beaglebone:~$ cat /etc/dogtag
BeagleBoard.org Debian Image 2016-01-10
debian@beaglebone:~$ uname -r
4.1.33-bone24
There was no problem in writing appropriate dts for the display and it
works flawlessly. The challenge was to expand dts to support capacitive
touch panel with its controller Goodix GT911. The controller communicates
with BBB via i2c1 bus and furthermore uses two additional gpios, one for
the interrupt and another for reset.
So, finally, I had expanded my lcd dts with the following fragments:
fragment@0 {
target = <&am33xx_pinmux>;
__overlay__ {
bb_i2c1_pins: pinmux_bb_i2c1_pins {
pinctrl-single,pins = <
BONE_P9_18 (SLEWCTRL_SLOW | PIN_INPUT_PULLUP | MUX_MODE2
)
BONE_P9_17 (SLEWCTRL_SLOW | PIN_INPUT_PULLUP | MUX_MODE2
)
>;
};
gt911_ts: pinmux_gt911_ts {
pinctrl-single,pins = <
BONE_P8_14 (PIN_OUTPUT_PULLUP | MUX_MODE7)
BONE_P8_13 (PIN_INPUT_PULLUP | MUX_MODE7)
>;
};
};
};
fragment@1 {
target = <&i2c1>;
__overlay__ {
pinctrl-names = "default";
pinctrl-0 = <&bb_i2c1_pins>;
status = "okay";
clock-frequency = <100000>;
/* shut up DTC warnings */
#address-cells = <1>;
#size-cells = <0>;
ctp@5d {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <>911_ts>;
compatible = "goodix,gt911";
reg = <0x5d>;
interrupt-parent = <>911_ts>;
interrupts = <8 13 2>;
irq-gpios = <8 13>;
reset-gpios = <8 14>;
touchscreen-swapped-x-y;
};
};
};
Of course, goodix modul is needed for the touchscreen, so I had it added to
/etc/modules-load.d/modules.conf file.
When I power up the BBB, the touchscreen is not functioning.
>From dmesg I cannot see what is wrong:
debian@beaglebone:~$ dmesg | grep Goodix
[ 5.574184] Goodix-TS 1-005d: IC VERSION: 39 31 31 00 60 10
[ 5.596674] input: Goodix Capacitive TouchScreen as /devices/platform/ocp
/4802a000.i2c/i2c-1/1-005d/input/input1
Now comes the interesting part.
After restarting the operating system (sudo shutdown -r now), I get fully
functional touchscreen panel which will work perfectly until I shutdown the
board. There is no difference in dmesg log which would give me a clue why
the touchscreen behaves differently depending whether I am powering up the
system or resetting it.
I am struggling with this for few days now and I thought that maybe there
is some difference between power-up and restart which reflects on
touchscreen functionallity.
I would gladly read your comments and ideas on how to resolve the issue
which I am facing with.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/588214e8-574e-4293-a7e2-3038f3717ae3%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.