[Linux] \linux-3.0.35 内核编译驱动问题

0

主题

161

回帖

560

积分

LS1028A通行证LS1012A通行证LS1043A\46A通行证i.MX6Q通行证i.MX6UL通行证i.MX8MM通行证i.MX8MP通行证i.MX8MPx-SMARC通行证i.MX9596通行证i.MX9352\i.MX9131通行证i.MX RT通行证RK3568通行证RK3588通行证RK3588S2通行证RK3399通行证RK3576通行证RK3562通行证RK3506通行证RV1126通行证RK3572通行证RK1820\RK1828通行证MA35通行证AM5718通行证AM335x通行证AM62x通行证A40i\T3\T507\T527通行证T113i通行证T536通行证T153通行证XX18通行证2K0300\2K0500通行证JH7110通行证D9360通行证Hi3519A通行证G2L通行证TCU通行证FDU产品通行证FDU070K02\FDU101K02通行证5G转接卡通行证FCU11xx通行证FCU1106通行证FCU1201通行证FCU1301通行证FCU1303通行证FCU1401通行证FCU2201通行证FCU1501通行证FCU2301\FCU2302通行证FCU2401通行证FCU2601通行证FCU3001通行证FCU3011通行证FCU3101通行证FCU3501通行证StarterKit通行证

Forlinx-Wangjy 发表于 2021-7-13 14:36:27 | 显示全部楼层
您这个不带Kconfig和Makefile吗

点评

这个驱动模块只有一个makefile Kconfig 不需要的 KERNEL_SRC = /lib/modules/`uname -r`/build all: build obj-m += xr17v35x.o xrpci-objs := xr17v35x.o EXTRA_CFLAGS += -DDEBUG=1 build:  详情 回复 发表于 2021-7-13 14:45
可以修改 obj-$(CONFIG_XR17V35_PORT) += xr17v35x.o config XR17V35_PORT tristate "XR17V35" default m  详情 回复 发表于 2021-7-13 14:39
点评回复 支持 反对

使用道具 举报

8

主题

29

回帖

67

积分

i.MX8MM通行证i.MX6Q通行证

楼主| zanglengyu 发表于 2021-7-13 14:39:28 | 显示全部楼层
本帖最后由 zanglengyu 于 2021-7-13 14:41 编辑
wjy 发表于 2021-7-13 14:36
您这个不带Kconfig和Makefile吗

可以修改 makefile
obj-$(CONFIG_XR17V35_PORT)        += xr17v35x.o

KConfig
config XR17V35_PORT
        tristate "XR17V35"
        default m
        
我用dmesg看了一下, 有这个错误:

xr17v35x: no symbol version for module_layout
xr17v35x: no symbol version for module_layout
xr17v35x: no symbol version for module_layout
mxs_perfmon: no symbol version for module_layout


看来可能还是因为没有编译内核,直接make modules 导致的。这样出来的ko文件信息有问题
,看来要解决内核编译失败那个问题了
点评回复 支持 反对

使用道具 举报

8

主题

29

回帖

67

积分

i.MX8MM通行证i.MX6Q通行证

楼主| zanglengyu 发表于 2021-7-13 14:45:50 | 显示全部楼层
wjy 发表于 2021-7-13 14:36
您这个不带Kconfig和Makefile吗


这个驱动模块只有一个makefile
Kconfig 不需要的

KERNEL_SRC = /lib/modules/`uname -r`/build

all: build

obj-m += xr17v35x.o

xrpci-objs :=        xr17v35x.o

EXTRA_CFLAGS +=  -DDEBUG=1

build:
        $(MAKE) -C $(KERNEL_SRC) SUBDIRS=$(PWD) modules

install:
        cp xr17v35x.ko /lib/modules/$(shell uname -r)/kernel/drivers/char
clean:
        rm -f *~ *.o
        rm -f *~ *.ko
点评回复 支持 反对

使用道具 举报

8

主题

29

回帖

67

积分

i.MX8MM通行证i.MX6Q通行证

楼主| zanglengyu 发表于 2021-7-13 15:49:15 | 显示全部楼层
我配置内核,把网络模块去掉了,又报这个错。。。

LD      init/built-in.o
make[1]: warning:  Clock skew detected.  Your build may be incomplete.
  LD      .tmp_vmlinux1
arch/arm/mach-mx6/built-in.o: In function `mx6_arm2_fec_phy_init':
usb_h1.c:(.text+0xfedc): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0xfef0): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0xff04): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0xff14): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0xff2c): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0xff40): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0xff54): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0xff68): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0xff78): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0xff94): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0xffa8): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0xffb8): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0xffd0): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0xffe0): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0x10004): undefined reference to `mdiobus_write'
arch/arm/mach-mx6/built-in.o: In function `mx6_arm2_fec_power_hibernate':
usb_h1.c:(.text+0x10028): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x10038): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0x10054): undefined reference to `mdiobus_write'
arch/arm/mach-mx6/built-in.o: In function `mx6q_sabrelite_fec_phy_init':
usb_h1.c:(.text+0x1074c): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x10760): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x10774): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x10788): undefined reference to `mdiobus_write'
arch/arm/mach-mx6/built-in.o:usb_h1.c:(.text+0x1079c): more undefined references to `mdiobus_write' follow
arch/arm/mach-mx6/built-in.o: In function `mx6q_sabresd_fec_phy_init':
usb_h1.c:(.text+0x114f4): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0x1150c): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11520): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11534): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11548): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11558): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0x11574): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11588): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11598): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0x115b0): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x115c0): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0x115e4): undefined reference to `mdiobus_write'
arch/arm/mach-mx6/built-in.o: In function `mx6q_sabreauto_fec_phy_init':
usb_h1.c:(.text+0x11f50): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11f64): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11f78): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11f88): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0x11fa0): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11fb4): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11fc8): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11fdc): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x11fec): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0x12008): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x1201c): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x1202c): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0x12044): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x12054): undefined reference to `mdiobus_read'
usb_h1.c:(.text+0x12078): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x1208c): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x120a0): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x120b4): undefined reference to `mdiobus_write'
usb_h1.c:(.text+0x120c8): undefined reference to `mdiobus_write'
arch/arm/mach-mx6/built-in.o:usb_h1.c:(.text+0x120dc): more undefined references to `mdiobus_write' follow
make: *** [.tmp_vmlinux1] Error 1
点评回复 支持 反对

使用道具 举报

8

主题

29

回帖

67

积分

i.MX8MM通行证i.MX6Q通行证

楼主| zanglengyu 发表于 2021-7-14 10:06:02 | 显示全部楼层
这个驱动在内核编译成功之后,可以编译使用了,结贴,不过又出现了新的问题
点评回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则