This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/AM3358: Touchscreen doesn't work in latest SDK

Expert 2730 points

Part Number: AM3358

Tool/software: Linux

Next problem is the touchscreen. Hardware worked with SDK 3.2 but after updating to SDK 4.3 I don't see any events with evtest. I'm using the same dts file as with SDK 3.2

The tsc module is loaded:

lsmod                                                                                                                                                                                                                              
Module                  Size  Used by                                                                                                                                                                                                                            
bc_example              7262  0                                                                                                                                                                                                                                  
pvrsrvkm              403500  1 bc_example                                                                                                                                                                                                                       
ti_emif_sram            5663  0                                                                                                                                                                                                                                  
rtc_omap                9662  0                                                                                                                                                                                                                                  
omap_wdt                4634  0                                                                                                                                                                                                                                  
ti_am335x_tsc           5965  0  
dmesg | grep -i tsc                                                                                                                                                                                                                  
[    7.400112] input: ti-tsc as /devices/platform/ocp/44e0d000.tscadc/TI-am335x-tsc/input/input0


&tscadc { status = "okay"; tsc { ti,wires = <5>; ti,x-plate-resistance = <200>; ti,coordinate-readouts = <5>; ti,wire-config = <0x00 0x11 0x22 0x33>; ti,charge-delay = <0x400>; }; adc { ti,adc-channels = <5 6 7>; }; };

So what am I missing this time?

  • Hello,

    Please take a look into this guide:
    software-dl.ti.com/.../How_to_Recalibrate_the_Touchscreen.html

    Chapter "Recalibrating by Deleting ws-calibrate.rules"

    and check the below thread also could be in help:
    e2e.ti.com/.../646771

    BR
    Margarita
  • The problem is that even the evtest doesn't see any touch events, so I do not need to calibrate it (at the moment). tslib is not provided with the SDK nor it was with the SDK3.2 where my touch was working.
  • I cross compiled tslib. It just doesn't help when there are no events registered in /dev/input/touchscreen0
  • Hello,

    I know my point was to check Weston based Graphic System as you could see there is a diff between non Weston.

    However, I am not very sure how you are executing evtest tool so I am linking you the guide about it:
    processors.wiki.ti.com/.../Evtest
    If you execute evtest /dev/input/event1 you must touch/click on the touchscreen.
    Change the event number if there is a need.

    Here is some suggestion that you could check:


    1. Are you sure that you have copied everything connected with your configuration. For example:
    tscadc: tscadc@44e0d000 {
    compatible = "ti,am3359-tscadc";
    reg = <0x44e0d000 0x1000>;
    interrupt-parent = <&intc>;
    interrupts = <16>;
    ti,hwmods = "adc_tsc";
    status = "disabled";
    dmas = <&edma 53 0>, <&edma 57 0>;
    dma-names = "fifo0", "fifo1";

    tsc {
    compatible = "ti,am3359-tsc";
    };
    am335x_adc: adc {
    #io-channel-cells = <1>;
    compatible = "ti,am3359-adc";
    };
    };

    2. You could check the with /proc/interrupts also this could shows you the number of interrupts also.

    I strongly recommend you to check your configuration. You could see these documents also:
    touchscreen.txt and ti-tsc-adc.txt.

    BR
    Margarita

  • 1. The configuration you gave me comes already from #include "am33xx.dtsi". And this dts worked with the old SDK 3.2. 

    2. 

    cat /proc/interrupts                                                                                                                                                                                                                      
               CPU0                                                                                                                                                                                                                                                  
     16:     110885      INTC  68 Level     gp_timer                                                                                                                                                                                                                 
     20:          0      INTC  12 Level     49000000.edma_ccint                                                                                                                                                                                                      
     22:          0      INTC  14 Level     49000000.edma_ccerrint                                                                                                                                                                                                   
     26:          0      INTC  96 Level     44e07000.gpio                                                                                                                                                                                                            
     59:          0      INTC  98 Level     4804c000.gpio                                                                                                                                                                                                            
     92:          0      INTC  32 Level     481ac000.gpio                                                                                                                                                                                                            
    125:          0      INTC  62 Level     481ae000.gpio                                                                                                                                                                                                            
    158:       4763      INTC  72 Level     44e09000.serial                                                                                                                                                                                                          
    168:          0      INTC  75 Level     rtc0                                                                                                                                                                                                                     
    169:          0      INTC  76 Level     rtc0                                                                                                                                                                                                                     
    171:       6288      INTC  41 Level     4a100000.ethernet                                                                                                                                                                                                        
    172:        605      INTC  42 Level     4a100000.ethernet                                                                                                                                                                                                        
    174:          0      INTC   4 Level     48080000.elm                                                                                                                                                                                                             
    175:     156508      INTC  36 Level     tilcdc                                                                                                                                                                                                                   
    176:          0      INTC  16 Level     TI-am335x-adc, TI-am335x-tsc                                                                                                                                                                                             
    177:          0      INTC 100 Level     gpmc                                                                                                                                                                                                                     
    178:          0      INTC 109 Level     53100000.sham                                                                                                                                                                                                            
    180:          0      INTC 111 Level     48310000.rng                                                                                                                                                                                                             
    181:        370      INTC  37 Level     SGX ISR  

    Touching the display doesn't do anything in evtest:

    evtest /dev/input/touchscreen0                                                                                                                                                                                                            
    Input driver version is 1.0.1                                                                                                                                                                                                                                    
    Input device ID: bus 0x0 vendor 0x0 product 0x0 version 0x0                                                                                                                                                                                                      
    Input device name: "ti-tsc"                                                                                                                                                                                                                                      
    Supported events:                                                                                                                                                                                                                                                
      Event type 0 (EV_SYN)                                                                                                                                                                                                                                          
      Event type 1 (EV_KEY)                                                                                                                                                                                                                                          
        Event code 330 (BTN_TOUCH)                                                                                                                                                                                                                                   
      Event type 3 (EV_ABS)                                                                                                                                                                                                                                          
        Event code 0 (ABS_X)                                                                                                                                                                                                                                         
          Value      0                                                                                                                                                                                                                                               
          Min        0                                                                                                                                                                                                                                               
          Max     4095                                                                                                                                                                                                                                               
        Event code 1 (ABS_Y)                                                                                                                                                                                                                                         
          Value      0                                                                                                                                                                                                                                               
          Min        0                                                                                                                                                                                                                                               
          Max     4095                                                                                                                                                                                                                                               
        Event code 24 (ABS_PRESSURE)                                                                                                                                                                                                                                 
          Value      0                                                                                                                                                                                                                                               
          Min        0                                                                                                                                                                                                                                               
          Max     4095                                                                                                                                                                                                                                               
    Properties:                                                                                                                                                                                                                                                      
    Testing ... (interrupt to exit)   

  • Changed ti,wires = <5>; -> ti,wires = <4>; And now it works. I don't know why it worked with 5 in SDK 3.2.