我想通过Sys接口控制Artik 710开发板上的两个LED(LED400和LED401)。为了实现它,我在Linux内核中修改了Artik710的dtsi文件。但是,在构建映像并引导电路板后,LED不会出现在/ sys / class目录中。我在dtsi文件中的代码如下
gpio-leds {
compatible = "gpio-leds";
Blue {
label = "Blue";
gpios = <&gpio_a 28 0>;
linux,default-trigger = "heartbeat";
linux,default-state = "on";
};
Red {
label = "Red";
gpios = <&gpio_b 6 0>;
linux,default-trigger = "heartbeat";
linux,default-state = "on";
};
};
有人能指出这个问题吗?
答案 0 :(得分:1)
嗯,可能有两种情况之一:
您忘了启用内核模块
您忘记启用DT节点,这是通过在节点中添加status = "okay";
来完成的,例如在compatible = "gpio-leds";
下方。
答案 1 :(得分:0)
该问题与dtsi文件无关。我遇到了这个问题,因为在我使用的内核中没有配置gpio引导的驱动程序(Artik 710的Linux内核)。一旦我在内核配置中启用它,LED就会开始工作并出现在/ sys / class目录中。