国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

6ull加載linux驅(qū)動(dòng)模塊失敗解決方法

瀏覽:134日期:2023-03-07 14:40:10
目錄
  • 0x01 加載驅(qū)動(dòng)模塊失敗
  • 0x02 解決方法
  • 總結(jié)

0x01 加載驅(qū)動(dòng)模塊失敗

加載驅(qū)動(dòng)失敗描述信息如下,錯(cuò)誤信息提示板卡中運(yùn)行的 linux 內(nèi)核版本是 4.1.15-g49efdaa ,架構(gòu)是 ARMv7 ;而編譯驅(qū)動(dòng)使用的內(nèi)核源碼版本為 4.1.15 ,架構(gòu)是 ARMv6 。說(shuō)明編譯驅(qū)動(dòng)使用的內(nèi)核版本名和架構(gòu)與板卡中運(yùn)行的均不一致。

root@ALIENTEK-IMX6U:~/get# insmod led.ko[ 1634.442887] led: version magic "4.1.15 SMP preempt mod_unload modversions ARMv6 p2v8 " should be "4.1.15-g49efdaa SMP preempt mod_unload modversions ARMv7 p2v8 "insmod: ERROR: could not insert module led.ko: Invalid module format

0x02 解決方法

有兩種解決方法:
(1) 重新編譯內(nèi)核、設(shè)備樹(shù)并燒錄到板卡中。
(2) 更改主機(jī)中的內(nèi)核配置信息,使其與板卡中的一致。

重新燒錄內(nèi)核比較麻煩,這里使用方法二

1、在板卡終端中輸入命令uname -runame -p查看板卡所運(yùn)行的內(nèi)核的版本和架構(gòu)信息。

root@ALIENTEK-IMX6U:~/get# uname -r4.1.15-g49efdaaroot@ALIENTEK-IMX6U:~/get# uname -parmv7l

說(shuō)明板卡中運(yùn)行的 linux 內(nèi)核版本為4.1.15-g49efdaa,處理器架構(gòu)為ARMv7

2、進(jìn)入主機(jī)中驅(qū)動(dòng)模塊所使用的 linux 內(nèi)核的根目錄,執(zhí)行 make menuconfig 啟動(dòng) linux 內(nèi)核圖形化配置界面(不能使用menuconfig的可以百度去安裝相應(yīng)依賴庫(kù))

如下圖所示,進(jìn)入System Type選項(xiàng):

然后進(jìn)入Multiple platform selection選項(xiàng):

然后在下圖的界面中取消第一條ARMv6 based platforms(ARM11)前面的*號(hào)(選中后按空格即可取消)

取消完畢后保存、退出,這樣就把內(nèi)核支持的架構(gòu)改為了 ARMv7 。
配置完 menuconfig 后不要再輸入其他的配置內(nèi)核的命令,不然會(huì)沖刷掉之前的配置。

3、打開(kāi)內(nèi)核根目錄中的 Makefile ,在EXTRAVERSION變量后添加你板卡中運(yùn)行的linux內(nèi)核版本號(hào)的后半部分,比如我的內(nèi)核后半部分就是 -g49efdaa

更改完后保存,在 linux 內(nèi)核根目錄下執(zhí)行make -j12重新編譯內(nèi)核。
內(nèi)核編譯完畢后重新編譯驅(qū)動(dòng)模塊。

驅(qū)動(dòng)模塊編譯完畢后用 NFS 下載到板卡中,輸入modinfo [驅(qū)動(dòng)模塊名]查看驅(qū)動(dòng)模塊信息:

root@ALIENTEK-IMX6U:~/get# modinfo led.kofilename:       /home/root/get/led.koauthor: zuozhongkailicense:GPLsrcversion:     597E1DDC8A372707B8FD0DEdepends:vermagic:       4.1.15-g49efdaa SMP preempt mod_unload modversions ARMv7 p2v8

可見(jiàn)vermagic一行中顯示的驅(qū)動(dòng)模塊所屬的內(nèi)核版本和處理器架構(gòu)與板卡中的內(nèi)核信息一致,驅(qū)動(dòng)模塊可以成功加載。

root@ALIENTEK-IMX6U:~/get# uname -r4.1.15-g49efdaaroot@ALIENTEK-IMX6U:~/get# uname -parmv7l

總結(jié)

到此這篇關(guān)于6ull加載linux驅(qū)動(dòng)模塊失敗解決方法的文章就介紹到這了,更多相關(guān)加載linux驅(qū)動(dòng)模塊失敗內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: Linux Apache
主站蜘蛛池模板: 正宁县| 舒兰市| 沂南县| 黔南| 容城县| 全州县| 大足县| 滁州市| 安徽省| 张家口市| 比如县| 防城港市| 清苑县| 丹寨县| 通辽市| 邻水| 武夷山市| 扎囊县| 吉隆县| 城口县| 娄底市| 尖扎县| 香河县| 泗洪县| 广昌县| 光泽县| 山西省| 丰顺县| 永登县| 五指山市| 东乌珠穆沁旗| 襄汾县| 堆龙德庆县| 石景山区| 汝城县| 禄丰县| 故城县| 抚宁县| 勃利县| 芜湖县| 宿松县|