平台:msm8926
相关目录及文件:
- Kernel/drivers/media/platform/msm/camera_v2/sensor/flash:
msm_led_flash.c
注册flash为camera架构中的一个subdev,提供ioctl接口给上层camera server调用。
msm_led_torch.c
提供设置torch模式接口,我们没注册进去。(led_trigger_set_default()里比较的是default_trigger和name, default_trigger在dtsi中被定义,因此下面的leds-qpnp.c才能注册成功set_brightness回调函数)。
msm_led_i2c_trigger.c
如果是单独的flash ic的话通过此文件的i2c接口注册,我们用的pmic自带的flash
led功能,此文件也不需要。
msm_led_trigger.c
注册led驱动,另外还提供config的公共接口。
- Kernel/drivers/leds:
leds-qpnp.c:
PMIC led相关的功能都放在此文件里空间了,当然也包括了flash led. Flash电流的set核心函数是qpnp_flash_set()。
Led-triggers.c
led_trigger_set_default():name匹配就注册set_brightness回调函数。
- Kernel/arch/arm/boot/dts/:
msm_pm8226.dtsi
定义flash/torch led相关配置&