首先切换到kernel下:
![1.jpg](//file.elecfans.com/web2/M00/6D/52/pYYBAGMyqeqAQjHvAAArhCtoUkQ372.jpg)
运行make ARCH=arm64 rk3308_robot_defconfig
之后在运行make ARCH=arm64 menuconfig
我们这时就进入到了配置界面,选择Device Driver
![1.jpg](//file.elecfans.com/web2/M00/6C/BB/poYBAGMyqf-AGBMaAADy_FBAtQM640.jpg)
选择LED Support
![1.jpg](//file.elecfans.com/web2/M00/6D/52/pYYBAGMyqhOAVm5WAAEaByGWrV8007.jpg)
在进入LED Support选择 LED Support for GPIO connected LEDs
![1.jpg](//file.elecfans.com/web2/M00/6C/BB/poYBAGMyqjqAYjgiAAFfLI5-slg724.jpg)
退出进行保存,运行make ARCH=arm64 savedefconfig,再运行
cp defconfig arch/arm64/configs/rk3308_robot_defconfig。
修改kernel下的dts文件:
路径\kernel\arch\arm64\boot\dts\rockchip\下自己的dts文件,添加自己的灯光配置:
想查看配置的方法可以在kernel\Documentation\devicetree\bindings\leds下的leds-gpios进行查看
![1.jpg](//file.elecfans.com/web2/M00/6C/BB/poYBAGMyqmiAT2d5AAGSiPV_WCY366.jpg)
leds {
status = "okay";
compatible = "gpio-leds";
power {
label = "firefly:red:power";
linux,default-trigger = "ir-power-click";
default-state = "on";
gpios = <&gpio2 RK_PA1GPIO_ACTIVE_HIGH>;
};
user {
label = "firefly:blue:user";
linux,default-trigger = "ir-user-click";
default-state = "on";
gpios = <&gpio4 RK_PB2 GPIO_ACTIVE_HIGH>;
};
user1 {
label = "firefly:green:user";
linux,default-trigger = "ir-user-click";
default-state = "on";
gpios = <&gpio2 RK_PC3 GPIO_ACTIVE_HIGH>;
};
};
gpios修改成自己的相应的gpio接口就可以了。
最后使用./build.sh进行编译,烧录进板子后,我们就可以使用echo进行灯光的操作,例如:这是将灯光进行关闭
echo 0 >/sys/class/leds/firefly:blue:user/brightness
原作者:曾许人间第一流.
|