Discussion

7" LVDS from LeMaker

7 3070
a1d3s  
Hi there
i got a 7" Touch from LeMaker
after playing around a while i found out , how to get a display on it.
There are some mods on u-boot and in dts file.
Im working on 4.* kernel
  1. &i2c3 {
  2.     status = "okay";
  3.     pinctrl-names = "default";
  4.     pinctrl-0 = <&i2c3_pins_a>;

  5.     edt: edt-ft5x06@38 {
  6.         status = "okay";
  7.         compatible = "edt,edt-ft5x06";
  8.         reg = <0x38>;
  9.         interrupt-parent = <&pio>;
  10.         interrupts = <3 24>; /*GPIO_ACTIVE_HIGH>; */

  11.         wake-gpios = <&pio 7 8 GPIO_ACTIVE_HIGH>;
  12.         };
  13. };
Copy the Code
these lines i added to dts and i got an evdev and display, but touch didnt work.
can someone help to find out the other pin definitions?
a1d3s  
no one familar with device tree and lvds display?

hi, please change to below:

&i2c3 {
    status = "okay";
    pinctrl-names = "default";
    pinctrl-0 = <&i2c3_pins_a>;
        edt: edt-ft5x06@38 {
                compatible = "edt,edt-ft5x06";
                reg = <0x38>;
                interrupt-parent = <&pio>;
                interrupts = <9 0>;
                pinctrl-names = "default";
                pinctrl-0 = <&edt_ft5x06_pins>;
                touchscreen-size-x = <1024>;
                touchscreen-size-y = <600>;
                touchscreen-inverted-x;
                touchscreen-swapped-x-y;
                };
};

and add

        edt_ft5x06_pins: edt_ft5x06_pins@0 {
                #allwinner,pins = "PH8", "PH7", "PH9", "PH12";
                allwinner,pins = "PH7", "PH9";
                allwinner,function = "gpio_out";
                allwinner,drive = <SUN4I_PINCTRL_40_MA>;
                allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
        };

in &pio.

a1d3s  

Solved

Edited by tony_zhang at Feb 15, 2016 19:38

thanks bruce :) we fixed it yesterday
http://piprojects.net/de/deutsch-touchscreen-mit-ft5x06-chipsatz/
you can remove #allwinner,pins = "PH8", "PH7", "PH9", "PH12"; this line too , because # is not a comment out . to comment out something in dts you need /* text */
touchscreen-size-x = <1024>;
                touchscreen-size-y = <600>;
                touchscreen-inverted-x;
                touchscreen-swapped-x-y;
these lines can be remove to work with display like 3,5" or 5" :)


why the hell i cant edit the topic on first post? i want to add an [solved]

a1d3s  
small update
add an file in /usr/share/X11/xorg.conf.d/ named 99-calibration.conf
  1. Section "InputClass"
  2.         Identifier      "calibration"
  3.         MatchProduct    "EP0790M09"
  4.         Option  "Calibration"   "0 1024 0 600"
  5.         Option "SwapAxes"       "0"
  6. EndSection

Copy the Code
and put this in
for smaller display like 3.5" or  5" change resolution

