主要关注以下几点问题:
1、LED驱动框架,内核实现部分?
2、如何使用LED驱动框架实现厂商LED驱动?
3、gpiolib内核实现部分?
4、gpiolib厂商(samsung)实现部分?
5、如何使用gpiolib框架实现gpio相关驱动?
思维导图
LED框架与gpiolib的关系:
1、LED框架提供了LED驱动的基本框架,包括创建class、device、提供sysfs下attribute(操作硬件的中间层);
2、gpiolib是一套gpio管理体系,提供了gpio的管理与操作方法,实际也是中间层,真正的direction_input、direction_output、set、get方法依然需要芯片级硬件操作代码实现;
3、总体来说,应用控制硬件流程如图;