知识分享小达人 2023-08-31 09:42 采纳率: 83.3%
浏览 0
已结题

(标签-EDGE|关键词-设备树)

原本设备树种,配置的为边沿触发(IRQ_TYPE_EDGE_BOTH),现在想改为电平触发(IRQ_TYPE_LEVEL_MASK),但是编译报错:

img

img

枚举定义如下:

img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-08-31 12:09
    关注

    【以下回答由 GPT 生成】

    我可以向你提供一些解决方案来解决这个编译错误,并将中断触发方式从边沿触发改为电平触发。请按照以下步骤进行操作:

    步骤1: 检查设备树文件中的中断控制器节点 首先,你需要在设备树文件(通常是以.dts或.dtsi为后缀)中找到与你想修改的设备相关的中断控制器节点。这个节点通常在设备树文件中的某个位置定义,其中包含中断触发方式的配置。

    步骤2: 修改中断触发方式 找到中断控制器节点后,你可以使用如下代码将中断触发方式从边沿触发改为电平触发:

    interrupt-parent = <&gpio>;
    interrupts = <gpio_pin IRQ_TYPE_LEVEL_MASK>;
    

    上面的代码中,gpio是你的中断控制器的父节点,gpio_pin是你想要修改触发方式的具体中断引脚。

    步骤3: 重新编译设备树文件 完成中断触发方式的修改后,你需要重新编译设备树文件。你可以使用设备树编译器(dtc)来将设备树文件编译成二进制格式。

    $ dtc -O dtb -o device_tree.dtb device_tree.dts
    

    在上面的命令中,device_tree.dts是你的设备树源文件,device_tree.dtb是编译生成的二进制设备树文件。

    步骤4: 替换原始设备树文件 将编译生成的二进制设备树文件替换掉系统中原始的设备树文件。具体替换的方法可能因系统而异,请根据你的操作系统文档进行操作。

    步骤5: 重新编译内核并刷入设备 完成设备树文件的替换后,你需要重新编译内核并将其刷入设备以使修改生效。具体操作方法也可能因系统而异,请根据你的操作系统文档进行操作。

    这些步骤应该可以帮助你将中断触发方式从边沿触发改为电平触发。如有其他问题,请随时提问。


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月26日
  • 已采纳回答 12月18日
  • 创建了问题 8月31日

悬赏问题

  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
  • ¥15 Bug traq 数据包 大概什么价
  • ¥15 在anaconda上pytorch和paddle paddle下载报错
  • ¥25 自动填写QQ腾讯文档收集表