GSLX680驅動的移植實踐

2021-09-26 04:03:42 字數 1178 閱讀 5134

將gslx680觸控螢幕驅動移植到自己的開發板上(對應的原始碼檔案gslx680.c),並且實現可以使用make menuconfig進行動態的載入和解除安裝因為觸控螢幕裝置屬於一種典型的輸入裝置,所以他的驅動原始碼最好是放在 drivers\input\touchscreen這個目錄下,這樣是最規範的。

(1)定義乙個巨集名,譬如config_touchscreen_gslx680

(2)mac**件中新增board_info

在**中使用巨集來條件編譯 驅動原始碼的實現是基於i2c匯流排方式的,所以分為i2c裝置驅動註冊和i2c裝置註冊兩個方面。gslx680.c檔案只是實現了裝置驅動的註冊,而將裝置的註冊放在了mac**件中, 當然裝置和裝置驅動的註冊是可以放在乙個檔案中的,這都沒有錯,只是不太符合規範,所以這其實就體現出了一種使用的靈活性。所以就存在乙個匹配問題,那當然就是名字了,一定要保證他們能夠匹配的上。

static struct i2c_board_info i2c_devs1 __initdata = ,

#endif

#ifdef config_touchscreen_gslx680

,#endif

(3)在makefile中使用巨集來條件配置

在drivers\input\touchscreen目錄下的makefile檔案中加入條件編譯控制語句:

obj-$(config_touchscreen_gslx680) += gslx680.o  gsl_point_id
gsl_point_id是乙個預編譯好的函式庫檔案,裡面有很多的函式是被gslx680.c檔案呼叫的,所以一定要加上。

(4)在kconfig專案中新增巨集的配置項

config touchscreen_gslx680

tristate "9tripod gsl1680 touch panel controller"

depends on i2c

help

this enables support for focaltech over i2c based touchscreens.

(5)make menuconfig並選擇y或者n

新核心移植 LCD驅動 移植新的核心

問 之前 kernel command line console ttysac0,115200 root dev nfs nfsroot 192.168.2.102 work nfs root fs mini mdev new ip 192.168.2.5 192.168.2.102 192.168...

u boot 上移植新的 lcd 驅動

本移植過程假設使用者使用者是從給定的 demo 板開發自己的新產品。1 board myboard myboard.c 該檔案增加如下 下面的結構體中配置 lcd 的引數 然後根據需要調整 define mux default es2 位置開始 gpio 口定義 include ifdef conf...

驅動編入核心(移植) Kconfig的使用

1.在linux 3.0 8 driver mkdir mydriver 2.linux 3.0 8 driver mydriver touch makefile kconfig led dri.c 新建3個檔案 驅動檔案要放的目錄 2.1 在mydriver目錄的 makefile 中寫入 obj...