1.在kernel/arch/arm/boot/dts/rk3288-box.dts中添加LED配置: --- kernel/arch/arm/boot/dts/rk3288-box.dts --- index e102714..80928ba 100755 @@ -137,6 +136,16 @@ rockchip,remote_wakeup; rockchip,usb_irq_wakeup; }; + + leds { + compatible = "gpio-leds"; + power { + label...
gpio_led_probe--和DTS中的gpio-leds匹配后进行probe。 gpio_leds_create device_get_child_node_count/device_for_each_child_node--获取子节点数,并遍历子节点。 devm_fwnode_get_gpiod_from_child--获取LED dts子节点。 fwnode_property_read_string--获取DTS中LED配置。 create_gpio_led--填充struct led_...
restarting in USB mode//(2)进入板子shell模式Z:\>adb shell//(3)通过SYS-FS文件系统,找到我们在dts中创建的设备,可见设备TOP目录名为父节点名leds,子节点名为设备led2:/# cd /sys/class/leds/:/sys/class/leds# ls -altotal0drwxr-xr-x2root root02022-12-2411:02. drwxr-xr-x131root root02022-...
#include <linux/module.h>#include <linux/fs.h>#include <linux/platform_device.h>#include <linux/io.h>#include <linux/of.h>#include <linux/leds.h> /* 包含 struct led_classdev 结构体,及API*/#include <linux/gpio/consumer.h> /* 包含新版本GPIO子系统: -gpiod- API*//* * 私有结构体...
DTS即Device Tree Source设备树源码,DeviceTree是一种描述硬件的数据结构,它起源于OpenFirmware (OF)。 在Linux2.6中,ARM架构的板极硬件细节过多地被硬编码在arch/arm/plat-xxx和arch/arm/mach-xxx,比如板上的platform设备、resource、i2c_board_info、spi_board_info以及各种硬件的pl...
WRTNODE2P.dts文件中将GPIO注册为LED设备,compatible属性值与LED驱动文件leds-gpio.c中的compatible属性值相对应。label值最终对应为文件系统/sys/class/leds/目录下LED设备的名称。 gpio-leds{compatible="gpio-leds";indicator{label="wrtnode:blue:indicator";gpios=<&gpio191>;};gpio35{label="wrtnode:red:sys...
2.3 文档解析: leds-gpio.txt 三、编写DTS 3.1 查原理图,挑选GPIO 3.2 编写DTS文件 四、编译测试 4.1 编译dt.img 4.2 烧录dt.img 五、基于fs的测试 5.1 测试命令 5.2 **点灯效果** 六、C语言:编写NDK测试APP 6.1 创建文件和目录 6.2 Android.mk ...
WRTNODE2P.dts文件中将GPIO注册为LED设备,compatible属性值与LED驱动文件leds-gpio.c中的compatible属性值相对应。label值最终对应为文件系统/sys/class/leds/目录下LED设备的名称。 gpio-leds { compatible = "gpio-leds"; indicator { label = "wrtnode:blue:indicator"; gpios = <&gpio1 9 1>; }; gpio...
更多属性配置可以参考Documentation/devicetree/bindings/leds/leds-gpio.txt。 以上设备树配置可以在arch/arm64/boot/dts/rockchip/firefly-gpio-demo.dtsi找到!有需求的用户在板极设备树中包含该文件即可(记得要首先 disable rk3399-roc-pc.dtsi里面冲突部分): #include "firefly-gpio-demo.dtsi" ©...
其中gpio0节点是在内核源码的“/arch/arm64/boot/dts/rockchip/rk3568.dtsi”设备树的3549-3560行定义的,而ft5x06: ft5x06@38触摸芯片节点是在内核源码的“/arch/arm64/boot/dts/rockchip/topeet_rk3568_lcds.dtsi”设备树的301-313行定义的。接下来将会对设备树常见的四个gpio属性进行介绍。