版本:uboot2019
平台:arm926
背景:最近调试gpio驱动发现一直没有进入.probe(),已经确认compatible匹配ok,driver和device已经关联上。但是很艰难才找到调用.probe()的位置。
在此记录gpio驱动调用.probed()的流程:
gpio_request->
gpio_to_device->
uclass_first_device->
uclass_get_device_tail->
device_probe->
uclass_get_device_by_seq->
uclass_get_device_tail->
device_probe->
xxxx_gpio_probe
可以推断很多模块的probe都是在确认系统被使用的时候才会调用.probe()。
由于原系统没有调用gpio_request()所以不会调用gpio.probe(),因此豁然开朗。
本文详细介绍了在U-Boot 2019版本中针对ARM926平台调试GPIO驱动的过程。作者通过深入研究gpio_request()函数的调用流程,揭示了gpio驱动的probe函数如何被触发。这对于理解U-Boot中的GPIO驱动机制非常有帮助。
498

被折叠的 条评论
为什么被折叠?



