Seeed-Studio / seeed-linux-dtoverlays

Device Tree Overlays for Seeed boards
Other
78 stars 55 forks source link

Build error with kernel 6.6.20+rpt-rpi-2712 #91

Closed TB-archIT closed 4 months ago

TB-archIT commented 4 months ago

Describe the bug Compiling the reTerminal display driver is failing with newest kernel on RaspiOS 64-bit.

To Reproduce Steps to reproduce the behavior:

  1. Flashing 2023-12-11-raspios-bookworm-arm64-lite.img.xz
  2. Connected as 'root'
  3. git clone --depth 1 https://github.com/Seeed-Studio/seeed-linux-dtoverlays
  4. cd seeed-linux-dtoverlays and ./scripts/reTerminal.sh --device reTerminal-plus
  5. Eroor as following (compete output commandline):
    
    root@raspberrypi:~# git clone --depth 1 https://github.com/Seeed-Studio/seeed-linux-dtoverlays
    Cloning into 'seeed-linux-dtoverlays'...
    remote: Enumerating objects: 873, done.
    remote: Counting objects: 100% (873/873), done.
    remote: Compressing objects: 100% (715/715), done.
    remote: Total 873 (delta 160), reused 707 (delta 127), pack-reused 0
    Receiving objects: 100% (873/873), 2.17 MiB | 6.91 MiB/s, done.
    Resolving deltas: 100% (160/160), done.
    root@raspberrypi:~# cd seeed-linux-dtoverlays/
    root@raspberrypi:~/seeed-linux-dtoverlays# ./scripts/reTerminal.sh --device reTerminal-plus

Current Debian version is bookworm or later

Install required tool packages

Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB] Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] Get:3 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB] Get:4 http://archive.raspberrypi.com/debian bookworm InRelease [23.6 kB] Get:5 http://deb.debian.org/debian bookworm/main arm64 Packages [8,685 kB] Get:6 http://deb.debian.org/debian bookworm/main armhf Packages [8,498 kB] Get:7 http://archive.raspberrypi.com/debian bookworm/main armhf Packages [372 kB] Get:8 http://archive.raspberrypi.com/debian bookworm/main arm64 Packages [362 kB]
Get:9 http://deb.debian.org/debian bookworm/main Translation-en [6,109 kB]
Get:10 http://deb.debian.org/debian-security bookworm-security/main armhf Packages [140 kB] Get:11 http://deb.debian.org/debian-security bookworm-security/main arm64 Packages [142 kB] Get:12 http://deb.debian.org/debian-security bookworm-security/main Translation-en [86.7 kB] Get:13 http://deb.debian.org/debian bookworm-updates/main armhf Packages [12.1 kB] Get:14 http://deb.debian.org/debian bookworm-updates/main arm64 Packages [12.5 kB] Get:15 http://deb.debian.org/debian bookworm-updates/main Translation-en [13.8 kB] Get:16 http://deb.debian.org/debian bookworm-updates/contrib arm64 Packages [768 B] Get:17 http://deb.debian.org/debian bookworm-updates/contrib Translation-en [408 B] Get:18 http://deb.debian.org/debian bookworm-updates/non-free armhf Packages [492 B] Get:19 http://deb.debian.org/debian bookworm-updates/non-free arm64 Packages [12.0 kB] Get:20 http://deb.debian.org/debian bookworm-updates/non-free Translation-en [7,744 B] Get:21 http://deb.debian.org/debian bookworm-updates/non-free-firmware arm64 Packages [616 B] Get:22 http://deb.debian.org/debian bookworm-updates/non-free-firmware Translation-en [384 B] Fetched 24.7 MB in 8s (3,079 kB/s)
Reading package lists... Done N: Repository 'http://deb.debian.org/debian bookworm InRelease' changed its 'Version' value from '12.4' to '12.5' Reading package lists... Done Building dependency tree... Done Reading state information... Done Suggested packages: menu Recommended packages: linux-headers-generic | linux-headers-686-pae | linux-headers-amd64 | linux-headers The following NEW packages will be installed: dkms 0 upgraded, 1 newly installed, 0 to remove and 60 not upgraded. Need to get 48.7 kB of archives. After this operation, 190 kB of additional disk space will be used. Get:1 http://deb.debian.org/debian bookworm/main arm64 dkms all 3.0.10-8+deb12u1 [48.7 kB] Fetched 48.7 kB in 0s (1,226 kB/s) Selecting previously unselected package dkms. (Reading database ... 56492 files and directories currently installed.) Preparing to unpack .../dkms_3.0.10-8+deb12u1_all.deb ... Unpacking dkms (3.0.10-8+deb12u1) ... Setting up dkms (3.0.10-8+deb12u1) ... Processing triggers for man-db (2.11.2-2) ...

