【资料图】
/kernel/include/linux/leds.h // 重要,led相关结构体,宏定义,trigger等目录 /kernel/driver/leds/ 下led-class.c // 定义led class及相关接口led-core.c // export 了闪烁,设置亮灭等接口led-gpio.c // "leds-gpio" 驱动leds.h // 提供几个接口,如:led_init_core
trigger 框架核心文件:目录 /kernel/driver/leds/ 下 led-triggers.c // export了许多接口,包括:led_trigger_register目录 /kernel/driver/leds/trigger 下 ledtrig-backlight.c ledtrig-camera.c ledtrig-cpu.c ledtrig-default-on.c ledtrig-disk.c ledtrig-gpio.c ledtrig-heartbeat.c // 心跳灯效果 ledtrig-mtd.c ledtrig-oneshot.c ledtrig-panic.c ledtrig-timer.c // 定时器ledtrig-transient.c
以参考上面的trigger例子写自己的trigger,或者改造,需要在make menuconfig里面选上才会编译,如下:
步骤 一 : dts配置① leds节点是在rk3588-evb.dtsi文件中定义
#include "rk3588-evb.dtsi"
② 定义四个led节点: (检查gpio是否被复用)
使用命令:dmesg | grep cannot检查是否有gpio冲突,有冲突的话驱动代码会中断,后面的dts就不会生效。
&leds { status = "okay"; compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = < &work1_led_gpio >, < &work2_led_gpio >,< &work3_led_gpio >,< &work4_led_gpio >; work1_led: work1{ default-state = "off"; gpios = < &gpio4 RK_PD2 GPIO_ACTIVE_HIGH >; }; work2_led: work2{ default-state = "off"; gpios = < &gpio4 RK_PD3 GPIO_ACTIVE_HIGH >; }; work3_led: work3{ default-state = "off"; gpios = < &gpio4 RK_PD4 GPIO_ACTIVE_HIGH >; }; work4_led: work4{ default-state = "off"; gpios = < &gpio4 RK_PD5 GPIO_ACTIVE_HIGH >; };};&pinctrl { leds{ work1_led_gpio: work1-led-gpio{ rockchip,pins = < 4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_down >; }; work2_led_gpio: work2-led-gpio{ rockchip,pins = < 4 RK_PD3 RK_FUNC_GPIO &pcfg_pull_down >; }; work3_led_gpio: work3-led-gpio{ rockchip,pins = < 4 RK_PD4 RK_FUNC_GPIO &pcfg_pull_down >; }; work4_led_gpio: work4-led-gpio{ rockchip,pins = < 4 RK_PD5 RK_FUNC_GPIO &pcfg_pull_down >; }; }; }
步骤二:调试,验证:在用户空间操作led
使用了驱动框架后可以不需要编写应用程序就可以测试led是否能正常被点亮与熄灭,这些都可以在sysfs文件系统中完成。在装载驱动后可以在/sys/class/leds/目录下看到对应的led设备目录,如本文中的work1(填充设备时的设备名字段)。
brightness power ueventmax_brightness subsystem
echo 1 > brightness
echo 0 > brightness
审核编辑:汤梓红
标签:
LinuxLED子系统详解
如果我说的这些就是你所面对的情况,那我觉得你现在的这段感情遭遇到了
去年7月,在贵州省黔东南州台盘村举办的一场村级篮球赛,因为火热的现
每经AI快讯,日前,从浙江省非物质文化遗产保护中心获悉,全国首座大型
长城保险是一家全国性人寿保险公司,成立于2005年,总部设于北京,注册
6月10日8时20分许,沪蓉线长安集至南分路间突发不明水源水淹道床,影响
按照市委统一部署,从6月9日至8月上旬,派出两个专项巡察组,采取“巡
但值得一提的是,TheShy虽然第一局来了一手爆笑流酒桶,被队友带飞躺赢
暗黑4威能不同位置的效果加成是很多暗黑玩家都关注的,暗黑4是最新才发
发展中国家能源发展与产业政策研修班在兰开班
油菜的根茎中的导管和筛管属于什么组织1、导管和筛管都属于植物的输导
1、劳动者制作《劳动争议申诉书》一式两份,《申诉书》的内容包括投诉
开奖回顾:体彩大乐透第23064期奖号开出:0206093132+0307,前区奖号和
掌上春城讯2023年“6·5世界环境日”昆明市高新区管委会组织开展系列宣
6月7日下午,2023年高考数学科目考试结束。今年,河南的高考数学试题有
一系列政策释放了新能源汽车产业持续高质量发展的积极信号。乘联会数据
来为大家解答以下的问题,页微信闪退怎么修复,微信闪退怎么修复这个很
民和股份(002234):5月销售商品代鸡苗2,287 88万只,同比变动-8 84%,
1、一般新毛笔开封的话要浸泡10分钟的时间。因为新毛笔的笔毛上面有胶
1、原文:玄德访孔明两次不遇,欲再往访之。2、关公曰:“兄长两次亲往
X 关闭
X 关闭