1. 程式人生 > >核心裁剪,arm_mini2440開發板中增刪自己寫的驅動

核心裁剪,arm_mini2440開發板中增刪自己寫的驅動

1、把編譯通過的buttons1711.c檔案放入

/home/mini2440/linux-2.6.32.2/drivers/char/

2、修改Makefile

        在同一個目錄下(第1步中放入.c檔案的目錄/home/mini2440/linux-2.6.32.2/drivers/char/)開啟Makefile:

(法1)(不推薦):在obj-y       += 後面加上buttons1711.o

        然後重新在/home/mini2440/linux-2.6.32.2/中make zImage,再把生成的zImage燒寫進開發板就可以用了。

(法2)在底下新增(可找原來類似的位置)

obj-$(CONFIG_BUTTONS1711)      += buttons1711.o

3、修改配置項

在同一個目錄下(第1步中的/home/mini2440/linux-2.6.32.2/drivers/char/)開啟Kconfig:

新增配置項: (可找原來類似的位置)

config BUTTONS1711
     tristate "Buttons driver for FriendlyARM Mini1711 development boards"
     depends on MACH_MINI2440
     default y if MACH_MINI2440
     help
       this is buttons driver for FriendlyARM Mini1711 development boards

解析:

config BUTTONS1711
    // tristate為型別,三態(Y,N,M),其他型別如bool等
    //雙引號中為選單的解釋、提示符
    tristate "Buttons driver for FriendlyARM Mini1711 development boards"
    //依賴
    depends on MACH_MINI2440
    //y表預設編譯進核心
    default y if MACH_MINI2440
    //選單中的幫助提示
    help
       this is buttons driver for FriendlyARM Mini1711 development boards

單選:

choice

。。。。。。

endchoice

4、檢視配置項是否更改成功

在/home/mini2440/linux-2.6.32.2/目錄下輸入:

make menuconfig(若之前修改語法錯誤則敲完命令會提示出錯)

進入Device DriversàCharacter devices可以看到剛才新增的配置項

注:修改了選單實際上是修改了/mini2440/linux-2.6.32.2/.config

5、生成映象檔案

回到.config目錄(/home/mini2440/linux-2.6.32.2/)輸入make zImage

會在/home/mini2440/linux-2.6.32.2/arch/arm/boot/中生成zImage

        注:如果是輸入make則是全部重新編譯,若make成功則make zImage一定成功,make zImage只是產生映象檔案。

        注:cp  config_mini2440_x35  .config則是重新更改配置為config_mini2440_x35的配置,原來的修改也被改回來。

6、把上一步生成的(/home/mini2440/linux-2.6.32.2/arch/arm/boot/zImage)zImage通過minitool(開發板左邊開關撥到nor)燒寫進開發板即可。

7、查詢檔案位置

        1.先找到Makefile中的obj-$(CONFIG_BUTTONS1711)名字

        2.在make menuconfig中按"/"輸入BUTTONS1711查詢位置

        3.通過grep查詢