
ubuntu-18.04.2-preinstalled-server-arm64+raspi3.img.xz 이미지에서 시작(https://wiki.ubuntu.com/ARM/RaspberryPi) 커널 빌드 중에 활성화되지 않은 ad525x_dpot I2C 드라이버를 추가하려고 합니다.
DKMS 패키지를 만들기 위해 해당 Linux 소스에서 ad525x_dpot.c
, ad525x_dpot.h
을 가져왔습니다 .ad525x_dpot-i2c.c
dkms.conf:
PACKAGE_NAME="ad525x_dpot"
PACKAGE_VERSION="0.10"
MAKE[0]="make all KVERSION=$kernelver"
CLEAN="make clean"
BUILT_MODULE_NAME[0]="ad525x_dpot"
DEST_MODULE_LOCATION[0]="/kernel/drivers/misc"
AUTOINSTALL="yes"
메이크파일:
obj-m := ad525x_dpot.o ad525x_dpot-i2c.o
KVERSION := $(shell uname -r)
all:
$(MAKE) -C /lib/modules/$(KVERSION)/build M=$(PWD) modules
clean:
$(MAKE) -C /lib/modules/$(KVERSION)/build M=$(PWD) clean
모듈은 ad525x_dpot
에 의해 로드될 수 modprobe
있으며 에는 표시되지만 lsmod
에는 표시되지 않습니다 /sys/bus/i2c/drivers
. syslog에 몇 가지 경고가 있습니다.
ad525x_dpot: loading out-of-tree module taints kernel.
ad525x_dpot: module verification failed: signature and/or required key missing - tainting kernel
왜 에 표시되지 않습니까 /sys/bus/i2c/drivers
?
ad799x
커널과 함께 제공되는 유사한 커널 모듈을 로드하려고 했습니다 . 에 나타납니다 /sys/bus/i2c/drivers/ad799x
(을 사용하도록 정의된 장치가 없으므로 ad799x
장치 트리나 보드 구성과 관련이 없습니다).
답변1
두 개의 별도 커널 모듈을 갖기 위해 두 개의 DKMS 패키지로 ad525x_dpot.o
분할 해야 했습니다 .ad525x_dpot-i2c.o