本帖最后由 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文件信息有问题
,看来要解决内核编译失败那个问题了
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
我配置内核,把网络模块去掉了,又报这个错。。。
LD init/built-in.o
make: 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
这个驱动在内核编译成功之后,可以编译使用了,结贴,不过又出现了新的问题
页:
1
[2]