embedded – 在什么条件下 syskerneldebuggpio是空的?

embedded – 在什么条件下 syskerneldebuggpio是空的?,第1张

概述摘要 我的目标是在Intel主板(带有C1037U处理器的NM70芯片组)上控制Peppermint 4 Linux(内核版本3.8.0)中的GPIO引脚. 我正在调试我正在使用sysfs接口的问题,并且我试图了解/ sys / kernel / debug / gpio将为空的条件? 尝试将引脚0导出到255时 echo XX> / SYS /班/ GPIO /出口 对于从0到255的XX,我收 摘要

我的目标是在Intel主板(带有C1037U处理器的NM70芯片组)上控制Peppermint 4 Linux(内核版本3.8.0)中的GPIO引脚.

我正在调试我正在使用sysfs接口的问题,并且我试图了解/ sys / kernel / deBUG / gpio将为空的条件?

尝试将引脚0导出到255时

echo XX> / SYS /班/ GPIO /出口

对于从0到255的XX,我收到以下错误消息

echo:写错误:没有这样的设备

在什么条件下/ sys / kernel / deBUG / gpio是空的?

背景

>主板:英特尔采用NM70芯片组
>处理器:C1037U处理器
> OS:Peppermint 4 linux
>内核版本:3.8.0
> GPIO接口:sysfs

我正在尝试使用sysfs接口,它允许通过文件系统从用户空间访问GPIO引脚.

我已经成功地遵循https://help.ubuntu.com/community/Kernel/Compile的“备用构建方法:老式Debian方式”部分来重新编译内核,以便在用户空间中公开GPIO访问并打开GPIO的调试模式:

编译新内核后,我第一次能够在/ sys / class / gpio中看到GPIO文件夹.然后,理论上,它应该是能够通过写入文件系统来打开/关闭GPIO端口的情况.这种方法概述于http://falsinsoft.blogspot.co.uk/2012/11/access-gpio-from-linux-user-space.html.

尝试将引脚0导出到255时

echo XX> / SYS /班/ GPIO /出口

对于从0到255的XX,我收到以下错误消息

echo:写错误:没有这样的设备

尝试导出0到255范围之外的引脚时

echo XX> / SYS /班/ GPIO /出口

我收到以下错误消息

echo:写入错误:参数无效

本教程建议这可能是因为GPIO端口是为另一个程序保留的,如果是这样,调试文件(/ sys / kernel / deBUG / gpio)将能够显示它们的保留位置.

但是,/ sys / kernel / deBUG / gpio为空.

我可以看到并控制BIOS中的GPIO引脚(将引脚更改为输入或输出高/低).

相关问题

writing to /sys/class/gpio/export failing

Enable pullup GPIO

解决方法 如果没有注册GPIO设备,/ sys / kernel / deBUG / gpio将为空(警告:当我说GPIO设备时,我不是指硬件,而是它的内核表示).

因此,这些GPIO设备在运行时由内核注册并与特定的GPIO设备驱动程序相关联.

反过来,GPIO设备驱动程序被选中并与给定设备相关联,因为它声明了与所述GPIO设备的兼容性.

例如,内核将匹配PCI供应商和产品ID,并探测声称支持该PCI供应商/产品的GPIO驱动程序.探测GPIO驱动程序时,它通常会注册GPIO设备实例.

最后,注册的GPIO设备提供了/ sys / kernel / deBUG / gpio中显示的GPIO.

以上是linux中所谓的“设备驱动程序模型”的一部分.虽然它有点过时,但你可以阅读[1].

现在,让我们看看您需要为NM70芯片组选择哪种GPIO驱动程序.维基百科说芯片组的代号是“Panther Point-M”[2].幸运的是,lpc_ich驱动程序可以支持它.您必须使用CONfig_LPC_ICH = y构建内核.

或者,如果您的GPIO由PCI设备提供,您可以使用lspci来获取ID,然后在内核源中使用grep来获取这些ID.

[1] http://www.oreilly.com/openbook/linuxdrive3/book/ch14.pdf

[2] https://en.wikipedia.org/wiki/List_of_Intel_chipsets

@H_403_91@ 总结

以上是内存溢出为你收集整理的embedded – 在什么条件下/ sys / kernel / debug / gpio是空的?全部内容,希望文章能够帮你解决embedded – 在什么条件下/ sys / kernel / debug / gpio是空的?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1019716.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存