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.

SK-AM62-LP: Touch interrupt error

Part Number: SK-AM62-LP
Other Parts Discussed in Thread: SK-LCD1,

Hi

When testing the Touch protocol with evtest, I encountered errors such as delays and IRQ-like interruptions.

The DTS file used is k3-am62-lp-sk-microtips-mf101hie-panel.dtso.

May I ask if there are any suggestions or directions from TI experts?

[ 132.653653] audit: type=1327 audit(140.164:17): proctitle=2F7573722F7362696E2F69707461626C6573002D2D77616974002D74006E6174002D4E00444F434B4552
[ 132.666554] audit: type=1325 audit(140.180:18): table=filter family=2 entries=4 op=xt_replace pid=1102 comm="iptables"
[ 1745.762011] irq 448: nobody cared (try booting with the "irqpoll" option)
[ 1745.769313] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W O 6.1.33-g999 #1
[ 1745.777141] Hardware name: Texas Instruments AM62x LP SK (DT)
[ 1745.782881] Call trace:
[ 1745.785319] dump_backtrace.part.0+0xdc/0xf0
[ 1745.789608] show_stack+0x18/0x30
[ 1745.792917] dump_stack_lvl+0x68/0x84
[ 1745.796577] dump_stack+0x18/0x34
[ 1745.799883] __report_bad_irq+0x4c/0xdc
[ 1745.803712] note_interrupt+0x33c/0x3a0
[ 1745.807542] handle_irq_event+0x9c/0xbc
[ 1745.811368] handle_simple_irq+0x9c/0x10c
[ 1745.815369] generic_handle_domain_irq+0x2c/0x44
[ 1745.819979] gpio_irq_handler+0x98/0x120
[ 1745.823902] generic_handle_domain_irq+0x2c/0x44
[ 1745.828508] gic_handle_irq+0x50/0x124
[ 1745.832249] call_on_irq_stack+0x24/0x4c
[ 1745.836163] do_interrupt_handler+0x80/0x84
[ 1745.840339] el1_interrupt+0x34/0x70
[ 1745.843908] el1h_64_irq_handler+0x18/0x2c
[ 1745.847997] el1h_64_irq+0x64/0x68
[ 1745.851390] arch_cpu_idle+0x18/0x2c
[ 1745.854959] default_idle_call+0x30/0x6c
[ 1745.858875] do_idle+0x244/0x2c0
[ 1745.862099] cpu_startup_entry+0x28/0x30
[ 1745.866014] kernel_init+0x0/0x130
[ 1745.869406] arch_post_acpi_subsys_init+0x0/0x18
[ 1745.874019] start_kernel+0x650/0x690
[ 1745.877674] __primary_switched+0xbc/0xc4
[ 1745.881679] handlers:
[ 1745.883941] [<000000005f7058a4>] irq_default_primary_handler threaded [<00000000106ef614>] pca953x_irq_handler
[ 1745.893948] Disabling IRQ #448
Event: time 1753.981969, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 13
Event: time 1753.981969, type 3 (EV_ABS), code 50 (ABS_MT_WIDTH_MAJOR), value 13
Event: time 1753.981969, type 3 (EV_ABS), code 58 (ABS_MT_PRESSURE), value 13
Event: time 1753.981969, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 667
Event: time 1753.981969, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 380
Event: time 1753.981969, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 0
Event: time 1753.981969, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1753.981969, -------------- SYN_REPORT ------------
Event: time 1755.026016, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 0
Event: time 1755.026016, type 3 (EV_ABS), code 50 (ABS_MT_WIDTH_MAJOR), value 0
Event: time 1755.026016, type 3 (EV_ABS), code 58 (ABS_MT_PRESSURE), value 0
Event: time 1755.026016, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1
Event: time 1755.026016, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1755.026016, -------------- SYN_REPORT ------------
Event: time 1759.178333, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 3
Event: time 1759.178333, type 3 (EV_ABS), code 50 (ABS_MT_WIDTH_MAJOR), value 3
Event: time 1759.178333, type 3 (EV_ABS), code 58 (ABS_MT_PRESSURE), value 3
Event: time 1759.178333, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 6
Event: time 1759.178333, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 480
Event: time 1759.178333, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 1
Event: time 1759.178333, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1759.178333, -------------- SYN_REPORT ------------
Event: time 1797.817670, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 0
Event: time 1797.817670, type 3 (EV_ABS), code 50 (ABS_MT_WIDTH_MAJOR), value 0
Event: time 1797.817670, type 3 (EV_ABS), code 58 (ABS_MT_PRESSURE), value 0
Event: time 1797.817670, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1
Event: time 1797.817670, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1797.817670, -------------- SYN_REPORT ------------

  • Hello Vic,

    Apologies for the delayed response here. Is this something that you still need assistance with?

    If you still need assistance,

    1) What version of AM62x SDK are you using?

    2) Please let us know if you are using hardware that is different from https://www.ti.com/tool/SK-AM62-LP and Microtips Technology USA (13-101HIEB0HF0-S) 10.1” WUXGA (1920x1200) TFT LCD panel

    3) Have you followed the steps on this page to enable touchscreen?
    https://software-dl.ti.com/processor-sdk-linux-rt/esd/AM62X/09_00_00_03/exports_AM62SIP/docs/linux/How_to_Guides/Target/How_to_enable_Microtips_LVDS_Panel_on_AM62_SK_EVM.html

    4) If following all the steps on that page does not help, please give me additional information that would allow us to replicate your results (e.g., terminal output showing that you have done all the steps at 3). Then, is there a way to trigger the errors? e.g., do the errors only happen when you touch the touchscreen?)

    Regards,

    Nick

  • Hi 

    Don't worry, it's not too big of an issue~^^

    Q1: 09.00.00.03

    Q2: Allow me to introduce my experimental framework and process.

    Microtips Technology USA (13-101HIEB0HF0-S) 10.1” WUXGA (1920x1200) TFT LCD panel
    My design is based on this circuit for reference, including other Touch TFT LCD panels.

    I am currently using a third-party Touch TFT LCD panel.

    Here, I needed to accomplish several tasks:

    1. Porting and modifying the driver program.
    2. Modifying the relevant DTS file.
    3. Designing a conversion circuit for the third-party Touch TFT LCD panel.

    The above tasks have already been completed.

    However, there seem to be some issues with touchscreen interruptions (as seen in log information). I would like to discuss whether it is possible to provide suggestions or directions based on the system SOC. This is because the design and verification are based on SK-LCD1 for extension and variation.

    Evaluating this issue is not solely a TI problem; it may be related to the TDDI driver. Therefore, I hope to have a discussion and receive suggestions and opinions on this matter.

  • Hello Vic,

    Have you run the same tests on a SK-AM62-LP connected to a SK-LCD1? If so, what are those test results?

    I have found that it is often difficult to debug what is going on when changing a bunch of variables. Typically, I try to change one thing at a time (e.g., get the software working on known good hardware first (TI EVMs), then try to get it working with the custom hardware). Sometimes the TI software or hardware has bugs, so that can also help distinguish if something is wrong with your HW/SW, or with our HW/SW.

    I am not familiar with this error with touchscreens, so I will be limited in the assistance I can provide if there isn't a test I can run on the TI EVMs.

    When I search the rest of the e2e forums, most of the time that "irq xxx nobody cared (try booting with the "irqpoll" option)" output shows up when a driver is not initialized properly. So I would double-check your devicetree files and kernel configs. E.g., are you seeing the touchscreen driver initializing in the Linux boot logs the way you would expect? I also saw one thread where their issue was addressed by fixing their pinmux settings.

    Regards,

    Nick

  • Hi 

    Q1: This part has been verified as normal, as the evtest tool successfully retrieves relevant information.

    Q2: In the process of hardware porting, I ensure that both the DTS (Device Tree Source) and Pinmux configurations are tailored for SK-AM62-LP. Recognizing the potential variations in software and hardware versions, I have taken this into consideration.

    Nick's current hardware usage can be considered as variants or extensions of the SK-AM62-LP reference version. Throughout the planning process, reducing the complexity of issues is deemed crucial. Proceeding with Q1 verification first, I acknowledge that sometimes issues may be related to hardware driver issues.

    Therefore, I hope that Nick or the TI team can assist by providing some objective experiences or recommendations. This is not a singular problem, as it involves multiple aspects, and I believe it is a topic worthy of discussion. Through such discussions, I aim to attain more comprehensive solutions.

  • Hello Vic,

    Ok. Setting some expectations here:

    1) If you are not testing with the same hardware setup that TI uses to test, I am not going to be able to try to replicate your results. (i.e., if you are not testing with SK-LCD1). This will limit the support I can offer.

    2) I have provided all the feedback I can with the information you have provided. Until you answer my questions from earlier, I cannot give any more comments.

    Previous questions

    From https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1294251/sk-am62-lp-touch-interrupt-error/4928204#4928204 : 

    3) Have you followed the steps on this page to enable touchscreen?
    https://software-dl.ti.com/processor-sdk-linux-rt/esd/AM62X/09_00_00_03/exports_AM62SIP/docs/linux/How_to_Guides/Target/How_to_enable_Microtips_LVDS_Panel_on_AM62_SK_EVM.html

    4) If following all the steps on that page does not help, please give me additional information that would allow us to replicate your results (e.g., terminal output showing that you have done all the steps at 3). Then, is there a way to trigger the errors? e.g., do the errors only happen when you touch the touchscreen?)

    .

    .

    from https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1294251/sk-am62-lp-touch-interrupt-error/4930149#4930149 : 

    When I search the rest of the e2e forums, most of the time that "irq xxx nobody cared (try booting with the "irqpoll" option)" output shows up when a driver is not initialized properly. So I would double-check your devicetree files and kernel configs. E.g., are you seeing the touchscreen driver initializing in the Linux boot logs the way you would expect? I also saw one thread where their issue was addressed by fixing their pinmux settings.

    Regards,

    Nick

  • Hi 

    Don't worry, thank you for your help. ^^

    Thank you for the professional discussion.