【发布时间】:2017-03-01 13:18:26
【问题描述】:
我正在尝试在 /sys/class/pwm/ 下启用 pwm。我期待的是 pwmchip0/export 等。我经历了以下事情:
- 检查了配置中的 PWM_SYSFS 是否为 =y。
- dtsi 文件包含正确的 pwm 条目。
- pwm 的驱动程序正在正确编译。
但是当我在目标上运行构建时,我只能看到 /sys/class/pwm 而下面什么都没有。
我根本没有接触过 dts 文件。
如果有人能指出我正确的方向或指出要检查的事情清单,我将不胜感激。
请询问我是否遗漏了问题中提到的任何内容。
【问题讨论】:
-
能否提供您正在使用的 dts 文件和 KConfig。可能以某种方式禁用了 pwm 设备(在 dts 或 kconfig 中)。检查引导日志以获取 pwm 驱动程序消息。
-
嗨亚历山大谢谢你的回复。是的,这是正确的,在我的 dtsi 文件中,pwm 像所有其他设备一样被设置为默认值。像这样的东西: pwm: pwm@f015c000 { compatible = "img,xyz-pwm";注册=; img,cr-periph = ;状态=“禁用”;必须从 dts 文件中启用,如下所示: &pwm { status = "okay"; };此后,内核开始调用 pwm 探测函数。探测功能是通过 sysfs 导出设备的功能。更改后我现在可以看到 /sys/class/pwm/pwmchip0 等等。
-
@VivekB 我遇到了类似的问题,在 /sys/class/pwm 下没有任何内容。您能否详细说明(或提供链接)您的解决方案?在任何 boot/* 文本文件中都没有对 /pwm/i 的引用,在整个 / 树上也没有 dts(i) 文件。