本次記錄在u-boot下添加驅動的過程。
例如:板級文件u-boot-2016.11/board/nuvoton/nuc970/nuc970.c中調用看門狗的的初始化,那u-boot下就要添加對應的驅動,
否則的話就會保錯:
以添加watchdog爲例。添加其他驅動採用類似的做法
1.添加驅動設備文件
所有驅動的文件位置u-boot-2016.11/drivers/。那麼watchdog相關的驅動文件就放到watchdog文件下
這裏添加nuc970_wdt.c
2.修改Makefiie
在u-boot-2016.11/drivers/watchdog/Makefile中添加wdt的相關的目標文件,以便讓這個文件參與編譯
3.修改Kconfig文件
u-boot-2016.11/drivers/watchdog/Kconfig。添加配置項。這樣的話Makefile才能包含所指定的目標
config NUC970_WATCHDOG
bool "NUC970/N9H30 Watchdog"
depends on NUC970
這段的意思是,只要定義了NUC970, 那麼NUC970_WATCHDOG就等於y
則:obj-$(CONFIG_NUC970_WATCHDOG) += nuc970_wdt.o就等價於
obj-y+= nuc970_wdt.o
這就表明了nuc970_wdt.o這個目標就包含到了目標集合obj-y中,那麼make的時候就能編譯這個文件了