zzeroo  
Hi, I patched my sun7i-a20-bananapro.dts

  1. diff --git a/arch/arm/boot/dts/sun7i-a20-bananapro.dts b/arch/arm/boot/dts/sun7i-a20-bananapro.dts
  2. index 18fcc87..3629148 100644
  3. --- a/arch/arm/boot/dts/sun7i-a20-bananapro.dts
  4. +++ b/arch/arm/boot/dts/sun7i-a20-bananapro.dts
  5. @@ -147,6 +147,24 @@
  6.         status = "okay";
  7. };

  8. +&i2c3 {
  9. +    status = "okay";
  10. +    pinctrl-names = "default";
  11. +    pinctrl-0 = <&i2c3_pins_a>;
  12. +        edt: edt-ft5x06@38 {
  13. +                compatible = "edt,edt-ft5x06";
  14. +                reg = <0x38>;
  15. +                interrupt-parent = <&pio>;
  16. +                interrupts = <9 0>;
  17. +                pinctrl-names = "default";
  18. +                pinctrl-0 = <&edt_ft5x06_pins>;
  19. +                touchscreen-size-x = <1024>;
  20. +                touchscreen-size-y = <600>;
  21. +                touchscreen-inverted-x;
  22. +                touchscreen-swapped-x-y;
  23. +                };
  24. +};
  25. +
  26. &ir0 {
  27.         pinctrl-names = "default";
  28.         pinctrl-0 = <&ir0_rx_pins_a>;
  29. @@ -222,6 +240,13 @@
  30.                 allwinner,drive = <SUN4I_PINCTRL_10_MA>;
  31.                 allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
  32.         };
  33. +
  34. +        edt_ft5x06_pins: edt_ft5x06_pins@0 {
  35. +                allwinner,pins = "PH7", "PH9";
  36. +                allwinner,function = "gpio_out";
  37. +                allwinner,drive = <SUN4I_PINCTRL_40_MA>;
  38. +                allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
  39. +        };
  40. };

  41. &reg_usb1_vbus {
Copy the Code



But the screen dosn't work and dmesg tells me this

  1. [    4.602774] edt_ft5x06 2-0038: Unable to request touchscreen IRQ.
  2. [    4.608975] edt_ft5x06: probe of 2-0038 failed with error -22
Copy the Code

zzeroo  
Is anybody here with a working touch screen under a recent linux kernel (4.4 or 4.5) ???

I need really help!

zzeroo  
Edited by zzeroo at Apr 06, 2016 04:04

Here is a working patch for the latest sunxi-next (4.6-rc6) kernel. Thank You plaes from #linux-sunxi

All needed information can found in the old .fex file

  1. ctp_int_port = port:PH09<6><default><default><default>
  2. ctp_wakeup = port:PH07<1><default><default><1>
Copy the Code
  1. diff --git a/arch/arm/boot/dts/sun7i-a20-bananapro.dts b/arch/arm/boot/dts/sun7i-a20-bananapro.dts
  2. index 18fcc87..50f1a36 100644
  3. --- a/arch/arm/boot/dts/sun7i-a20-bananapro.dts
  4. +++ b/arch/arm/boot/dts/sun7i-a20-bananapro.dts
  5. @@ -147,6 +147,26 @@
  6. status = "okay";
  7. };

  8. +&i2c3 {
  9. +        status = "okay";
  10. +        pinctrl-names = "default";
  11. +        pinctrl-0 = <&i2c3_pins_a>;
  12. +        edt: edt-ft5x06@38 {
  13. +                        compatible = "edt,edt-ft5x06";
  14. +                        reg = <0x38>;
  15. +                        interrupt-parent = <&pio>;
  16. +                        interrupts = <7 9 IRQ_TYPE_EDGE_FALLING>;
  17. +                        wake-gpios = <7 7 GPIO_ACTIVE_LOW>;
  18. +                        pinctrl-names = "default";
  19. +                        pinctrl-0 = <&edt_ft5x06_pins>;
  20. +                        touchscreen-size-x = <1024>;
  21. +                        touchscreen-size-y = <600>;
  22. +                        touchscreen-inverted-x;
  23. +                        touchscreen-swapped-x-y;
  24. +        };
  25. +};
  26. +
  27. +
  28. &ir0 {
  29.   pinctrl-names = "default";
  30.   pinctrl-0 = <&ir0_rx_pins_a>;
  31. @@ -222,6 +242,14 @@
  32. allwinner,drive = <SUN4I_PINCTRL_10_MA>;
  33.   allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
  34.   };
  35. +
  36. +        edt_ft5x06_pins: edt_ft5x06_pins@0 {
  37. +                allwinner,pins = "PH7", "PH9";
  38. +                allwinner,function = "gpio_out";
  39. +                allwinner,drive = <SUN4I_PINCTRL_40_MA>;
  40. +                allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
  41. +        };
  42. +
  43. };

  44. &reg_usb1_vbus {
Copy the Code

You have to log in before you can reply Login | Sign Up

Points Rules