gpt4 book ai didi

c - 为什么内核头不想将 irq 暴露给模块?

转载 作者:行者123 更新时间:2023-11-30 15:36:58 25 4
gpt4 key购买 nike

我正在浏览下面的线程,它说内核头不想将 irq 暴露给模块。

Accessing IRQ description array within a module and displaying action names

但我不知道为什么会这样?

另外,我看到一些驱动程序不使用 irq,这是否意味着这些设备不是中断驱动的?

其中一个驱动程序用于 lm73 传感器 linux/drivers/hwmon/lm73.c,它主要绑定(bind)到 i2c 总线,并且又是一个模块。

那么,这一切是如何发生的,设备如何选择不被中断驱动?

最佳答案

您可以在模块中使用IRQ编号。这个问题有两个概念;一个是IRQ descripton ,这是 Linux 内核用来管理中断的。

IRQ 编号本身可用于任何带有 request_threaded_irq() 及其类似函数的模块。驱动程序通常通过 platform_data 或设备树传递 IRQ 编号。

可能不会在模块中使用IRQ 描述(我不知道您为什么想要这样做)。更准确地说,不允许在模块中从 IRQ 编号转换为 IRQ 描述。通常,描述只是一个由 IRQ 编号索引的大数组,因此 irq_to_desc() 在某些情况下是一个宏,并且永远不会导出。

关于c - 为什么内核头不想将 irq 暴露给模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22384422/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com