找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 41|回复: 1

[MTK][MT8786][4313R][LEDS]按键灯配置

[复制链接]

2

主题

2

帖子

23

积分

新手上路

Rank: 1

积分
23
 楼主| 发表于 2024-10-28 16:54:03 | 显示全部楼层 |阅读模式
本帖最后由 chenyuanwei 于 2024-10-28 17:52 编辑

背景:
平台:MT6768​
内核版本:kernel-5.10​

一、配置流程
device/agenew/($project)
1.1、打开MMI Test 按键测试宏
  1. ProjectConfig.mk
  2. +AGN_MMITEST_KEYBOARDLED = yes
复制代码
1.2添加节点权限
  1. AGN_4313R_RD_MX12832_69U/init.project.rc
  2. #keyled
  3.     chmod 0664 /sys/class/leds/button-backlight/brightness
  4.     chown system system /sys/class/leds/button-backlight/brightness
复制代码
1.3leds-gpio ko文件加载    位置要放在leds-mtk 后面
  1. AGN_4313R_RD_MX12832_69U/ko_order_table.csv
  2. leds-mtk-disp.ko,/drivers/leds/leds-mtk-disp.ko,ramdisk,Y,Y,user/userdebug/eng
  3. leds-mtk-pwm.ko,/drivers/leds/leds-mtk-pwm.ko,ramdisk,Y,Y,user/userdebug/eng
  4. leds-aw2023.ko,/drivers/leds/leds-aw2023.ko,ramdisk,Y,Y,user/userdebug/eng
  5. +leds-gpio.ko,/drivers/leds/leds-gpio.ko,ramdisk,Y,Y,user/userdebug/eng
复制代码

1.4kernel-5.10
  1. arch/arm64/boot/dts/mediatek/AGN_4313R_RD_MX12832_69U/mt6768.dts
  2. //平台设备节点
  3.     leds {
  4.      compatible = "gpio-leds";
  5.      status = "okay";

  6.        button-backlight {
  7.                label = "button-backlight"; //生成设备对应名字
  8.                gpios = <&pio 78 0>;//按键灯的gpio
  9.                 default-state = "off";
  10.                linux,default-trigger = "none";
  11.                retain-state-suspended;
  12.                 status = "okay";
  13.         };
  14.     };
复制代码
1.5对应defconfig文件添加编译条件
  1. arch/arm64/configs/AGN_4313R_RD_MX12832_69U_defconfig
复制代码

二、测试

2.1、使用adb 测试
先adb root+adb shell进入命令
  1. ls -l sys/class/leds/button-backlight/

  2. 可以看到下面这些节点(这个设备是继承kernel-5.10\drivers\leds\led-class.c 的class)
  3. brightness  device  max_brightness  power  subsystem  trigger  uevent

  4. 正常来说leds底下有button-backlight设备节点生成功能就基本跑通
复制代码
  1. 可以对其brightness输入255 表示打开 输入 0 表示关闭按键灯
  2. 例如:
  3. /sys/class/leds/button-backlight # echo 255 > brightness
复制代码
三、注意事项
ls -l 后brightness 的权限不是system(下面图示),节点可能打不开
在main log 可以看到
  1. Svstemerr:java.io.FileNotFoundException: /sys/class/1eds/button-backlight/brightnessopen failed: EACCES (Permission denied)
复制代码

那就是device/agenew 底下的init.project.rc没有给对应的权限







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

2

主题

5

帖子

34

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
34
发表于 2024-10-28 17:40:34 | 显示全部楼层
写的不错,配置可以写明下123,格式不是很好看
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|www.agenewtech.com

GMT+8, 2025-1-12 10:46 , Processed in 0.052096 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表