進放內核文件夾vim include/linux/platform_device.h
裡面除了有一個platform_device結構體之外,還有一個platform_driver結構體
platform_driver結構體裡有probe,remove,shutdown,suspend,resume 5個指針函數,還有兩個結構體
還有兩個函數,platform_driver_register/platform_driver_unregister用於注冊和注銷驅動的
例如,我要想用一個GPIO,我去注冊它,如果注冊失敗,就說明這個GPIO被占用了。
回到注冊設備,如果arch/arm/mach-exynos/mach-itop4412.c裡有一個.name="hello_ctl",與驅動程序
裡platform_driver結構體.driver.name="hello_ctl"一致(platform_match程序處理這個事情),
就會生成設備節點,然後調用platform_driver_probe初始化