樹莓派上更新編譯ASIX ax88772驅動過程

本文作爲第一次編譯驅動的記錄,僅供以後參考回憶

思路

1,編寫Makefile文件

2,在樹莓派上本地編譯

詳細記錄:

由於ASIX的驅動只是linux 2.6以上的內核,並啓動源碼文件,針對ARM平臺,需要重新編譯驅動文件。

在asix網站上下載最新的源碼,重命名爲axasix.c axasix.h,並且在源碼中修改對應的頭文件。

在kernel源文件中,找到drivers/net/usb中的makefile,修改如下內容

obj-$(CONFIG_USB_LAN78XX)    += lan78xx.o
obj-y += axasix.o
#obj-$(CONFIG_USB_NET_AX8817X)    += asix.o
#asix-y := asix_devices.o asix_common.o ax88172a.o
#obj-$(CONFIG_USB_NET_AX88179_178A)      += ax88179_178a.o
obj-$(CONFIG_USB_NET_CDCETHER)    += cdc_ether.o

在axasix.h文件中,將判斷kernel版本註釋

#define AX_RXCOE_FOPC			0x8000
//#if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 22)
#define AX_RXCOE_DEF_CSUM		(AX_RXCOE_IPCE | AX_RXCOE_IPVE | \
					 AX_RXCOE_V6VE | AX_RXCOE_TCPE | \
					 AX_RXCOE_UDPE |  AX_RXCOE_ICV6 | \
					 AX_RXCOE_TCPV6 | AX_RXCOE_UDPV6)
//#else
//#define AX_RXCOE_DEF_CSUM		(AX_RXCOE_IPCE | AX_RXCOE_IPVE | \
					 AX_RXCOE_TCPE | AX_RXCOE_UDPE)
//#endif

#define AX_RXCOE_64TE			0x0100

makefile文件修改完成

 

在樹莓派上編譯驅動過程主要參考了官方的文檔

https://www.raspberrypi.org/documentation/linux/kernel/building.md

拍拍小站也給了詳細的操作過程https://www.pypyn.com/archives/320/#comment-59

嗶哩嗶哩視頻非常詳細 https://www.bilibili.com/video/av91990721/

非常感謝小楊和客戶陳工。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章