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/AM572X:键盘模块问题

Guru**** 2589275 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/617042/linux-am572x-keypad-module-issue

SDK:TI-processor-sdk-linux-am57xx-evm-03.02.00.05

键盘模块的中断有一些奇怪的东西。  

有时发送密钥释放中断的速度太慢。

从附件 ZOC1708.log,您可以看到,使用相同的键盘,但有时键盘中断会在100ms,有时是1s 内出现。

dts.rar 是 DTS 文件

OMAP4-keypad.c:基于 SDK 相同名称文件的键盘驱动程序。

出什么问题了吗?

我应该提供引脚多路复用文件还是其他任何东西?

e2e.ti.com/.../ZOC1708.LOG

e2e.ti.com/.../dts.rar

e2e.ti.com/.../omap4_2D00_keypad.c

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    软件团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jinhu、

    您能再做一些实验吗?
    启用内核函数跟踪器、以便能够启用/禁用中断或占先或两者、从而找到有关此问题的线索。
    内核黑客-->[*]攻击-->[*]中断关闭延迟跟踪器
    [*]抢占关闭延迟跟踪器
    请参阅 /board-support/linux- /Documentation/trace/ftrace.txt 以了解更多详细信息。
    此外、OMAP4-keypad.c 驱动程序在未经修改的情况下是否以相同的方式运行?


    此致、
    Kemal

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    OMAP4-keypad.c 驱动程序我只添加了 dt 支持。

    row0和 Row1不用于键盘、因此我定义了行偏移量。

    我的所有修改都与 IRQ 无关。

    我尝试 使用 Tracers  

    当我 "echo irqsoff >/debugfs/tracing/current_tracer 时、我看不到关于 OMAP4_keypad_irq_handler (驱动程序的 IRQ funcion)的任何信息

    也是抢占式 rqsoff 和抢占式。

    当我 "回波函数_graph_graph >/debugfs/tracing/current_tracer "和"回波 OMAP4_keypad_IRQ_handler > set_graph_functions"时、 我只能看到 OMAP4_keypad_IRQ_handler、但不能调用栈、即使我尝试启用所有选项。

    我认为存在一些寄存器错误或硬件问题、因为如果我尝试通过 KBD_IRQENABLE_CLR 清除键盘中断、IRQ 将始终自动出现、但我不按任何键。

    我通过 printk 来跟踪代码、 kernel/IRQ/irqdesc.c 中的函数__handle_domain_IRQ 也会针对键盘进行延迟。

    但我不能在 _handle_domain_IRQ 的调用方中打印、 该调用方位于 arch/arm/kernel/irq.c 中

    您能否在 您的硬件中测试 KBD_IRQENABLE_CLR 的行为、对吗?  

    你能给我一些其他建议吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是否有任何可再供货?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    检查 此螺纹、如果可能、也尝试使用不同的键盘模块。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    该线程表示问题是由时钟源引起的。

    但  am572x 的键盘控制器 没有其他时钟源。

    因此问题仍然没有解决。