Will compile with the latest kernel...

Sync kernel and userland

Uninstall previous dkms module

sed: can't read /etc/modprobe.d/raspi-blacklist.conf: No such file or directory

Install required kernel package

Reading package lists... Done Building dependency tree... Done Reading state information... Done The following additional packages will be installed: linux-headers-6.6.20+rpt-common-rpi linux-headers-6.6.20+rpt-rpi-2712 linux-headers-6.6.20+rpt-rpi-v8 linux-headers-rpi-2712 linux-image-6.6.20+rpt-rpi-2712 linux-image-6.6.20+rpt-rpi-v8 linux-image-rpi-2712 linux-kbuild-6.6.20+rpt linux-libc-dev Suggested packages: linux-doc-6.6 debian-kernel-handbook The following NEW packages will be installed: linux-headers-6.6.20+rpt-common-rpi linux-headers-6.6.20+rpt-rpi-2712 linux-headers-6.6.20+rpt-rpi-v8 linux-image-6.6.20+rpt-rpi-2712 linux-image-6.6.20+rpt-rpi-v8 linux-kbuild-6.6.20+rpt The following packages will be upgraded: linux-headers-rpi-2712 linux-headers-rpi-v8 linux-image-rpi-2712 linux-image-rpi-v8 linux-libc-dev 5 upgraded, 6 newly installed, 0 to remove and 55 not upgraded. Need to get 71.3 MB of archives. After this operation, 121 MB of additional disk space will be used. Get:1 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-headers-6.6.20+rpt-common-rpi all 1:6.6.20-1+rpt1 [8,211 kB] Get:2 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-image-6.6.20+rpt-rpi-2712 arm64 1:6.6.20-1+rpt1 [28.9 MB] Get:3 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-kbuild-6.6.20+rpt arm64 1:6.6.20-1+rpt1 [1,011 kB] Get:4 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-headers-6.6.20+rpt-rpi-2712 arm64 1:6.6.20-1+rpt1 [1,125 kB] Get:5 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-image-6.6.20+rpt-rpi-v8 arm64 1:6.6.20-1+rpt1 [28.9 MB] Get:6 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-headers-6.6.20+rpt-rpi-v8 arm64 1:6.6.20-1+rpt1 [1,125 kB] Get:7 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-headers-rpi-2712 arm64 1:6.6.20-1+rpt1 [1,160 B] Get:8 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-headers-rpi-v8 arm64 1:6.6.20-1+rpt1 [1,152 B] Get:9 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-image-rpi-2712 arm64 1:6.6.20-1+rpt1 [1,424 B] Get:10 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-image-rpi-v8 arm64 1:6.6.20-1+rpt1 [1,432 B] Get:11 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-libc-dev all 1:6.6.20-1+rpt1 [2,046 kB]
Fetched 71.3 MB in 6s (11.1 MB/s)
apt-listchanges: Reading changelogs... Selecting previously unselected package linux-headers-6.6.20+rpt-common-rpi. (Reading database ... 56516 files and directories currently installed.) Preparing to unpack .../00-linux-headers-6.6.20+rpt-common-rpi_1%3a6.6.20-1+rpt1_all.deb ... Unpacking linux-headers-6.6.20+rpt-common-rpi (1:6.6.20-1+rpt1) ... Selecting previously unselected package linux-image-6.6.20+rpt-rpi-2712. Preparing to unpack .../01-linux-image-6.6.20+rpt-rpi-2712_1%3a6.6.20-1+rpt1_arm64.deb ... Unpacking linux-image-6.6.20+rpt-rpi-2712 (1:6.6.20-1+rpt1) ... Selecting previously unselected package linux-kbuild-6.6.20+rpt. Preparing to unpack .../02-linux-kbuild-6.6.20+rpt_1%3a6.6.20-1+rpt1_arm64.deb ... Unpacking linux-kbuild-6.6.20+rpt (1:6.6.20-1+rpt1) ... Selecting previously unselected package linux-headers-6.6.20+rpt-rpi-2712. Preparing to unpack .../03-linux-headers-6.6.20+rpt-rpi-2712_1%3a6.6.20-1+rpt1_arm64.deb ... Unpacking linux-headers-6.6.20+rpt-rpi-2712 (1:6.6.20-1+rpt1) ... Selecting previously unselected package linux-image-6.6.20+rpt-rpi-v8. Preparing to unpack .../04-linux-image-6.6.20+rpt-rpi-v8_1%3a6.6.20-1+rpt1_arm64.deb ... Unpacking linux-image-6.6.20+rpt-rpi-v8 (1:6.6.20-1+rpt1) ... Selecting previously unselected package linux-headers-6.6.20+rpt-rpi-v8. Preparing to unpack .../05-linux-headers-6.6.20+rpt-rpi-v8_1%3a6.6.20-1+rpt1_arm64.deb ... Unpacking linux-headers-6.6.20+rpt-rpi-v8 (1:6.6.20-1+rpt1) ... Preparing to unpack .../06-linux-headers-rpi-2712_1%3a6.6.20-1+rpt1_arm64.deb ... Unpacking linux-headers-rpi-2712 (1:6.6.20-1+rpt1) over (1:6.1.63-1+rpt1) ... Preparing to unpack .../07-linux-headers-rpi-v8_1%3a6.6.20-1+rpt1_arm64.deb ... Unpacking linux-headers-rpi-v8 (1:6.6.20-1+rpt1) over (1:6.1.63-1+rpt1) ... Preparing to unpack .../08-linux-image-rpi-2712_1%3a6.6.20-1+rpt1_arm64.deb ... Unpacking linux-image-rpi-2712 (1:6.6.20-1+rpt1) over (1:6.1.63-1+rpt1) ... Preparing to unpack .../09-linux-image-rpi-v8_1%3a6.6.20-1+rpt1_arm64.deb ... Unpacking linux-image-rpi-v8 (1:6.6.20-1+rpt1) over (1:6.1.63-1+rpt1) ... Preparing to unpack .../10-linux-libc-dev_1%3a6.6.20-1+rpt1_all.deb ... Unpacking linux-libc-dev (1:6.6.20-1+rpt1) over (1:6.1.63-1+rpt1) ... Setting up linux-headers-6.6.20+rpt-common-rpi (1:6.6.20-1+rpt1) ... Setting up linux-libc-dev (1:6.6.20-1+rpt1) ... Setting up linux-image-6.6.20+rpt-rpi-v8 (1:6.6.20-1+rpt1) ... I: /vmlinuz.old is now a symlink to boot/vmlinuz-6.1.0-rpi7-rpi-v8 I: /initrd.img.old is now a symlink to boot/initrd.img-6.1.0-rpi7-rpi-v8 I: /vmlinuz is now a symlink to boot/vmlinuz-6.6.20+rpt-rpi-v8 I: /initrd.img is now a symlink to boot/initrd.img-6.6.20+rpt-rpi-v8 /etc/kernel/postinst.d/dkms: dkms: running auto installation service for kernel 6.6.20+rpt-rpi-v8. dkms: autoinstall for kernel: 6.6.20+rpt-rpi-v8. /etc/kernel/postinst.d/initramfs-tools: update-initramfs: Generating /boot/initrd.img-6.6.20+rpt-rpi-v8 Setting up linux-kbuild-6.6.20+rpt (1:6.6.20-1+rpt1) ... Setting up linux-headers-6.6.20+rpt-rpi-v8 (1:6.6.20-1+rpt1) ... /etc/kernel/header_postinst.d/dkms: dkms: running auto installation service for kernel 6.6.20+rpt-rpi-v8. dkms: autoinstall for kernel: 6.6.20+rpt-rpi-v8. Setting up linux-image-rpi-v8 (1:6.6.20-1+rpt1) ... Setting up linux-image-6.6.20+rpt-rpi-2712 (1:6.6.20-1+rpt1) ... I: /vmlinuz.old is now a symlink to boot/vmlinuz-6.6.20+rpt-rpi-v8 I: /initrd.img.old is now a symlink to boot/initrd.img-6.6.20+rpt-rpi-v8 I: /vmlinuz is now a symlink to boot/vmlinuz-6.6.20+rpt-rpi-2712 I: /initrd.img is now a symlink to boot/initrd.img-6.6.20+rpt-rpi-2712 /etc/kernel/postinst.d/dkms: dkms: running auto installation service for kernel 6.6.20+rpt-rpi-2712. dkms: autoinstall for kernel: 6.6.20+rpt-rpi-2712. /etc/kernel/postinst.d/initramfs-tools: update-initramfs: Generating /boot/initrd.img-6.6.20+rpt-rpi-2712 Setting up linux-headers-rpi-v8 (1:6.6.20-1+rpt1) ... Setting up linux-headers-6.6.20+rpt-rpi-2712 (1:6.6.20-1+rpt1) ... /etc/kernel/header_postinst.d/dkms: dkms: running auto installation service for kernel 6.6.20+rpt-rpi-2712. dkms: autoinstall for kernel: 6.6.20+rpt-rpi-2712. Setting up linux-image-rpi-2712 (1:6.6.20-1+rpt1) ... Setting up linux-headers-rpi-2712 (1:6.6.20-1+rpt1) ... W: --force-yes is deprecated, use one of the options starting with --allow instead. KBUILD: /lib/modules/6.6.20+rpt-rpi-2712/build Sign command: /lib/modules/6.6.20+rpt-rpi-2712/build/scripts/sign-file Signing key: /var/lib/dkms/mok.key Public certificate (MOK): /var/lib/dkms/mok.pub Certificate or key are missing, generating self signed certificate for MOK... Creating symlink /var/lib/dkms/ltr30x/0.1/source -> /usr/src/ltr30x-0.1

