我在写platform驱动的时候参考了一些linux已有的platform driver代码发现了一些我不知道的知识点在这里和大家分享一下。
(一)宏module_platform_driver
在platform_device.h 中定义
我们继续追踪 module_driver, 在device.h中有下定义
那么module_platform_driver(hello_world)等效如下代码
static int __init __driver_hello_world_init(void)
{
return platform_driver_register(hello_world);
}
module_init(__driver_hello_world_init)
static int __exit_driver_hello_world_exit(void)
{
return platform_driver_unregister(hello_world);
}
module_exit(__driver_hello_world_exit)