【MTK】 配置GPIO控制前置闪光灯


flash 配置相关文件路径:
 Flashlight source code and header file:
– [ANDROID]/[KERNEL]/driver/misc/mediatek/flashlight
 Kernel config and Makefile:
– [ANDROID]/[KERNEL]/driver/misc/mediatek/flashlight/Kconfig
– [ANDROID]/[KERNEL]/driver/misc/mediatek/flashlight/Makefile
– [ANDROID]/[KERNEL]/arch/arm64/configs/[PROJECT_defconfig]
 Device tree:
– [ANDROID]/[KERNEL]/arch/arm64/boot/dts/[PROJECT].dts
– [ANDROID]/[KERNEL]/arch/arm64/boot/dts/[PLATFORM].dts
– [ANDROID]/[KERNEL]/drivers/misc/mediatek/dws/[PLATFORM]/[PROJ
ECT].dws

  1. Add new platform or project in mapping table

TYPE: 0(Rear led set), 1(front led set)
CT:   0(High color temp), 1(low color temp)
PART: HW part, just modify part 0, if you are not sure about this.
/* {TYPE, CT, PART, "NAME", CHANNEL, DECOUPLE} */

 {1, 0, 0, "flashlights-subflashlight-gpio", 1, 0},

配置对应的flashlight gpio pin

device/mediateksample/tb8168p1_64_bsp/starmini/WFE01_WXGA/tb8168p1_64_bsp.dts


+&flashlight_sub{
+       pinctrl-names = "default", "sub_hwen_high", "sub_hwen_low";
+       pinctrl-0 = <&flashlight_sub_pins_default>;
+       pinctrl-1 = <&flashlight_sub_pins_hwen_high>;
+       pinctrl-2 = <&flashlight_sub_pins_hwen_low>;
+       status = "okay";
+};
 &flashlights_led191 {
        pinctrl-names = "default", "hwen_high", "hwen_low";
        pinctrl-0 = <&flashlight_pins_default>;
@@ -1084,7 +1095,30 @@ ROOT_NODE {
                };
        };
 
-       
+       flashlight_sub_pins_default: flashlight_sub_pins_default {
+               pins_cmd_dat {
+                       pinmux = <MT8168_PIN_119_DMIC0_DAT1__FUNC_GPIO119>;
+                       slew-rate = <1>;
+                       output-low;
+               };      
+       };
+
+       flashlight_sub_pins_hwen_high: flashlight_sub_pins_hwen_high {
+               pins_cmd_dat {
+                       pinmux = <MT8168_PIN_119_DMIC0_DAT1__FUNC_GPIO119>;
+                       slew-rate = <1>;
+                       output-high;
+               };
+       };
+
+       flashlight_sub_pins_hwen_low: flashlight_sub_pins_hwen_low {
+               pins_cmd_dat {
+                       pinmux = <MT8168_PIN_119_DMIC0_DAT1__FUNC_GPIO119>;
+                       slew-rate = <1>;
+                       output-low;
+               };
+       };
+
 };
 

 

对应的 flashlights-gpio-sub.c代码参考flashlights-dummy-gpio.c 去控制闪光灯。

 详细文档参看官方文档:

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Healer_S

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值