Building module: Cleaning build area... make -j4 KERNELRELEASE=6.6.20+rpt-rpi-2712 all KVERSION=6.6.20+rpt-rpi-2712....(bad exit status: 2) Error! Bad return status for module build on kernel: 6.6.20+rpt-rpi-2712 (aarch64) Consult /var/lib/dkms/ltr30x/0.1/build/make.log for more information. Can't compile with this kernel, aborting Please try to compile with the option --compat-kernel DKMS make.log for ltr30x-0.1 for kernel 6.6.20+rpt-rpi-2712 (aarch64) Thu 14 Mar 08:04:43 CET 2024 make -C /lib/modules/6.6.20+rpt-rpi-2712/build M=/var/lib/dkms/ltr30x/0.1/build modules make[1]: Entering directory '/usr/src/linux-headers-6.6.20+rpt-rpi-2712' CC [M] /var/lib/dkms/ltr30x/0.1/build/ltr30x.o /var/lib/dkms/ltr30x/0.1/build/ltr30x.c:1614:19: error: initialization of ‘int ()(struct i2c_client )’ from incompatible pointer type ‘int ()(struct i2c_client , const struct i2c_device_id *)’ [-Werror=incompatible-pointer-types] 1614 | .probe = ltr501_probe, | ^~~~ /var/lib/dkms/ltr30x/0.1/build/ltr30x.c:1614:19: note: (near initialization for ‘ltr501_driver.probe’) cc1: some warnings being treated as errors make[3]: [/usr/src/linux-headers-6.6.20+rpt-common-rpi/scripts/Makefile.build:248: /var/lib/dkms/ltr30x/0.1/build/ltr30x.o] Error 1 make[2]: [/usr/src/linux-headers-6.6.20+rpt-common-rpi/Makefile:1938: /var/lib/dkms/ltr30x/0.1/build] Error 2 make[1]: *** [/usr/src/linux-headers-6.6.20+rpt-common-rpi/Makefile:246: __sub-make] Error 2 make[1]: Leaving directory '/usr/src/linux-headers-6


**Expected behavior**
Finishing without error

**Additional context**
Here the content of `/var/lib/dkms/ltr30x/0.1/build/make.log`:

DKMS make.log for ltr30x-0.1 for kernel 6.6.20+rpt-rpi-2712 (aarch64) Thu 14 Mar 08:04:43 CET 2024 make -C /lib/modules/6.6.20+rpt-rpi-2712/build M=/var/lib/dkms/ltr30x/0.1/build modules make[1]: Entering directory '/usr/src/linux-headers-6.6.20+rpt-rpi-2712' CC [M] /var/lib/dkms/ltr30x/0.1/build/ltr30x.o /var/lib/dkms/ltr30x/0.1/build/ltr30x.c:1614:19: error: initialization of ‘int ()(struct i2c_client )’ from incompatible pointer type ‘int ()(struct i2c_client , const struct i2c_device_id *)’ [-Werror=incompatible-pointer-types] 1614 | .probe = ltr501_probe, | ^~~~ /var/lib/dkms/ltr30x/0.1/build/ltr30x.c:1614:19: note: (near initialization for ‘ltr501_driver.probe’) cc1: some warnings being treated as errors make[3]: [/usr/src/linux-headers-6.6.20+rpt-common-rpi/scripts/Makefile.build:248: /var/lib/dkms/ltr30x/0.1/build/ltr30x.o] Error 1 make[2]: [/usr/src/linux-headers-6.6.20+rpt-common-rpi/Makefile:1938: /var/lib/dkms/ltr30x/0.1/build] Error 2 make[1]: [/usr/src/linux-headers-6.6.20+rpt-common-rpi/Makefile:246: __sub-make] Error 2 make[1]: Leaving directory '/usr/src/linux-headers-6.6.20+rpt-rpi-2712' make: [Makefile:13: all] Error 2

bigbearishappy commented 4 months ago

Because of the kernel upgrade. We need to upgrade the driver code in here too. This problem is fixed in this commit. Please pull the latest code and test it .

TB-archIT commented 4 months ago

Yes, dkms is working again with it. Thx