Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.kernel > #89399 > unrolled thread
| Started by | Benjamin Drung <bdrung@debian.org> |
|---|---|
| First post | 2025-09-24 20:50 +0200 |
| Last post | 2025-12-18 13:40 +0100 |
| Articles | 14 — 5 participants |
Back to article view | Back to linux.debian.kernel
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Benjamin Drung <bdrung@debian.org> - 2025-09-24 20:50 +0200
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Benjamin Drung <bdrung@debian.org> - 2025-10-30 20:40 +0100
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Uwe Kleine-König <u.kleine-koenig@baylibre.com> - 2025-11-05 20:20 +0100
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Benjamin Drung <bdrung@debian.org> - 2025-11-17 02:10 +0100
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Benjamin Drung <bdrung@debian.org> - 2025-11-22 16:30 +0100
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Salvatore Bonaccorso <carnil@debian.org> - 2025-11-26 09:00 +0100
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Benjamin Drung <bdrung@debian.org> - 2025-11-28 23:00 +0100
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Salvatore Bonaccorso <carnil@debian.org> - 2025-11-29 00:10 +0100
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Salvatore Bonaccorso <carnil@debian.org> - 2025-11-30 10:30 +0100
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Benjamin Drung <bdrung@debian.org> - 2025-12-17 22:30 +0100
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Benjamin Drung <bdrung@debian.org> - 2025-12-17 23:20 +0100
Processed: Re: Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot "Debian Bug Tracking System" <owner@bugs.debian.org> - 2025-11-26 09:00 +0100
Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Marek Szyprowski <m.szyprowski@samsung.com> - 2025-12-18 12:50 +0100
Processed: Re: Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot "Debian Bug Tracking System" <owner@bugs.debian.org> - 2025-12-18 13:40 +0100
| From | Benjamin Drung <bdrung@debian.org> |
|---|---|
| Date | 2025-09-24 20:50 +0200 |
| Subject | Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot |
| Message-ID | <LyCIV-hVz-7@gated-at.bofh.it> |
Package: src:linux Version: 6.12.48-1 Severity: normal X-Debbugs-Cc: bdrung@debian.org Hi, I have three Raspberry Pi Zero W running trixie headless. All stopped working after upgrading to linux-image-6.12.48+deb13-rpi. Since they are headless, I removed the SD card and checked the logs on there. The last logs where from upgrading to linux-image-6.12.48+deb13-rpi and the shutdown (from the reboot). There were no logs from the linux-image-6.12.48+deb13-rpi boot. So it probably failed to boot in the kernel or initrd (before switching to the root fs). I changed the kernel+initrd in /boot/firmware/config.txt from 6.12.48+deb13-rpi to 6.12.43+deb13-rpi and then the system worked again. I checked that content of the initrd looks okay (only the kernel module versions differ). -- Package-specific info: ** Kernel log: boot messages should be attached ** Model information Hardware : BCM2835 Revision : 0000 Device Tree model: Raspberry Pi Zero W Rev 1.1 ** Configuration for modprobe: blacklist arkfb blacklist aty128fb blacklist atyfb blacklist radeonfb blacklist cirrusfb blacklist cyber2000fb blacklist kyrofb blacklist matroxfb_base blacklist mb862xxfb blacklist neofb blacklist pm2fb blacklist pm3fb blacklist s3fb blacklist savagefb blacklist sisfb blacklist tdfxfb blacklist tridentfb blacklist vt8623fb options snd_pcsp index=-2 options cx88_alsa index=-2 options snd_atiixp_modem index=-2 options snd_intel8x0m index=-2 options snd_via82xx_modem index=-2 options bonding max_bonds=0 options dummy numdummies=0 options ifb numifbs=0 options dma dmachans=0x7ff5 options bcm2708 boardrev=0x9000c1 options bcm2708 serial=0x8bb1238 options bcm2708 uart_clock=48000000 options bcm2708 disk_led_gpio=47 options smsc95xx macaddr=B8:27:EB:BB:12:38 options vc_mem mem_base=0x1ec00000 options vc_mem mem_size=0x20000000 options fsck repair=yes options net ifnames=0 ** Network interface configuration: *** /etc/network/interfaces: source-directory /etc/network/interfaces.d auto lo iface lo inet loopback allow-hotplug eth0 iface eth0 inet dhcp allow-hotplug wlan0 iface wlan0 inet dhcp wpa-ssid Skynet wpa-psk ********************** ** PCI devices: not available ** USB devices: Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub -- System Information: Debian Release: 13.1 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable') Architecture: armel (armv6l) Kernel: Linux 6.12.43+deb13-rpi (UP) Kernel taint flags: TAINT_CRAP Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages linux-image-6.12.48+deb13-rpi depends on: ii initramfs-tools [linux-initramfs-tool] 0.148.3 ii kmod 34.2-2 ii linux-base 4.12 Versions of packages linux-image-6.12.48+deb13-rpi recommends: ii apparmor 4.1.0-1 Versions of packages linux-image-6.12.48+deb13-rpi suggests: pn debian-kernel-handbook <none> ii firmware-linux-free 20241210-2 pn linux-doc-6.12 <none> Versions of packages linux-image-6.12.48+deb13-rpi is related to: pn firmware-amd-graphics <none> pn firmware-atheros <none> pn firmware-bnx2 <none> pn firmware-bnx2x <none> ii firmware-brcm80211 20250410-2 pn firmware-cavium <none> pn firmware-cirrus <none> pn firmware-intel-graphics <none> pn firmware-intel-misc <none> pn firmware-intel-sound <none> pn firmware-ipw2x00 <none> pn firmware-ivtv <none> pn firmware-iwlwifi <none> pn firmware-libertas <none> pn firmware-marvell-prestera <none> pn firmware-mediatek <none> pn firmware-misc-nonfree <none> pn firmware-myricom <none> pn firmware-netronome <none> pn firmware-netxen <none> pn firmware-nvidia-graphics <none> pn firmware-qcom-soc <none> pn firmware-qlogic <none> pn firmware-realtek <none> pn firmware-samsung <none> pn firmware-siano <none> pn firmware-ti-connectivity <none> pn xen-hypervisor <none> -- no debconf information -- Benjamin Drung Debian & Ubuntu Developer
[toc] | [next] | [standalone]
| From | Benjamin Drung <bdrung@debian.org> |
|---|---|
| Date | 2025-10-30 20:40 +0100 |
| Message-ID | <LLGF4-9d9O-3@gated-at.bofh.it> |
| In reply to | #89399 |
On Wed, 24 Sep 2025 20:46:32 +0200 Benjamin Drung <bdrung@debian.org> wrote: > Package: src:linux > Version: 6.12.48-1 > Severity: normal > X-Debbugs-Cc: bdrung@debian.org > > Hi, > > I have three Raspberry Pi Zero W running trixie headless. All stopped > working after upgrading to linux-image-6.12.48+deb13-rpi. Since they are > headless, I removed the SD card and checked the logs on there. The last > logs where from upgrading to linux-image-6.12.48+deb13-rpi and the > shutdown (from the reboot). There were no logs from the > linux-image-6.12.48+deb13-rpi boot. So it probably failed to boot in the > kernel or initrd (before switching to the root fs). > > I changed the kernel+initrd in /boot/firmware/config.txt from > 6.12.48+deb13-rpi to 6.12.43+deb13-rpi and then the system worked again. > I checked that content of the initrd looks okay (only the kernel module > versions differ). I found some time to rip one out of the installation, solder a cable to the UART pins and boot with a serial console attached. I configured /boot/firmware/config.txt: ``` enable_uart=1 uart_2ndstage=1 ``` When I boot with 6.12.48+deb13-rpi it hangs here: ``` Raspberry Pi Bootcode Read File: config.txt, 532 Read File: start.elf, 2981056 (bytes) Read File: fixup.dat, 7303 (bytes) MESS:00:00:01.252151:0: brfs: File read: /mfs/sd/config.txt MESS:00:00:01.256416:0: brfs: File read: 532 bytes MESS:00:00:01.292170:0: HDMI0:EDID error reading EDID block 0 attempt 0 MESS:00:00:01.298336:0: HDMI0:EDID error reading EDID block 0 attempt 1 MESS:00:00:01.304672:0: HDMI0:EDID error reading EDID block 0 attempt 2 MESS:00:00:01.311009:0: HDMI0:EDID error reading EDID block 0 attempt 3 MESS:00:00:01.317346:0: HDMI0:EDID error reading EDID block 0 attempt 4 MESS:00:00:01.323683:0: HDMI0:EDID error reading EDID block 0 attempt 5 MESS:00:00:01.330019:0: HDMI0:EDID error reading EDID block 0 attempt 6 MESS:00:00:01.336356:0: HDMI0:EDID error reading EDID block 0 attempt 7 MESS:00:00:01.342693:0: HDMI0:EDID error reading EDID block 0 attempt 8 MESS:00:00:01.349030:0: HDMI0:EDID error reading EDID block 0 attempt 9 MESS:00:00:01.355125:0: HDMI0:EDID giving up on reading EDID block 0 MESS:00:00:01.361505:0: brfs: File read: /mfs/sd/config.txt MESS:00:00:01.365951:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined MESS:00:00:01.558660:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined MESS:00:00:01.564486:0: *** Restart logging MESS:00:00:01.568364:0: brfs: File read: 532 bytes MESS:00:00:01.573602:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 MESS:00:00:01.580979:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 MESS:00:00:01.587837:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 MESS:00:00:01.594695:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 MESS:00:00:01.601552:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 MESS:00:00:01.608410:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 MESS:00:00:01.615267:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 MESS:00:00:01.622126:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 MESS:00:00:01.628983:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 MESS:00:00:01.635841:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 MESS:00:00:01.642457:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 MESS:00:00:01.648361:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 MESS:00:00:01.656152:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 MESS:00:00:01.663011:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 MESS:00:00:01.669869:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 MESS:00:00:01.676725:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 MESS:00:00:01.683584:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 MESS:00:00:01.690442:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 MESS:00:00:01.697299:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 MESS:00:00:01.704157:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 MESS:00:00:01.711015:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 MESS:00:00:01.717630:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 MESS:00:00:01.723244:0: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_display_state instead MESS:00:00:01.731991:0: HDMI0: hdmi_pixel_encoding: 162000000 MESS:00:00:01.737705:0: vec: vec_middleware_power_on: vec_base: 0x7e806000 rev-id 0x00002708 @ vec: 0x7e806100 @ 0x00000420 enc: 0x7e806060 @ 0x00000220 cgmsae: 0x7e80605c @ 0x00000000 MESS:00:00:02.620274:0: brfs: File read: /mfs/sd/initrd.img-6.12.48+deb13-rpi MESS:00:00:02.625721:0: Loaded 'initrd.img-6.12.48+deb13-rpi' to 0x0 size 0xe0bfdc MESS:00:00:02.649671:0: initramfs loaded to 0x1b1e4000 (size 0xe0bfdc) MESS:00:00:02.664189:0: dtb_file 'bcm2835-rpi-zero-w.dtb' MESS:00:00:02.667900:0: brfs: File read: 14729180 bytes MESS:00:00:02.675736:0: brfs: File read: /mfs/sd/bcm2835-rpi-zero-w.dtb MESS:00:00:02.680655:0: Loaded 'bcm2835-rpi-zero-w.dtb' to 0x100 size 0x4c27 MESS:00:00:02.696926:0: brfs: File read: 19495 bytes MESS:00:00:02.747687:0: brfs: File read: /mfs/sd/config.txt MESS:00:00:02.756796:0: brfs: File read: 532 bytes MESS:00:00:02.760416:0: brfs: File read: /mfs/sd/cmdline.txt MESS:00:00:02.765284:0: Read command line from file 'cmdline.txt': MESS:00:00:02.771168:0: 'console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=64M rootwait' MESS:00:00:02.799201:0: gpioman: gpioman_get_pin_num: pin EMMC_ENABLE not defined MESS:00:00:02.856093:0: brfs: File read: 105 bytes MESS:00:00:03.137459:0: brfs: File read: /mfs/sd/vmlinuz-6.12.48+deb13-rpi MESS:00:00:03.142614:0: Loaded 'vmlinuz-6.12.48+deb13-rpi' to 0x8000 size 0x498c60 MESS:00:00:03.149917:0: Device tree loaded to 0x1b1dee00 (size 0x51ad) MESS:00:00:03.156884:0: uart: Set PL011 baud rate to 103448.300000 Hz MESS:00:00:03.163845:0: uart: Baud rate change done... MESS:00:00:03.167256:0: uart: Baud rate ``` In comparison that is the working 6.12.43+deb13-rpi version: ``` Raspberry Pi Bootcode Read File: config.txt, 532 Read File: start.elf, 2981056 (bytes) Read File: fixup.dat, 7303 (bytes) MESS:00:00:01.252343:0: brfs: File read: /mfs/sd/config.txt MESS:00:00:01.256608:0: brfs: File read: 532 bytes MESS:00:00:01.292358:0: HDMI0:EDID error reading EDID block 0 attempt 0 MESS:00:00:01.298524:0: HDMI0:EDID error reading EDID block 0 attempt 1 MESS:00:00:01.304861:0: HDMI0:EDID error reading EDID block 0 attempt 2 MESS:00:00:01.311198:0: HDMI0:EDID error reading EDID block 0 attempt 3 MESS:00:00:01.317534:0: HDMI0:EDID error reading EDID block 0 attempt 4 MESS:00:00:01.323871:0: HDMI0:EDID error reading EDID block 0 attempt 5 MESS:00:00:01.330208:0: HDMI0:EDID error reading EDID block 0 attempt 6 MESS:00:00:01.336545:0: HDMI0:EDID error reading EDID block 0 attempt 7 MESS:00:00:01.342882:0: HDMI0:EDID error reading EDID block 0 attempt 8 MESS:00:00:01.349218:0: HDMI0:EDID error reading EDID block 0 attempt 9 MESS:00:00:01.355313:0: HDMI0:EDID giving up on reading EDID block 0 MESS:00:00:01.361694:0: brfs: File read: /mfs/sd/config.txt MESS:00:00:01.366139:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined MESS:00:00:01.558851:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined MESS:00:00:01.564677:0: *** Restart logging MESS:00:00:01.568554:0: brfs: File read: 532 bytes MESS:00:00:01.573792:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 MESS:00:00:01.581170:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 MESS:00:00:01.588028:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 MESS:00:00:01.594886:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 MESS:00:00:01.601743:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 MESS:00:00:01.608601:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 MESS:00:00:01.615458:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 MESS:00:00:01.622316:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 MESS:00:00:01.629174:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 MESS:00:00:01.636030:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 MESS:00:00:01.642647:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 MESS:00:00:01.648552:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 MESS:00:00:01.656343:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 MESS:00:00:01.663202:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 MESS:00:00:01.670059:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 MESS:00:00:01.676918:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 MESS:00:00:01.683773:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 MESS:00:00:01.690632:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 MESS:00:00:01.697490:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 MESS:00:00:01.704348:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 MESS:00:00:01.711205:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 MESS:00:00:01.717821:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 MESS:00:00:01.723435:0: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_display_state instead MESS:00:00:01.732181:0: HDMI0: hdmi_pixel_encoding: 162000000 MESS:00:00:01.737896:0: vec: vec_middleware_power_on: vec_base: 0x7e806000 rev-id 0x00002708 @ vec: 0x7e806100 @ 0x00000420 enc: 0x7e806060 @ 0x00000220 cgmsae: 0x7e80605c @ 0x00000000 MESS:00:00:02.620176:0: brfs: File read: /mfs/sd/initrd.img-6.12.43+deb13-rpi MESS:00:00:02.625624:0: Loaded 'initrd.img-6.12.43+deb13-rpi' to 0x0 size 0xe0b1a8 MESS:00:00:02.649568:0: initramfs loaded to 0x1b1e4000 (size 0xe0b1a8) MESS:00:00:02.664071:0: dtb_file 'bcm2835-rpi-zero-w.dtb' MESS:00:00:02.667782:0: brfs: File read: 14725544 bytes MESS:00:00:02.675391:0: brfs: File read: /mfs/sd/bcm2835-rpi-zero-w.dtb MESS:00:00:02.680310:0: Loaded 'bcm2835-rpi-zero-w.dtb' to 0x100 size 0x4c27 MESS:00:00:02.696581:0: brfs: File read: 19495 bytes MESS:00:00:02.747742:0: brfs: File read: /mfs/sd/config.txt MESS:00:00:02.756902:0: brfs: File read: 532 bytes MESS:00:00:02.760705:0: brfs: File read: /mfs/sd/cmdline.txt MESS:00:00:02.765390:0: Read command line from file 'cmdline.txt': MESS:00:00:02.771274:0: 'console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=64M rootwait' MESS:00:00:02.799307:0: gpioman: gpioman_get_pin_num: pin EMMC_ENABLE not defined MESS:00:00:02.856080:0: brfs: File read: 105 bytes MESS:00:00:03.137936:0: brfs: File read: /mfs/sd/vmlinuz-6.12.43+deb13-rpi MESS:00:00:03.143092:0: Loaded 'vmlinuz-6.12.43+deb13-rpi' to 0x8000 size 0x498070 MESS:00:00:03.150393:0: Device tree loaded to 0x1b1dee00 (size 0x51ad) MESS:00:00:03.157362:0: uart: Set PL011 baud rate to 103448.300000 Hz MESS:00:00:03.164322:0: uart: Baud rate change done... MESS:00:00:03.167733:0: uart: Baud rate [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 6.12.43+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.43-1 (2025-08-27) [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1 [...] ``` I am out of idea how to further debug that. -- Benjamin Drung Debian & Ubuntu Developer
[toc] | [prev] | [next] | [standalone]
| From | Uwe Kleine-König <u.kleine-koenig@baylibre.com> |
|---|---|
| Date | 2025-11-05 20:20 +0100 |
| Message-ID | <LNRcZ-aJXD-1@gated-at.bofh.it> |
| In reply to | #89836 |
[Multipart message — attachments visible in raw view] — view raw
On Thu, Oct 30, 2025 at 08:35:37PM +0100, Benjamin Drung wrote: > On Wed, 24 Sep 2025 20:46:32 +0200 Benjamin Drung <bdrung@debian.org> > wrote: > > Package: src:linux > > Version: 6.12.48-1 > > Severity: normal > > X-Debbugs-Cc: bdrung@debian.org > > > > Hi, > > > > I have three Raspberry Pi Zero W running trixie headless. All stopped > > working after upgrading to linux-image-6.12.48+deb13-rpi. Since they > are > > headless, I removed the SD card and checked the logs on there. The > last > > logs where from upgrading to linux-image-6.12.48+deb13-rpi and the > > shutdown (from the reboot). There were no logs from the > > linux-image-6.12.48+deb13-rpi boot. So it probably failed to boot in > the > > kernel or initrd (before switching to the root fs). > > > > I changed the kernel+initrd in /boot/firmware/config.txt from > > 6.12.48+deb13-rpi to 6.12.43+deb13-rpi and then the system worked > again. > > I checked that content of the initrd looks okay (only the kernel > module > > versions differ). > > I found some time to rip one out of the installation, solder a cable to > the UART pins and boot with a serial console attached. > > I configured /boot/firmware/config.txt: > > ``` > enable_uart=1 > uart_2ndstage=1 > ``` > > When I boot with 6.12.48+deb13-rpi it hangs here: > > ``` > Raspberry Pi Bootcode > Read File: config.txt, 532 > Read File: start.elf, 2981056 (bytes) > Read File: fixup.dat, 7303 (bytes) > MESS:00:00:01.252151:0: brfs: File read: /mfs/sd/config.txt > MESS:00:00:01.256416:0: brfs: File read: 532 bytes > MESS:00:00:01.292170:0: HDMI0:EDID error reading EDID block 0 attempt 0 > MESS:00:00:01.298336:0: HDMI0:EDID error reading EDID block 0 attempt 1 > MESS:00:00:01.304672:0: HDMI0:EDID error reading EDID block 0 attempt 2 > MESS:00:00:01.311009:0: HDMI0:EDID error reading EDID block 0 attempt 3 > MESS:00:00:01.317346:0: HDMI0:EDID error reading EDID block 0 attempt 4 > MESS:00:00:01.323683:0: HDMI0:EDID error reading EDID block 0 attempt 5 > MESS:00:00:01.330019:0: HDMI0:EDID error reading EDID block 0 attempt 6 > MESS:00:00:01.336356:0: HDMI0:EDID error reading EDID block 0 attempt 7 > MESS:00:00:01.342693:0: HDMI0:EDID error reading EDID block 0 attempt 8 > MESS:00:00:01.349030:0: HDMI0:EDID error reading EDID block 0 attempt 9 > MESS:00:00:01.355125:0: HDMI0:EDID giving up on reading EDID block 0 > MESS:00:00:01.361505:0: brfs: File read: /mfs/sd/config.txt > MESS:00:00:01.365951:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined > MESS:00:00:01.558660:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined > MESS:00:00:01.564486:0: *** Restart logging > MESS:00:00:01.568364:0: brfs: File read: 532 bytes > MESS:00:00:01.573602:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 > MESS:00:00:01.580979:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 > MESS:00:00:01.587837:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 > MESS:00:00:01.594695:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 > MESS:00:00:01.601552:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 > MESS:00:00:01.608410:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 > MESS:00:00:01.615267:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 > MESS:00:00:01.622126:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 > MESS:00:00:01.628983:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 > MESS:00:00:01.635841:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 > MESS:00:00:01.642457:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 > MESS:00:00:01.648361:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 > MESS:00:00:01.656152:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 > MESS:00:00:01.663011:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 > MESS:00:00:01.669869:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 > MESS:00:00:01.676725:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 > MESS:00:00:01.683584:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 > MESS:00:00:01.690442:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 > MESS:00:00:01.697299:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 > MESS:00:00:01.704157:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 > MESS:00:00:01.711015:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 > MESS:00:00:01.717630:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 > MESS:00:00:01.723244:0: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_display_state instead > MESS:00:00:01.731991:0: HDMI0: hdmi_pixel_encoding: 162000000 > MESS:00:00:01.737705:0: vec: vec_middleware_power_on: vec_base: 0x7e806000 rev-id 0x00002708 @ vec: 0x7e806100 @ 0x00000420 enc: 0x7e806060 @ 0x00000220 cgmsae: 0x7e80605c @ 0x00000000 > MESS:00:00:02.620274:0: brfs: File read: /mfs/sd/initrd.img-6.12.48+deb13-rpi > MESS:00:00:02.625721:0: Loaded 'initrd.img-6.12.48+deb13-rpi' to 0x0 size 0xe0bfdc > MESS:00:00:02.649671:0: initramfs loaded to 0x1b1e4000 (size 0xe0bfdc) > MESS:00:00:02.664189:0: dtb_file 'bcm2835-rpi-zero-w.dtb' > MESS:00:00:02.667900:0: brfs: File read: 14729180 bytes > MESS:00:00:02.675736:0: brfs: File read: /mfs/sd/bcm2835-rpi-zero-w.dtb > MESS:00:00:02.680655:0: Loaded 'bcm2835-rpi-zero-w.dtb' to 0x100 size 0x4c27 > MESS:00:00:02.696926:0: brfs: File read: 19495 bytes > MESS:00:00:02.747687:0: brfs: File read: /mfs/sd/config.txt > MESS:00:00:02.756796:0: brfs: File read: 532 bytes > MESS:00:00:02.760416:0: brfs: File read: /mfs/sd/cmdline.txt > MESS:00:00:02.765284:0: Read command line from file 'cmdline.txt': > MESS:00:00:02.771168:0: 'console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=64M rootwait' > MESS:00:00:02.799201:0: gpioman: gpioman_get_pin_num: pin EMMC_ENABLE not defined > MESS:00:00:02.856093:0: brfs: File read: 105 bytes > MESS:00:00:03.137459:0: brfs: File read: /mfs/sd/vmlinuz-6.12.48+deb13-rpi > MESS:00:00:03.142614:0: Loaded 'vmlinuz-6.12.48+deb13-rpi' to 0x8000 size 0x498c60 > MESS:00:00:03.149917:0: Device tree loaded to 0x1b1dee00 (size 0x51ad) > MESS:00:00:03.156884:0: uart: Set PL011 baud rate to 103448.300000 Hz > MESS:00:00:03.163845:0: uart: Baud rate change done... > MESS:00:00:03.167256:0: uart: Baud rate > ``` > > In comparison that is the working 6.12.43+deb13-rpi version: > > ``` > Raspberry Pi Bootcode > Read File: config.txt, 532 > Read File: start.elf, 2981056 (bytes) > Read File: fixup.dat, 7303 (bytes) > MESS:00:00:01.252343:0: brfs: File read: /mfs/sd/config.txt > MESS:00:00:01.256608:0: brfs: File read: 532 bytes > MESS:00:00:01.292358:0: HDMI0:EDID error reading EDID block 0 attempt 0 > MESS:00:00:01.298524:0: HDMI0:EDID error reading EDID block 0 attempt 1 > MESS:00:00:01.304861:0: HDMI0:EDID error reading EDID block 0 attempt 2 > MESS:00:00:01.311198:0: HDMI0:EDID error reading EDID block 0 attempt 3 > MESS:00:00:01.317534:0: HDMI0:EDID error reading EDID block 0 attempt 4 > MESS:00:00:01.323871:0: HDMI0:EDID error reading EDID block 0 attempt 5 > MESS:00:00:01.330208:0: HDMI0:EDID error reading EDID block 0 attempt 6 > MESS:00:00:01.336545:0: HDMI0:EDID error reading EDID block 0 attempt 7 > MESS:00:00:01.342882:0: HDMI0:EDID error reading EDID block 0 attempt 8 > MESS:00:00:01.349218:0: HDMI0:EDID error reading EDID block 0 attempt 9 > MESS:00:00:01.355313:0: HDMI0:EDID giving up on reading EDID block 0 > MESS:00:00:01.361694:0: brfs: File read: /mfs/sd/config.txt > MESS:00:00:01.366139:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined > MESS:00:00:01.558851:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined > MESS:00:00:01.564677:0: *** Restart logging > MESS:00:00:01.568554:0: brfs: File read: 532 bytes > MESS:00:00:01.573792:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 > MESS:00:00:01.581170:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 > MESS:00:00:01.588028:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 > MESS:00:00:01.594886:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 > MESS:00:00:01.601743:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 > MESS:00:00:01.608601:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 > MESS:00:00:01.615458:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 > MESS:00:00:01.622316:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 > MESS:00:00:01.629174:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 > MESS:00:00:01.636030:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 > MESS:00:00:01.642647:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 > MESS:00:00:01.648552:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 > MESS:00:00:01.656343:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 > MESS:00:00:01.663202:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 > MESS:00:00:01.670059:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 > MESS:00:00:01.676918:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 > MESS:00:00:01.683773:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 > MESS:00:00:01.690632:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 > MESS:00:00:01.697490:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 > MESS:00:00:01.704348:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 > MESS:00:00:01.711205:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 > MESS:00:00:01.717821:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 > MESS:00:00:01.723435:0: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_display_state instead > MESS:00:00:01.732181:0: HDMI0: hdmi_pixel_encoding: 162000000 > MESS:00:00:01.737896:0: vec: vec_middleware_power_on: vec_base: 0x7e806000 rev-id 0x00002708 @ vec: 0x7e806100 @ 0x00000420 enc: 0x7e806060 @ 0x00000220 cgmsae: 0x7e80605c @ 0x00000000 > MESS:00:00:02.620176:0: brfs: File read: /mfs/sd/initrd.img-6.12.43+deb13-rpi > MESS:00:00:02.625624:0: Loaded 'initrd.img-6.12.43+deb13-rpi' to 0x0 size 0xe0b1a8 > MESS:00:00:02.649568:0: initramfs loaded to 0x1b1e4000 (size 0xe0b1a8) > MESS:00:00:02.664071:0: dtb_file 'bcm2835-rpi-zero-w.dtb' > MESS:00:00:02.667782:0: brfs: File read: 14725544 bytes > MESS:00:00:02.675391:0: brfs: File read: /mfs/sd/bcm2835-rpi-zero-w.dtb > MESS:00:00:02.680310:0: Loaded 'bcm2835-rpi-zero-w.dtb' to 0x100 size 0x4c27 > MESS:00:00:02.696581:0: brfs: File read: 19495 bytes > MESS:00:00:02.747742:0: brfs: File read: /mfs/sd/config.txt > MESS:00:00:02.756902:0: brfs: File read: 532 bytes > MESS:00:00:02.760705:0: brfs: File read: /mfs/sd/cmdline.txt > MESS:00:00:02.765390:0: Read command line from file 'cmdline.txt': > MESS:00:00:02.771274:0: 'console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=64M rootwait' > MESS:00:00:02.799307:0: gpioman: gpioman_get_pin_num: pin EMMC_ENABLE not defined > MESS:00:00:02.856080:0: brfs: File read: 105 bytes > MESS:00:00:03.137936:0: brfs: File read: /mfs/sd/vmlinuz-6.12.43+deb13-rpi > MESS:00:00:03.143092:0: Loaded 'vmlinuz-6.12.43+deb13-rpi' to 0x8000 size 0x498070 > MESS:00:00:03.150393:0: Device tree loaded to 0x1b1dee00 (size 0x51ad) > MESS:00:00:03.157362:0: uart: Set PL011 baud rate to 103448.300000 Hz > MESS:00:00:03.164322:0: uart: Baud rate change done... > MESS:00:00:03.167733:0: uart: Baud rate > [ 0.000000] Booting Linux on physical CPU 0x0 > [ 0.000000] Linux version 6.12.43+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.43-1 (2025-08-27) > [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d > [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache > [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1 > [...] > ``` > > I am out of idea how to further debug that. Can you try adding earlyprintk=serial,0x7e215040 to the kernel commandline. Not sure this activates the right procedures, maybe try it with the working kernel first. Best regards Uwe
[toc] | [prev] | [next] | [standalone]
| From | Benjamin Drung <bdrung@debian.org> |
|---|---|
| Date | 2025-11-17 02:10 +0100 |
| Message-ID | <LRVUJ-dwj9-1@gated-at.bofh.it> |
| In reply to | #89927 |
On Wed, 2025-11-05 at 20:14 +0100, Uwe Kleine-König wrote: > On Thu, Oct 30, 2025 at 08:35:37PM +0100, Benjamin Drung wrote: > > On Wed, 24 Sep 2025 20:46:32 +0200 Benjamin Drung <bdrung@debian.org> > > wrote: > > > Package: src:linux > > > Version: 6.12.48-1 > > > Severity: normal > > > X-Debbugs-Cc: bdrung@debian.org > > > > > > Hi, > > > > > > I have three Raspberry Pi Zero W running trixie headless. All stopped > > > working after upgrading to linux-image-6.12.48+deb13-rpi. Since they > > are > > > headless, I removed the SD card and checked the logs on there. The > > last > > > logs where from upgrading to linux-image-6.12.48+deb13-rpi and the > > > shutdown (from the reboot). There were no logs from the > > > linux-image-6.12.48+deb13-rpi boot. So it probably failed to boot in > > the > > > kernel or initrd (before switching to the root fs). > > > > > > I changed the kernel+initrd in /boot/firmware/config.txt from > > > 6.12.48+deb13-rpi to 6.12.43+deb13-rpi and then the system worked > > again. > > > I checked that content of the initrd looks okay (only the kernel > > module > > > versions differ). > > > > I found some time to rip one out of the installation, solder a cable to > > the UART pins and boot with a serial console attached. > > > > I configured /boot/firmware/config.txt: > > > > ``` > > enable_uart=1 > > uart_2ndstage=1 > > ``` > > > > When I boot with 6.12.48+deb13-rpi it hangs here: > > > > ``` > > Raspberry Pi Bootcode > > Read File: config.txt, 532 > > Read File: start.elf, 2981056 (bytes) > > Read File: fixup.dat, 7303 (bytes) > > MESS:00:00:01.252151:0: brfs: File read: /mfs/sd/config.txt > > MESS:00:00:01.256416:0: brfs: File read: 532 bytes > > MESS:00:00:01.292170:0: HDMI0:EDID error reading EDID block 0 attempt 0 > > MESS:00:00:01.298336:0: HDMI0:EDID error reading EDID block 0 attempt 1 > > MESS:00:00:01.304672:0: HDMI0:EDID error reading EDID block 0 attempt 2 > > MESS:00:00:01.311009:0: HDMI0:EDID error reading EDID block 0 attempt 3 > > MESS:00:00:01.317346:0: HDMI0:EDID error reading EDID block 0 attempt 4 > > MESS:00:00:01.323683:0: HDMI0:EDID error reading EDID block 0 attempt 5 > > MESS:00:00:01.330019:0: HDMI0:EDID error reading EDID block 0 attempt 6 > > MESS:00:00:01.336356:0: HDMI0:EDID error reading EDID block 0 attempt 7 > > MESS:00:00:01.342693:0: HDMI0:EDID error reading EDID block 0 attempt 8 > > MESS:00:00:01.349030:0: HDMI0:EDID error reading EDID block 0 attempt 9 > > MESS:00:00:01.355125:0: HDMI0:EDID giving up on reading EDID block 0 > > MESS:00:00:01.361505:0: brfs: File read: /mfs/sd/config.txt > > MESS:00:00:01.365951:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined > > MESS:00:00:01.558660:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined > > MESS:00:00:01.564486:0: *** Restart logging > > MESS:00:00:01.568364:0: brfs: File read: 532 bytes > > MESS:00:00:01.573602:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 > > MESS:00:00:01.580979:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 > > MESS:00:00:01.587837:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 > > MESS:00:00:01.594695:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 > > MESS:00:00:01.601552:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 > > MESS:00:00:01.608410:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 > > MESS:00:00:01.615267:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 > > MESS:00:00:01.622126:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 > > MESS:00:00:01.628983:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 > > MESS:00:00:01.635841:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 > > MESS:00:00:01.642457:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 > > MESS:00:00:01.648361:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 > > MESS:00:00:01.656152:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 > > MESS:00:00:01.663011:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 > > MESS:00:00:01.669869:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 > > MESS:00:00:01.676725:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 > > MESS:00:00:01.683584:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 > > MESS:00:00:01.690442:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 > > MESS:00:00:01.697299:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 > > MESS:00:00:01.704157:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 > > MESS:00:00:01.711015:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 > > MESS:00:00:01.717630:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 > > MESS:00:00:01.723244:0: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_display_state instead > > MESS:00:00:01.731991:0: HDMI0: hdmi_pixel_encoding: 162000000 > > MESS:00:00:01.737705:0: vec: vec_middleware_power_on: vec_base: 0x7e806000 rev-id 0x00002708 @ vec: 0x7e806100 @ 0x00000420 enc: 0x7e806060 @ 0x00000220 cgmsae: 0x7e80605c @ 0x00000000 > > MESS:00:00:02.620274:0: brfs: File read: /mfs/sd/initrd.img-6.12.48+deb13-rpi > > MESS:00:00:02.625721:0: Loaded 'initrd.img-6.12.48+deb13-rpi' to 0x0 size 0xe0bfdc > > MESS:00:00:02.649671:0: initramfs loaded to 0x1b1e4000 (size 0xe0bfdc) > > MESS:00:00:02.664189:0: dtb_file 'bcm2835-rpi-zero-w.dtb' > > MESS:00:00:02.667900:0: brfs: File read: 14729180 bytes > > MESS:00:00:02.675736:0: brfs: File read: /mfs/sd/bcm2835-rpi-zero-w.dtb > > MESS:00:00:02.680655:0: Loaded 'bcm2835-rpi-zero-w.dtb' to 0x100 size 0x4c27 > > MESS:00:00:02.696926:0: brfs: File read: 19495 bytes > > MESS:00:00:02.747687:0: brfs: File read: /mfs/sd/config.txt > > MESS:00:00:02.756796:0: brfs: File read: 532 bytes > > MESS:00:00:02.760416:0: brfs: File read: /mfs/sd/cmdline.txt > > MESS:00:00:02.765284:0: Read command line from file 'cmdline.txt': > > MESS:00:00:02.771168:0: 'console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=64M rootwait' > > MESS:00:00:02.799201:0: gpioman: gpioman_get_pin_num: pin EMMC_ENABLE not defined > > MESS:00:00:02.856093:0: brfs: File read: 105 bytes > > MESS:00:00:03.137459:0: brfs: File read: /mfs/sd/vmlinuz-6.12.48+deb13-rpi > > MESS:00:00:03.142614:0: Loaded 'vmlinuz-6.12.48+deb13-rpi' to 0x8000 size 0x498c60 > > MESS:00:00:03.149917:0: Device tree loaded to 0x1b1dee00 (size 0x51ad) > > MESS:00:00:03.156884:0: uart: Set PL011 baud rate to 103448.300000 Hz > > MESS:00:00:03.163845:0: uart: Baud rate change done... > > MESS:00:00:03.167256:0: uart: Baud rate > > ``` > > > > In comparison that is the working 6.12.43+deb13-rpi version: > > > > ``` > > Raspberry Pi Bootcode > > Read File: config.txt, 532 > > Read File: start.elf, 2981056 (bytes) > > Read File: fixup.dat, 7303 (bytes) > > MESS:00:00:01.252343:0: brfs: File read: /mfs/sd/config.txt > > MESS:00:00:01.256608:0: brfs: File read: 532 bytes > > MESS:00:00:01.292358:0: HDMI0:EDID error reading EDID block 0 attempt 0 > > MESS:00:00:01.298524:0: HDMI0:EDID error reading EDID block 0 attempt 1 > > MESS:00:00:01.304861:0: HDMI0:EDID error reading EDID block 0 attempt 2 > > MESS:00:00:01.311198:0: HDMI0:EDID error reading EDID block 0 attempt 3 > > MESS:00:00:01.317534:0: HDMI0:EDID error reading EDID block 0 attempt 4 > > MESS:00:00:01.323871:0: HDMI0:EDID error reading EDID block 0 attempt 5 > > MESS:00:00:01.330208:0: HDMI0:EDID error reading EDID block 0 attempt 6 > > MESS:00:00:01.336545:0: HDMI0:EDID error reading EDID block 0 attempt 7 > > MESS:00:00:01.342882:0: HDMI0:EDID error reading EDID block 0 attempt 8 > > MESS:00:00:01.349218:0: HDMI0:EDID error reading EDID block 0 attempt 9 > > MESS:00:00:01.355313:0: HDMI0:EDID giving up on reading EDID block 0 > > MESS:00:00:01.361694:0: brfs: File read: /mfs/sd/config.txt > > MESS:00:00:01.366139:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined > > MESS:00:00:01.558851:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined > > MESS:00:00:01.564677:0: *** Restart logging > > MESS:00:00:01.568554:0: brfs: File read: 532 bytes > > MESS:00:00:01.573792:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 > > MESS:00:00:01.581170:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 > > MESS:00:00:01.588028:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 > > MESS:00:00:01.594886:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 > > MESS:00:00:01.601743:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 > > MESS:00:00:01.608601:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 > > MESS:00:00:01.615458:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 > > MESS:00:00:01.622316:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 > > MESS:00:00:01.629174:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 > > MESS:00:00:01.636030:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 > > MESS:00:00:01.642647:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 > > MESS:00:00:01.648552:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 0 > > MESS:00:00:01.656343:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 1 > > MESS:00:00:01.663202:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 2 > > MESS:00:00:01.670059:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 3 > > MESS:00:00:01.676918:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 4 > > MESS:00:00:01.683773:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 5 > > MESS:00:00:01.690632:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 6 > > MESS:00:00:01.697490:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 7 > > MESS:00:00:01.704348:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 8 > > MESS:00:00:01.711205:0: hdmi: HDMI0:EDID error reading EDID block 0 attempt 9 > > MESS:00:00:01.717821:0: hdmi: HDMI0:EDID giving up on reading EDID block 0 > > MESS:00:00:01.723435:0: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_display_state instead > > MESS:00:00:01.732181:0: HDMI0: hdmi_pixel_encoding: 162000000 > > MESS:00:00:01.737896:0: vec: vec_middleware_power_on: vec_base: 0x7e806000 rev-id 0x00002708 @ vec: 0x7e806100 @ 0x00000420 enc: 0x7e806060 @ 0x00000220 cgmsae: 0x7e80605c @ 0x00000000 > > MESS:00:00:02.620176:0: brfs: File read: /mfs/sd/initrd.img-6.12.43+deb13-rpi > > MESS:00:00:02.625624:0: Loaded 'initrd.img-6.12.43+deb13-rpi' to 0x0 size 0xe0b1a8 > > MESS:00:00:02.649568:0: initramfs loaded to 0x1b1e4000 (size 0xe0b1a8) > > MESS:00:00:02.664071:0: dtb_file 'bcm2835-rpi-zero-w.dtb' > > MESS:00:00:02.667782:0: brfs: File read: 14725544 bytes > > MESS:00:00:02.675391:0: brfs: File read: /mfs/sd/bcm2835-rpi-zero-w.dtb > > MESS:00:00:02.680310:0: Loaded 'bcm2835-rpi-zero-w.dtb' to 0x100 size 0x4c27 > > MESS:00:00:02.696581:0: brfs: File read: 19495 bytes > > MESS:00:00:02.747742:0: brfs: File read: /mfs/sd/config.txt > > MESS:00:00:02.756902:0: brfs: File read: 532 bytes > > MESS:00:00:02.760705:0: brfs: File read: /mfs/sd/cmdline.txt > > MESS:00:00:02.765390:0: Read command line from file 'cmdline.txt': > > MESS:00:00:02.771274:0: 'console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=64M rootwait' > > MESS:00:00:02.799307:0: gpioman: gpioman_get_pin_num: pin EMMC_ENABLE not defined > > MESS:00:00:02.856080:0: brfs: File read: 105 bytes > > MESS:00:00:03.137936:0: brfs: File read: /mfs/sd/vmlinuz-6.12.43+deb13-rpi > > MESS:00:00:03.143092:0: Loaded 'vmlinuz-6.12.43+deb13-rpi' to 0x8000 size 0x498070 > > MESS:00:00:03.150393:0: Device tree loaded to 0x1b1dee00 (size 0x51ad) > > MESS:00:00:03.157362:0: uart: Set PL011 baud rate to 103448.300000 Hz > > MESS:00:00:03.164322:0: uart: Baud rate change done... > > MESS:00:00:03.167733:0: uart: Baud rate > > [ 0.000000] Booting Linux on physical CPU 0x0 > > [ 0.000000] Linux version 6.12.43+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.43-1 (2025-08-27) > > [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d > > [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache > > [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1 > > [...] > > ``` > > > > I am out of idea how to further debug that. > > Can you try adding > > earlyprintk=serial,0x7e215040 > > to the kernel commandline. Not sure this activates the right procedures, > maybe try it with the working kernel first. I tried with the working kernel 6.12.43+deb13-rpi but these were the earliest lines: [ 4.116565] printk: legacy console [ttyS1] enabled [ 4.129635] printk: legacy bootconsole [earlycon0] disabled [ 4.147050] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver [ 4.160972] mousedev: PS/2 mouse device common for all mice [ 4.172622] i2c-bcm2835 20805000.i2c: Could not read clock-frequency property [ 4.186585] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer I tried with 6.12.57+deb13-rpi but that failed to boot and the earlyprintk line did not give any additional logs. -- Benjamin Drung Debian & Ubuntu Developer
[toc] | [prev] | [next] | [standalone]
| From | Benjamin Drung <bdrung@debian.org> |
|---|---|
| Date | 2025-11-22 16:30 +0100 |
| Message-ID | <LTXIJ-eVw4-1@gated-at.bofh.it> |
| In reply to | #89399 |
Hi Uwe, On Fri, 2025-11-21 at 09:52 +0100, Uwe Kleine-König wrote: > Hello Benjamin, > > On Thu, Nov 20, 2025 at 11:11:07AM +0100, Benjamin Drung wrote: > > On Thu, 2025-11-20 at 08:58 +0100, Uwe Kleine-König wrote: > > > On Mon, Nov 17, 2025 at 02:05:41AM +0100, Benjamin Drung wrote: > > > > On Wed, 2025-11-05 at 20:14 +0100, Uwe Kleine-König wrote: > > > > > Can you try adding > > > > > > > > > > earlyprintk=serial,0x7e215040 > > > > > > > > > > to the kernel commandline. Not sure this activates the right procedures, > > > > > maybe try it with the working kernel first. > > > > > > > > I tried with the working kernel 6.12.43+deb13-rpi but these were the > > > > earliest lines: > > > > > > > > [ 4.116565] printk: legacy console [ttyS1] enabled > > > > [ 4.129635] printk: legacy bootconsole [earlycon0] disabled > > > > [ 4.147050] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver > > > > [ 4.160972] mousedev: PS/2 mouse device common for all mice > > > > [ 4.172622] i2c-bcm2835 20805000.i2c: Could not read clock-frequency property > > > > [ 4.186585] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer > > > > > > > > I tried with 6.12.57+deb13-rpi but that failed to boot and the > > > > earlyprintk line did not give any additional logs. > > > > > > Can you please provide a full kernel log of the working kernel? > > > > dmesg log is attached. > > > > > Also please provide the output of: > > > > > > for f in /proc/tty/driver/*; do echo $f; sed 's/^/ /' < $f; done > > > > /proc/tty/driver/serial > > serinfo:1.0 driver revision: > > 0: uart:unknown port:00000000 irq:0 > > 1: uart:16550 mmio:0x20215040 irq:53 tx:15629 rx:0 RTS|CTS|DTR > > 2: uart:unknown port:00000000 irq:0 > > 3: uart:unknown port:00000000 irq:0 > > /proc/tty/driver/ttyAMA > > serinfo:1.0 driver revision: > > 0: uart:PL011 rev2 mmio:0x20201000 irq:81 tx:452 rx:980 RTS|CTS|DTR > > OK, is > > earlyprintk=serial,0x20215040 > > more communicative then? Nope, but I found https://www.raspberrypi.com/documentation/computers/configuration.html#enabling-early-console-for-linux and setting earlycon=uart8250,mmio32,0x20215040 worked. The kernel 6.12.43+deb13-rpi booted with printing the early lines as well (see dmesg of previous mail). With all other experiments cleaned, I tried the latest kernel: ``` $ cat /etc/default/raspi-extra-cmdline earlycon=uart8250,mmio32,0x20215040 $ update-initramfs -u ``` I got following logs before it got stuck: ``` [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 6.12.57+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.57-1 (2025-11-05) [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1 [ 0.000000] random: crng init done [ 0.000000] earlycon: uart8250 at MMIO32 0x20215040 (options '') [ 0.000000] printk: legacy bootconsole [uart8250] enabled [ 0.000000] Memory policy: Data cache writeback [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail [ 0.000000] cma: Reserved 64 MiB at 0x17000000 on node -1 ``` It looks like being cma related and I found a cma boot option in /etc/default/raspi-firmware. So I modified /boot/firmware/cmdline.txt and changed cma=64M to cma=0. Then the system booted without problems: ``` [...] [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff] [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=0 rootwait earlycon=uart8250,mmio32,0x20215040 [...] ``` Then I persisted this change by setting CMA=0 in /etc/default/raspi-firmware: ``` $ grep -Ev '^(#|$)' /etc/default/raspi-firmware CMA=0 $ update-initramfs -u ``` This config removes the cma cmdline option completely. The system still boots: ``` [...] [ 0.000000] Memory policy: Data cache writeback [ 0.000000] Reserved memory: created CMA memory pool at 0x17000000, size 64 MiB [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool [ 0.000000] OF: reserved mem: 0x17000000..0x1affffff (65536 KiB) map reusable linux,cma [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff] [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 rootwait earlycon=uart8250,mmio32,0x20215040 [...] ``` That should hopefully narrow down the issue space. -- Benjamin Drung Debian & Ubuntu Developer
[toc] | [prev] | [next] | [standalone]
| From | Salvatore Bonaccorso <carnil@debian.org> |
|---|---|
| Date | 2025-11-26 09:00 +0100 |
| Message-ID | <LViBr-fPG0-1@gated-at.bofh.it> |
| In reply to | #90191 |
Control: tags -1 + moreinfo
Hi,
On Sat, Nov 22, 2025 at 04:27:53PM +0100, Benjamin Drung wrote:
> Hi Uwe,
>
> On Fri, 2025-11-21 at 09:52 +0100, Uwe Kleine-König wrote:
> > Hello Benjamin,
> >
> > On Thu, Nov 20, 2025 at 11:11:07AM +0100, Benjamin Drung wrote:
> > > On Thu, 2025-11-20 at 08:58 +0100, Uwe Kleine-König wrote:
> > > > On Mon, Nov 17, 2025 at 02:05:41AM +0100, Benjamin Drung wrote:
> > > > > On Wed, 2025-11-05 at 20:14 +0100, Uwe Kleine-König wrote:
> > > > > > Can you try adding
> > > > > >
> > > > > > earlyprintk=serial,0x7e215040
> > > > > >
> > > > > > to the kernel commandline. Not sure this activates the right procedures,
> > > > > > maybe try it with the working kernel first.
> > > > >
> > > > > I tried with the working kernel 6.12.43+deb13-rpi but these were the
> > > > > earliest lines:
> > > > >
> > > > > [ 4.116565] printk: legacy console [ttyS1] enabled
> > > > > [ 4.129635] printk: legacy bootconsole [earlycon0] disabled
> > > > > [ 4.147050] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
> > > > > [ 4.160972] mousedev: PS/2 mouse device common for all mice
> > > > > [ 4.172622] i2c-bcm2835 20805000.i2c: Could not read clock-frequency property
> > > > > [ 4.186585] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
> > > > >
> > > > > I tried with 6.12.57+deb13-rpi but that failed to boot and the
> > > > > earlyprintk line did not give any additional logs.
> > > >
> > > > Can you please provide a full kernel log of the working kernel?
> > >
> > > dmesg log is attached.
> > >
> > > > Also please provide the output of:
> > > >
> > > > for f in /proc/tty/driver/*; do echo $f; sed 's/^/ /' < $f; done
> > >
> > > /proc/tty/driver/serial
> > > serinfo:1.0 driver revision:
> > > 0: uart:unknown port:00000000 irq:0
> > > 1: uart:16550 mmio:0x20215040 irq:53 tx:15629 rx:0 RTS|CTS|DTR
> > > 2: uart:unknown port:00000000 irq:0
> > > 3: uart:unknown port:00000000 irq:0
> > > /proc/tty/driver/ttyAMA
> > > serinfo:1.0 driver revision:
> > > 0: uart:PL011 rev2 mmio:0x20201000 irq:81 tx:452 rx:980 RTS|CTS|DTR
> >
> > OK, is
> >
> > earlyprintk=serial,0x20215040
> >
> > more communicative then?
>
> Nope, but I found
> https://www.raspberrypi.com/documentation/computers/configuration.html#enabling-early-console-for-linux
> and setting earlycon=uart8250,mmio32,0x20215040 worked. The kernel
> 6.12.43+deb13-rpi booted with printing the early lines as well (see
> dmesg of previous mail).
>
> With all other experiments cleaned, I tried the latest kernel:
>
> ```
> $ cat /etc/default/raspi-extra-cmdline
> earlycon=uart8250,mmio32,0x20215040
> $ update-initramfs -u
> ```
>
> I got following logs before it got stuck:
>
> ```
> [ 0.000000] Booting Linux on physical CPU 0x0
> [ 0.000000] Linux version 6.12.57+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.57-1 (2025-11-05)
> [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
> [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
> [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1
> [ 0.000000] random: crng init done
> [ 0.000000] earlycon: uart8250 at MMIO32 0x20215040 (options '')
> [ 0.000000] printk: legacy bootconsole [uart8250] enabled
> [ 0.000000] Memory policy: Data cache writeback
> [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> [ 0.000000] cma: Reserved 64 MiB at 0x17000000 on node -1
> ```
>
> It looks like being cma related and I found a cma boot option in
> /etc/default/raspi-firmware. So I modified /boot/firmware/cmdline.txt
> and changed cma=64M to cma=0. Then the system booted without problems:
>
> ```
> [...]
> [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> [ 0.000000] Zone ranges:
> [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> [ 0.000000] Movable zone start for each node
> [ 0.000000] Early memory node ranges
> [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=0 rootwait earlycon=uart8250,mmio32,0x20215040
> [...]
> ```
>
> Then I persisted this change by setting CMA=0 in
> /etc/default/raspi-firmware:
>
> ```
> $ grep -Ev '^(#|$)' /etc/default/raspi-firmware
> CMA=0
> $ update-initramfs -u
> ```
>
> This config removes the cma cmdline option completely. The system still
> boots:
>
> ```
> [...]
> [ 0.000000] Memory policy: Data cache writeback
> [ 0.000000] Reserved memory: created CMA memory pool at 0x17000000, size 64 MiB
> [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
> [ 0.000000] OF: reserved mem: 0x17000000..0x1affffff (65536 KiB) map reusable linux,cma
> [ 0.000000] Zone ranges:
> [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> [ 0.000000] Movable zone start for each node
> [ 0.000000] Early memory node ranges
> [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 rootwait earlycon=uart8250,mmio32,0x20215040
> [...]
> ```
>
> That should hopefully narrow down the issue space.
If I'm not wrong the only cma related change between 6.12.43 and
6.12.48 was the backport of 2c223f7239f3 ("of: reserved_mem:
Restructure call site for dma_contiguous_early_fixup()"):
commit 46efab01648a04082266115a8e917c3b26b97fa8
Author: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
Date: Wed Aug 6 10:24:21 2025 -0700
of: reserved_mem: Restructure call site for dma_contiguous_early_fixup()
[ Upstream commit 2c223f7239f376a90d71903ec474ba887cf21d94 ]
Restructure the call site for dma_contiguous_early_fixup() to
where the reserved_mem nodes are being parsed from the DT so that
dma_mmu_remap[] is populated before dma_contiguous_remap() is called.
Fixes: 8a6e02d0c00e ("of: reserved_mem: Restructure how the reserved memory regions are processed")
Signed-off-by: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
Tested-by: William Zhang <william.zhang@broadcom.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Link: https://lore.kernel.org/r/20250806172421.2748302-1-oreoluwa.babatunde@oss.qualcomm.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
Uwe, would that make sense? Benjamin can you try to make a build with
that commit reverted, does it fix the problem?
Regards,
Salvatore
[toc] | [prev] | [next] | [standalone]
| From | Benjamin Drung <bdrung@debian.org> |
|---|---|
| Date | 2025-11-28 23:00 +0100 |
| Message-ID | <LWeFr-gtRN-1@gated-at.bofh.it> |
| In reply to | #90266 |
On Wed, 2025-11-26 at 08:52 +0100, Salvatore Bonaccorso wrote:
> Control: tags -1 + moreinfo
>
> Hi,
>
> On Sat, Nov 22, 2025 at 04:27:53PM +0100, Benjamin Drung wrote:
> > Hi Uwe,
> >
> > On Fri, 2025-11-21 at 09:52 +0100, Uwe Kleine-König wrote:
> > > Hello Benjamin,
> > >
> > > On Thu, Nov 20, 2025 at 11:11:07AM +0100, Benjamin Drung wrote:
> > > > On Thu, 2025-11-20 at 08:58 +0100, Uwe Kleine-König wrote:
> > > > > On Mon, Nov 17, 2025 at 02:05:41AM +0100, Benjamin Drung wrote:
> > > > > > On Wed, 2025-11-05 at 20:14 +0100, Uwe Kleine-König wrote:
> > > > > > > Can you try adding
> > > > > > >
> > > > > > > earlyprintk=serial,0x7e215040
> > > > > > >
> > > > > > > to the kernel commandline. Not sure this activates the right procedures,
> > > > > > > maybe try it with the working kernel first.
> > > > > >
> > > > > > I tried with the working kernel 6.12.43+deb13-rpi but these were the
> > > > > > earliest lines:
> > > > > >
> > > > > > [ 4.116565] printk: legacy console [ttyS1] enabled
> > > > > > [ 4.129635] printk: legacy bootconsole [earlycon0] disabled
> > > > > > [ 4.147050] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
> > > > > > [ 4.160972] mousedev: PS/2 mouse device common for all mice
> > > > > > [ 4.172622] i2c-bcm2835 20805000.i2c: Could not read clock-frequency property
> > > > > > [ 4.186585] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
> > > > > >
> > > > > > I tried with 6.12.57+deb13-rpi but that failed to boot and the
> > > > > > earlyprintk line did not give any additional logs.
> > > > >
> > > > > Can you please provide a full kernel log of the working kernel?
> > > >
> > > > dmesg log is attached.
> > > >
> > > > > Also please provide the output of:
> > > > >
> > > > > for f in /proc/tty/driver/*; do echo $f; sed 's/^/ /' < $f; done
> > > >
> > > > /proc/tty/driver/serial
> > > > serinfo:1.0 driver revision:
> > > > 0: uart:unknown port:00000000 irq:0
> > > > 1: uart:16550 mmio:0x20215040 irq:53 tx:15629 rx:0 RTS|CTS|DTR
> > > > 2: uart:unknown port:00000000 irq:0
> > > > 3: uart:unknown port:00000000 irq:0
> > > > /proc/tty/driver/ttyAMA
> > > > serinfo:1.0 driver revision:
> > > > 0: uart:PL011 rev2 mmio:0x20201000 irq:81 tx:452 rx:980 RTS|CTS|DTR
> > >
> > > OK, is
> > >
> > > earlyprintk=serial,0x20215040
> > >
> > > more communicative then?
> >
> > Nope, but I found
> > https://www.raspberrypi.com/documentation/computers/configuration.html#enabling-early-console-for-linux
> > and setting earlycon=uart8250,mmio32,0x20215040 worked. The kernel
> > 6.12.43+deb13-rpi booted with printing the early lines as well (see
> > dmesg of previous mail).
> >
> > With all other experiments cleaned, I tried the latest kernel:
> >
> > ```
> > $ cat /etc/default/raspi-extra-cmdline
> > earlycon=uart8250,mmio32,0x20215040
> > $ update-initramfs -u
> > ```
> >
> > I got following logs before it got stuck:
> >
> > ```
> > [ 0.000000] Booting Linux on physical CPU 0x0
> > [ 0.000000] Linux version 6.12.57+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.57-1 (2025-11-05)
> > [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
> > [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
> > [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1
> > [ 0.000000] random: crng init done
> > [ 0.000000] earlycon: uart8250 at MMIO32 0x20215040 (options '')
> > [ 0.000000] printk: legacy bootconsole [uart8250] enabled
> > [ 0.000000] Memory policy: Data cache writeback
> > [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> > [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> > [ 0.000000] cma: Reserved 64 MiB at 0x17000000 on node -1
> > ```
> >
> > It looks like being cma related and I found a cma boot option in
> > /etc/default/raspi-firmware. So I modified /boot/firmware/cmdline.txt
> > and changed cma=64M to cma=0. Then the system booted without problems:
> >
> > ```
> > [...]
> > [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> > [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> > [ 0.000000] Zone ranges:
> > [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> > [ 0.000000] Movable zone start for each node
> > [ 0.000000] Early memory node ranges
> > [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> > [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> > [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=0 rootwait earlycon=uart8250,mmio32,0x20215040
> > [...]
> > ```
> >
> > Then I persisted this change by setting CMA=0 in
> > /etc/default/raspi-firmware:
> >
> > ```
> > $ grep -Ev '^(#|$)' /etc/default/raspi-firmware
> > CMA=0
> > $ update-initramfs -u
> > ```
> >
> > This config removes the cma cmdline option completely. The system still
> > boots:
> >
> > ```
> > [...]
> > [ 0.000000] Memory policy: Data cache writeback
> > [ 0.000000] Reserved memory: created CMA memory pool at 0x17000000, size 64 MiB
> > [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
> > [ 0.000000] OF: reserved mem: 0x17000000..0x1affffff (65536 KiB) map reusable linux,cma
> > [ 0.000000] Zone ranges:
> > [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> > [ 0.000000] Movable zone start for each node
> > [ 0.000000] Early memory node ranges
> > [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> > [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> > [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 rootwait earlycon=uart8250,mmio32,0x20215040
> > [...]
> > ```
> >
> > That should hopefully narrow down the issue space.
>
> If I'm not wrong the only cma related change between 6.12.43 and
> 6.12.48 was the backport of 2c223f7239f3 ("of: reserved_mem:
> Restructure call site for dma_contiguous_early_fixup()"):
>
> commit 46efab01648a04082266115a8e917c3b26b97fa8
> Author: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
> Date: Wed Aug 6 10:24:21 2025 -0700
>
> of: reserved_mem: Restructure call site for dma_contiguous_early_fixup()
>
> [ Upstream commit 2c223f7239f376a90d71903ec474ba887cf21d94 ]
>
> Restructure the call site for dma_contiguous_early_fixup() to
> where the reserved_mem nodes are being parsed from the DT so that
> dma_mmu_remap[] is populated before dma_contiguous_remap() is called.
>
> Fixes: 8a6e02d0c00e ("of: reserved_mem: Restructure how the reserved memory regions are processed")
> Signed-off-by: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
> Tested-by: William Zhang <william.zhang@broadcom.com>
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> Link: https://lore.kernel.org/r/20250806172421.2748302-1-oreoluwa.babatunde@oss.qualcomm.com
> Signed-off-by: Sasha Levin <sashal@kernel.org>
>
> Uwe, would that make sense? Benjamin can you try to make a build with
> that commit reverted, does it fix the problem?
Building the kernel on the Pi Zero would probably take ages. I have a
Raspberry Pi 5 running arm64. That should be able to build the kernel in
a armel schroot, shouldn't it? Is there documentation for building the
kernel?
--
Benjamin Drung
Debian & Ubuntu Developer
[toc] | [prev] | [next] | [standalone]
| From | Salvatore Bonaccorso <carnil@debian.org> |
|---|---|
| Date | 2025-11-29 00:10 +0100 |
| Message-ID | <LWfLb-guQQ-1@gated-at.bofh.it> |
| In reply to | #90324 |
[Multipart message — attachments visible in raw view] — view raw
Hi Benjamin,
On Fri, Nov 28, 2025 at 10:53:17PM +0100, Benjamin Drung wrote:
> On Wed, 2025-11-26 at 08:52 +0100, Salvatore Bonaccorso wrote:
> > Control: tags -1 + moreinfo
> >
> > Hi,
> >
> > On Sat, Nov 22, 2025 at 04:27:53PM +0100, Benjamin Drung wrote:
> > > Hi Uwe,
> > >
> > > On Fri, 2025-11-21 at 09:52 +0100, Uwe Kleine-König wrote:
> > > > Hello Benjamin,
> > > >
> > > > On Thu, Nov 20, 2025 at 11:11:07AM +0100, Benjamin Drung wrote:
> > > > > On Thu, 2025-11-20 at 08:58 +0100, Uwe Kleine-König wrote:
> > > > > > On Mon, Nov 17, 2025 at 02:05:41AM +0100, Benjamin Drung wrote:
> > > > > > > On Wed, 2025-11-05 at 20:14 +0100, Uwe Kleine-König wrote:
> > > > > > > > Can you try adding
> > > > > > > >
> > > > > > > > earlyprintk=serial,0x7e215040
> > > > > > > >
> > > > > > > > to the kernel commandline. Not sure this activates the right procedures,
> > > > > > > > maybe try it with the working kernel first.
> > > > > > >
> > > > > > > I tried with the working kernel 6.12.43+deb13-rpi but these were the
> > > > > > > earliest lines:
> > > > > > >
> > > > > > > [ 4.116565] printk: legacy console [ttyS1] enabled
> > > > > > > [ 4.129635] printk: legacy bootconsole [earlycon0] disabled
> > > > > > > [ 4.147050] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
> > > > > > > [ 4.160972] mousedev: PS/2 mouse device common for all mice
> > > > > > > [ 4.172622] i2c-bcm2835 20805000.i2c: Could not read clock-frequency property
> > > > > > > [ 4.186585] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
> > > > > > >
> > > > > > > I tried with 6.12.57+deb13-rpi but that failed to boot and the
> > > > > > > earlyprintk line did not give any additional logs.
> > > > > >
> > > > > > Can you please provide a full kernel log of the working kernel?
> > > > >
> > > > > dmesg log is attached.
> > > > >
> > > > > > Also please provide the output of:
> > > > > >
> > > > > > for f in /proc/tty/driver/*; do echo $f; sed 's/^/ /' < $f; done
> > > > >
> > > > > /proc/tty/driver/serial
> > > > > serinfo:1.0 driver revision:
> > > > > 0: uart:unknown port:00000000 irq:0
> > > > > 1: uart:16550 mmio:0x20215040 irq:53 tx:15629 rx:0 RTS|CTS|DTR
> > > > > 2: uart:unknown port:00000000 irq:0
> > > > > 3: uart:unknown port:00000000 irq:0
> > > > > /proc/tty/driver/ttyAMA
> > > > > serinfo:1.0 driver revision:
> > > > > 0: uart:PL011 rev2 mmio:0x20201000 irq:81 tx:452 rx:980 RTS|CTS|DTR
> > > >
> > > > OK, is
> > > >
> > > > earlyprintk=serial,0x20215040
> > > >
> > > > more communicative then?
> > >
> > > Nope, but I found
> > > https://www.raspberrypi.com/documentation/computers/configuration.html#enabling-early-console-for-linux
> > > and setting earlycon=uart8250,mmio32,0x20215040 worked. The kernel
> > > 6.12.43+deb13-rpi booted with printing the early lines as well (see
> > > dmesg of previous mail).
> > >
> > > With all other experiments cleaned, I tried the latest kernel:
> > >
> > > ```
> > > $ cat /etc/default/raspi-extra-cmdline
> > > earlycon=uart8250,mmio32,0x20215040
> > > $ update-initramfs -u
> > > ```
> > >
> > > I got following logs before it got stuck:
> > >
> > > ```
> > > [ 0.000000] Booting Linux on physical CPU 0x0
> > > [ 0.000000] Linux version 6.12.57+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.57-1 (2025-11-05)
> > > [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
> > > [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
> > > [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1
> > > [ 0.000000] random: crng init done
> > > [ 0.000000] earlycon: uart8250 at MMIO32 0x20215040 (options '')
> > > [ 0.000000] printk: legacy bootconsole [uart8250] enabled
> > > [ 0.000000] Memory policy: Data cache writeback
> > > [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> > > [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> > > [ 0.000000] cma: Reserved 64 MiB at 0x17000000 on node -1
> > > ```
> > >
> > > It looks like being cma related and I found a cma boot option in
> > > /etc/default/raspi-firmware. So I modified /boot/firmware/cmdline.txt
> > > and changed cma=64M to cma=0. Then the system booted without problems:
> > >
> > > ```
> > > [...]
> > > [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> > > [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> > > [ 0.000000] Zone ranges:
> > > [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> > > [ 0.000000] Movable zone start for each node
> > > [ 0.000000] Early memory node ranges
> > > [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> > > [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> > > [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=0 rootwait earlycon=uart8250,mmio32,0x20215040
> > > [...]
> > > ```
> > >
> > > Then I persisted this change by setting CMA=0 in
> > > /etc/default/raspi-firmware:
> > >
> > > ```
> > > $ grep -Ev '^(#|$)' /etc/default/raspi-firmware
> > > CMA=0
> > > $ update-initramfs -u
> > > ```
> > >
> > > This config removes the cma cmdline option completely. The system still
> > > boots:
> > >
> > > ```
> > > [...]
> > > [ 0.000000] Memory policy: Data cache writeback
> > > [ 0.000000] Reserved memory: created CMA memory pool at 0x17000000, size 64 MiB
> > > [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
> > > [ 0.000000] OF: reserved mem: 0x17000000..0x1affffff (65536 KiB) map reusable linux,cma
> > > [ 0.000000] Zone ranges:
> > > [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> > > [ 0.000000] Movable zone start for each node
> > > [ 0.000000] Early memory node ranges
> > > [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> > > [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> > > [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 rootwait earlycon=uart8250,mmio32,0x20215040
> > > [...]
> > > ```
> > >
> > > That should hopefully narrow down the issue space.
> >
> > If I'm not wrong the only cma related change between 6.12.43 and
> > 6.12.48 was the backport of 2c223f7239f3 ("of: reserved_mem:
> > Restructure call site for dma_contiguous_early_fixup()"):
> >
> > commit 46efab01648a04082266115a8e917c3b26b97fa8
> > Author: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
> > Date: Wed Aug 6 10:24:21 2025 -0700
> >
> > of: reserved_mem: Restructure call site for dma_contiguous_early_fixup()
> >
> > [ Upstream commit 2c223f7239f376a90d71903ec474ba887cf21d94 ]
> >
> > Restructure the call site for dma_contiguous_early_fixup() to
> > where the reserved_mem nodes are being parsed from the DT so that
> > dma_mmu_remap[] is populated before dma_contiguous_remap() is called.
> >
> > Fixes: 8a6e02d0c00e ("of: reserved_mem: Restructure how the reserved memory regions are processed")
> > Signed-off-by: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
> > Tested-by: William Zhang <william.zhang@broadcom.com>
> > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> > Link: https://lore.kernel.org/r/20250806172421.2748302-1-oreoluwa.babatunde@oss.qualcomm.com
> > Signed-off-by: Sasha Levin <sashal@kernel.org>
> >
> > Uwe, would that make sense? Benjamin can you try to make a build with
> > that commit reverted, does it fix the problem?
>
> Building the kernel on the Pi Zero would probably take ages. I have a
> Raspberry Pi 5 running arm64. That should be able to build the kernel in
> a armel schroot, shouldn't it? Is there documentation for building the
> kernel?
I hope it is fine for Uwe that i respond here, he might have another
more efficient way to reach our goal.
But we have the simple-patching guideline here:
https://kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#id-1.6.6.4
That should work within an armel schroot work well, e.g. on a
porterbox amdahl.d.o i would first setup a schroot via:
schroot -b -c chroot:trixie_armel-dchroot -n linux
dd-schroot-cmd -c linux apt-get update
dd-schroot-cmd -c linux apt-get dist-upgrade
dd-schroot-cmd -c linux apt-get build-dep linux
schroot -r -c linux
(see https://dsa.debian.org/doc/schroot/)
Then download the linux/6.12.57-1 source and make the revert patch
available.
apt-get source linux
cd linux-*
./debian/bin/test-patches -f rpi ../0001-Revert-of-reserved_mem-Restructure-call-site-for-dma.patch
Regards,
Salvatore
[toc] | [prev] | [next] | [standalone]
| From | Salvatore Bonaccorso <carnil@debian.org> |
|---|---|
| Date | 2025-11-30 10:30 +0100 |
| Message-ID | <LWLUJ-gSx5-1@gated-at.bofh.it> |
| In reply to | #90325 |
Hi Benjmanin,
On Sat, Nov 29, 2025 at 12:02:00AM +0100, Salvatore Bonaccorso wrote:
> Hi Benjamin,
>
> On Fri, Nov 28, 2025 at 10:53:17PM +0100, Benjamin Drung wrote:
> > On Wed, 2025-11-26 at 08:52 +0100, Salvatore Bonaccorso wrote:
> > > Control: tags -1 + moreinfo
> > >
> > > Hi,
> > >
> > > On Sat, Nov 22, 2025 at 04:27:53PM +0100, Benjamin Drung wrote:
> > > > Hi Uwe,
> > > >
> > > > On Fri, 2025-11-21 at 09:52 +0100, Uwe Kleine-König wrote:
> > > > > Hello Benjamin,
> > > > >
> > > > > On Thu, Nov 20, 2025 at 11:11:07AM +0100, Benjamin Drung wrote:
> > > > > > On Thu, 2025-11-20 at 08:58 +0100, Uwe Kleine-König wrote:
> > > > > > > On Mon, Nov 17, 2025 at 02:05:41AM +0100, Benjamin Drung wrote:
> > > > > > > > On Wed, 2025-11-05 at 20:14 +0100, Uwe Kleine-König wrote:
> > > > > > > > > Can you try adding
> > > > > > > > >
> > > > > > > > > earlyprintk=serial,0x7e215040
> > > > > > > > >
> > > > > > > > > to the kernel commandline. Not sure this activates the right procedures,
> > > > > > > > > maybe try it with the working kernel first.
> > > > > > > >
> > > > > > > > I tried with the working kernel 6.12.43+deb13-rpi but these were the
> > > > > > > > earliest lines:
> > > > > > > >
> > > > > > > > [ 4.116565] printk: legacy console [ttyS1] enabled
> > > > > > > > [ 4.129635] printk: legacy bootconsole [earlycon0] disabled
> > > > > > > > [ 4.147050] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
> > > > > > > > [ 4.160972] mousedev: PS/2 mouse device common for all mice
> > > > > > > > [ 4.172622] i2c-bcm2835 20805000.i2c: Could not read clock-frequency property
> > > > > > > > [ 4.186585] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
> > > > > > > >
> > > > > > > > I tried with 6.12.57+deb13-rpi but that failed to boot and the
> > > > > > > > earlyprintk line did not give any additional logs.
> > > > > > >
> > > > > > > Can you please provide a full kernel log of the working kernel?
> > > > > >
> > > > > > dmesg log is attached.
> > > > > >
> > > > > > > Also please provide the output of:
> > > > > > >
> > > > > > > for f in /proc/tty/driver/*; do echo $f; sed 's/^/ /' < $f; done
> > > > > >
> > > > > > /proc/tty/driver/serial
> > > > > > serinfo:1.0 driver revision:
> > > > > > 0: uart:unknown port:00000000 irq:0
> > > > > > 1: uart:16550 mmio:0x20215040 irq:53 tx:15629 rx:0 RTS|CTS|DTR
> > > > > > 2: uart:unknown port:00000000 irq:0
> > > > > > 3: uart:unknown port:00000000 irq:0
> > > > > > /proc/tty/driver/ttyAMA
> > > > > > serinfo:1.0 driver revision:
> > > > > > 0: uart:PL011 rev2 mmio:0x20201000 irq:81 tx:452 rx:980 RTS|CTS|DTR
> > > > >
> > > > > OK, is
> > > > >
> > > > > earlyprintk=serial,0x20215040
> > > > >
> > > > > more communicative then?
> > > >
> > > > Nope, but I found
> > > > https://www.raspberrypi.com/documentation/computers/configuration.html#enabling-early-console-for-linux
> > > > and setting earlycon=uart8250,mmio32,0x20215040 worked. The kernel
> > > > 6.12.43+deb13-rpi booted with printing the early lines as well (see
> > > > dmesg of previous mail).
> > > >
> > > > With all other experiments cleaned, I tried the latest kernel:
> > > >
> > > > ```
> > > > $ cat /etc/default/raspi-extra-cmdline
> > > > earlycon=uart8250,mmio32,0x20215040
> > > > $ update-initramfs -u
> > > > ```
> > > >
> > > > I got following logs before it got stuck:
> > > >
> > > > ```
> > > > [ 0.000000] Booting Linux on physical CPU 0x0
> > > > [ 0.000000] Linux version 6.12.57+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.57-1 (2025-11-05)
> > > > [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
> > > > [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
> > > > [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1
> > > > [ 0.000000] random: crng init done
> > > > [ 0.000000] earlycon: uart8250 at MMIO32 0x20215040 (options '')
> > > > [ 0.000000] printk: legacy bootconsole [uart8250] enabled
> > > > [ 0.000000] Memory policy: Data cache writeback
> > > > [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> > > > [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> > > > [ 0.000000] cma: Reserved 64 MiB at 0x17000000 on node -1
> > > > ```
> > > >
> > > > It looks like being cma related and I found a cma boot option in
> > > > /etc/default/raspi-firmware. So I modified /boot/firmware/cmdline.txt
> > > > and changed cma=64M to cma=0. Then the system booted without problems:
> > > >
> > > > ```
> > > > [...]
> > > > [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> > > > [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> > > > [ 0.000000] Zone ranges:
> > > > [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> > > > [ 0.000000] Movable zone start for each node
> > > > [ 0.000000] Early memory node ranges
> > > > [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> > > > [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> > > > [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=0 rootwait earlycon=uart8250,mmio32,0x20215040
> > > > [...]
> > > > ```
> > > >
> > > > Then I persisted this change by setting CMA=0 in
> > > > /etc/default/raspi-firmware:
> > > >
> > > > ```
> > > > $ grep -Ev '^(#|$)' /etc/default/raspi-firmware
> > > > CMA=0
> > > > $ update-initramfs -u
> > > > ```
> > > >
> > > > This config removes the cma cmdline option completely. The system still
> > > > boots:
> > > >
> > > > ```
> > > > [...]
> > > > [ 0.000000] Memory policy: Data cache writeback
> > > > [ 0.000000] Reserved memory: created CMA memory pool at 0x17000000, size 64 MiB
> > > > [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
> > > > [ 0.000000] OF: reserved mem: 0x17000000..0x1affffff (65536 KiB) map reusable linux,cma
> > > > [ 0.000000] Zone ranges:
> > > > [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> > > > [ 0.000000] Movable zone start for each node
> > > > [ 0.000000] Early memory node ranges
> > > > [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> > > > [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> > > > [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 rootwait earlycon=uart8250,mmio32,0x20215040
> > > > [...]
> > > > ```
> > > >
> > > > That should hopefully narrow down the issue space.
> > >
> > > If I'm not wrong the only cma related change between 6.12.43 and
> > > 6.12.48 was the backport of 2c223f7239f3 ("of: reserved_mem:
> > > Restructure call site for dma_contiguous_early_fixup()"):
> > >
> > > commit 46efab01648a04082266115a8e917c3b26b97fa8
> > > Author: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
> > > Date: Wed Aug 6 10:24:21 2025 -0700
> > >
> > > of: reserved_mem: Restructure call site for dma_contiguous_early_fixup()
> > >
> > > [ Upstream commit 2c223f7239f376a90d71903ec474ba887cf21d94 ]
> > >
> > > Restructure the call site for dma_contiguous_early_fixup() to
> > > where the reserved_mem nodes are being parsed from the DT so that
> > > dma_mmu_remap[] is populated before dma_contiguous_remap() is called.
> > >
> > > Fixes: 8a6e02d0c00e ("of: reserved_mem: Restructure how the reserved memory regions are processed")
> > > Signed-off-by: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
> > > Tested-by: William Zhang <william.zhang@broadcom.com>
> > > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> > > Link: https://lore.kernel.org/r/20250806172421.2748302-1-oreoluwa.babatunde@oss.qualcomm.com
> > > Signed-off-by: Sasha Levin <sashal@kernel.org>
> > >
> > > Uwe, would that make sense? Benjamin can you try to make a build with
> > > that commit reverted, does it fix the problem?
> >
> > Building the kernel on the Pi Zero would probably take ages. I have a
> > Raspberry Pi 5 running arm64. That should be able to build the kernel in
> > a armel schroot, shouldn't it? Is there documentation for building the
> > kernel?
>
> I hope it is fine for Uwe that i respond here, he might have another
> more efficient way to reach our goal.
>
> But we have the simple-patching guideline here:
> https://kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#id-1.6.6.4
>
> That should work within an armel schroot work well, e.g. on a
> porterbox amdahl.d.o i would first setup a schroot via:
>
> schroot -b -c chroot:trixie_armel-dchroot -n linux
> dd-schroot-cmd -c linux apt-get update
> dd-schroot-cmd -c linux apt-get dist-upgrade
> dd-schroot-cmd -c linux apt-get build-dep linux
> schroot -r -c linux
> (see https://dsa.debian.org/doc/schroot/)
>
> Then download the linux/6.12.57-1 source and make the revert patch
> available.
>
> apt-get source linux
> cd linux-*
> ./debian/bin/test-patches -f rpi ../0001-Revert-of-reserved_mem-Restructure-call-site-for-dma.patch
In case you can/want trust unsigned packages (but I have put a
sha256sum along signed with my key in the DD keyring), you can test
the patch revert via the packages on:
https://people.debian.org/~carnil/tmp/linux/1116251/
Regards,
Salvatore
[toc] | [prev] | [next] | [standalone]
| From | Benjamin Drung <bdrung@debian.org> |
|---|---|
| Date | 2025-12-17 22:30 +0100 |
| Message-ID | <M37fP-3Fpb-3@gated-at.bofh.it> |
| In reply to | #90329 |
[Multipart message — attachments visible in raw view] — view raw
On Sun, 2025-11-30 at 10:27 +0100, Salvatore Bonaccorso wrote:
> Hi Benjmanin,
>
> On Sat, Nov 29, 2025 at 12:02:00AM +0100, Salvatore Bonaccorso wrote:
> > Hi Benjamin,
> >
> > On Fri, Nov 28, 2025 at 10:53:17PM +0100, Benjamin Drung wrote:
> > > On Wed, 2025-11-26 at 08:52 +0100, Salvatore Bonaccorso wrote:
> > > > Control: tags -1 + moreinfo
> > > >
> > > > Hi,
> > > >
> > > > On Sat, Nov 22, 2025 at 04:27:53PM +0100, Benjamin Drung wrote:
> > > > > Hi Uwe,
> > > > >
> > > > > On Fri, 2025-11-21 at 09:52 +0100, Uwe Kleine-König wrote:
> > > > > > Hello Benjamin,
> > > > > >
> > > > > > On Thu, Nov 20, 2025 at 11:11:07AM +0100, Benjamin Drung wrote:
> > > > > > > On Thu, 2025-11-20 at 08:58 +0100, Uwe Kleine-König wrote:
> > > > > > > > On Mon, Nov 17, 2025 at 02:05:41AM +0100, Benjamin Drung wrote:
> > > > > > > > > On Wed, 2025-11-05 at 20:14 +0100, Uwe Kleine-König wrote:
> > > > > > > > > > Can you try adding
> > > > > > > > > >
> > > > > > > > > > earlyprintk=serial,0x7e215040
> > > > > > > > > >
> > > > > > > > > > to the kernel commandline. Not sure this activates the right procedures,
> > > > > > > > > > maybe try it with the working kernel first.
> > > > > > > > >
> > > > > > > > > I tried with the working kernel 6.12.43+deb13-rpi but these were the
> > > > > > > > > earliest lines:
> > > > > > > > >
> > > > > > > > > [ 4.116565] printk: legacy console [ttyS1] enabled
> > > > > > > > > [ 4.129635] printk: legacy bootconsole [earlycon0] disabled
> > > > > > > > > [ 4.147050] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
> > > > > > > > > [ 4.160972] mousedev: PS/2 mouse device common for all mice
> > > > > > > > > [ 4.172622] i2c-bcm2835 20805000.i2c: Could not read clock-frequency property
> > > > > > > > > [ 4.186585] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
> > > > > > > > >
> > > > > > > > > I tried with 6.12.57+deb13-rpi but that failed to boot and the
> > > > > > > > > earlyprintk line did not give any additional logs.
> > > > > > > >
> > > > > > > > Can you please provide a full kernel log of the working kernel?
> > > > > > >
> > > > > > > dmesg log is attached.
> > > > > > >
> > > > > > > > Also please provide the output of:
> > > > > > > >
> > > > > > > > for f in /proc/tty/driver/*; do echo $f; sed 's/^/ /' < $f; done
> > > > > > >
> > > > > > > /proc/tty/driver/serial
> > > > > > > serinfo:1.0 driver revision:
> > > > > > > 0: uart:unknown port:00000000 irq:0
> > > > > > > 1: uart:16550 mmio:0x20215040 irq:53 tx:15629 rx:0 RTS|CTS|DTR
> > > > > > > 2: uart:unknown port:00000000 irq:0
> > > > > > > 3: uart:unknown port:00000000 irq:0
> > > > > > > /proc/tty/driver/ttyAMA
> > > > > > > serinfo:1.0 driver revision:
> > > > > > > 0: uart:PL011 rev2 mmio:0x20201000 irq:81 tx:452 rx:980 RTS|CTS|DTR
> > > > > >
> > > > > > OK, is
> > > > > >
> > > > > > earlyprintk=serial,0x20215040
> > > > > >
> > > > > > more communicative then?
> > > > >
> > > > > Nope, but I found
> > > > > https://www.raspberrypi.com/documentation/computers/configuration.html#enabling-early-console-for-linux
> > > > > and setting earlycon=uart8250,mmio32,0x20215040 worked. The kernel
> > > > > 6.12.43+deb13-rpi booted with printing the early lines as well (see
> > > > > dmesg of previous mail).
> > > > >
> > > > > With all other experiments cleaned, I tried the latest kernel:
> > > > >
> > > > > ```
> > > > > $ cat /etc/default/raspi-extra-cmdline
> > > > > earlycon=uart8250,mmio32,0x20215040
> > > > > $ update-initramfs -u
> > > > > ```
> > > > >
> > > > > I got following logs before it got stuck:
> > > > >
> > > > > ```
> > > > > [ 0.000000] Booting Linux on physical CPU 0x0
> > > > > [ 0.000000] Linux version 6.12.57+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.57-1 (2025-11-05)
> > > > > [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
> > > > > [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
> > > > > [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1
> > > > > [ 0.000000] random: crng init done
> > > > > [ 0.000000] earlycon: uart8250 at MMIO32 0x20215040 (options '')
> > > > > [ 0.000000] printk: legacy bootconsole [uart8250] enabled
> > > > > [ 0.000000] Memory policy: Data cache writeback
> > > > > [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> > > > > [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> > > > > [ 0.000000] cma: Reserved 64 MiB at 0x17000000 on node -1
> > > > > ```
> > > > >
> > > > > It looks like being cma related and I found a cma boot option in
> > > > > /etc/default/raspi-firmware. So I modified /boot/firmware/cmdline.txt
> > > > > and changed cma=64M to cma=0. Then the system booted without problems:
> > > > >
> > > > > ```
> > > > > [...]
> > > > > [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> > > > > [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> > > > > [ 0.000000] Zone ranges:
> > > > > [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> > > > > [ 0.000000] Movable zone start for each node
> > > > > [ 0.000000] Early memory node ranges
> > > > > [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> > > > > [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> > > > > [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=0 rootwait earlycon=uart8250,mmio32,0x20215040
> > > > > [...]
> > > > > ```
> > > > >
> > > > > Then I persisted this change by setting CMA=0 in
> > > > > /etc/default/raspi-firmware:
> > > > >
> > > > > ```
> > > > > $ grep -Ev '^(#|$)' /etc/default/raspi-firmware
> > > > > CMA=0
> > > > > $ update-initramfs -u
> > > > > ```
> > > > >
> > > > > This config removes the cma cmdline option completely. The system still
> > > > > boots:
> > > > >
> > > > > ```
> > > > > [...]
> > > > > [ 0.000000] Memory policy: Data cache writeback
> > > > > [ 0.000000] Reserved memory: created CMA memory pool at 0x17000000, size 64 MiB
> > > > > [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
> > > > > [ 0.000000] OF: reserved mem: 0x17000000..0x1affffff (65536 KiB) map reusable linux,cma
> > > > > [ 0.000000] Zone ranges:
> > > > > [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> > > > > [ 0.000000] Movable zone start for each node
> > > > > [ 0.000000] Early memory node ranges
> > > > > [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> > > > > [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> > > > > [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 rootwait earlycon=uart8250,mmio32,0x20215040
> > > > > [...]
> > > > > ```
> > > > >
> > > > > That should hopefully narrow down the issue space.
> > > >
> > > > If I'm not wrong the only cma related change between 6.12.43 and
> > > > 6.12.48 was the backport of 2c223f7239f3 ("of: reserved_mem:
> > > > Restructure call site for dma_contiguous_early_fixup()"):
> > > >
> > > > commit 46efab01648a04082266115a8e917c3b26b97fa8
> > > > Author: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
> > > > Date: Wed Aug 6 10:24:21 2025 -0700
> > > >
> > > > of: reserved_mem: Restructure call site for dma_contiguous_early_fixup()
> > > >
> > > > [ Upstream commit 2c223f7239f376a90d71903ec474ba887cf21d94 ]
> > > >
> > > > Restructure the call site for dma_contiguous_early_fixup() to
> > > > where the reserved_mem nodes are being parsed from the DT so that
> > > > dma_mmu_remap[] is populated before dma_contiguous_remap() is called.
> > > >
> > > > Fixes: 8a6e02d0c00e ("of: reserved_mem: Restructure how the reserved memory regions are processed")
> > > > Signed-off-by: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
> > > > Tested-by: William Zhang <william.zhang@broadcom.com>
> > > > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> > > > Link: https://lore.kernel.org/r/20250806172421.2748302-1-oreoluwa.babatunde@oss.qualcomm.com
> > > > Signed-off-by: Sasha Levin <sashal@kernel.org>
> > > >
> > > > Uwe, would that make sense? Benjamin can you try to make a build with
> > > > that commit reverted, does it fix the problem?
> > >
> > > Building the kernel on the Pi Zero would probably take ages. I have a
> > > Raspberry Pi 5 running arm64. That should be able to build the kernel in
> > > a armel schroot, shouldn't it? Is there documentation for building the
> > > kernel?
> >
> > I hope it is fine for Uwe that i respond here, he might have another
> > more efficient way to reach our goal.
> >
> > But we have the simple-patching guideline here:
> > https://kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#id-1.6.6.4
> >
> > That should work within an armel schroot work well, e.g. on a
> > porterbox amdahl.d.o i would first setup a schroot via:
> >
> > schroot -b -c chroot:trixie_armel-dchroot -n linux
> > dd-schroot-cmd -c linux apt-get update
> > dd-schroot-cmd -c linux apt-get dist-upgrade
> > dd-schroot-cmd -c linux apt-get build-dep linux
> > schroot -r -c linux
> > (see https://dsa.debian.org/doc/schroot/)
> >
> > Then download the linux/6.12.57-1 source and make the revert patch
> > available.
> >
> > apt-get source linux
> > cd linux-*
> > ./debian/bin/test-patches -f rpi ../0001-Revert-of-reserved_mem-Restructure-call-site-for-dma.patch
>
> In case you can/want trust unsigned packages (but I have put a
> sha256sum along signed with my key in the DD keyring), you can test
> the patch revert via the packages on:
> https://people.debian.org/~carnil/tmp/linux/1116251/
Thanks for providing the kernel. I downloaded linux-image-
6.12+unreleased-rpi_6.12.57-1a~test_armel.deb and installed it. This
kernel hangs on boot (see attached boot.log). It hangs there
reproducible.
--
Benjamin Drung
Debian & Ubuntu Developer
[toc] | [prev] | [next] | [standalone]
| From | Benjamin Drung <bdrung@debian.org> |
|---|---|
| Date | 2025-12-17 23:20 +0100 |
| Message-ID | <M382d-3FZK-5@gated-at.bofh.it> |
| In reply to | #90512 |
On Wed, 2025-12-17 at 22:20 +0100, Benjamin Drung wrote:
> On Sun, 2025-11-30 at 10:27 +0100, Salvatore Bonaccorso wrote:
> > Hi Benjmanin,
> >
> > On Sat, Nov 29, 2025 at 12:02:00AM +0100, Salvatore Bonaccorso wrote:
> > > Hi Benjamin,
> > >
> > > On Fri, Nov 28, 2025 at 10:53:17PM +0100, Benjamin Drung wrote:
> > > > On Wed, 2025-11-26 at 08:52 +0100, Salvatore Bonaccorso wrote:
> > > > > Control: tags -1 + moreinfo
> > > > >
> > > > > Hi,
> > > > >
> > > > > On Sat, Nov 22, 2025 at 04:27:53PM +0100, Benjamin Drung wrote:
> > > > > > Hi Uwe,
> > > > > >
> > > > > > On Fri, 2025-11-21 at 09:52 +0100, Uwe Kleine-König wrote:
> > > > > > > Hello Benjamin,
> > > > > > >
> > > > > > > On Thu, Nov 20, 2025 at 11:11:07AM +0100, Benjamin Drung wrote:
> > > > > > > > On Thu, 2025-11-20 at 08:58 +0100, Uwe Kleine-König wrote:
> > > > > > > > > On Mon, Nov 17, 2025 at 02:05:41AM +0100, Benjamin Drung wrote:
> > > > > > > > > > On Wed, 2025-11-05 at 20:14 +0100, Uwe Kleine-König wrote:
> > > > > > > > > > > Can you try adding
> > > > > > > > > > >
> > > > > > > > > > > earlyprintk=serial,0x7e215040
> > > > > > > > > > >
> > > > > > > > > > > to the kernel commandline. Not sure this activates the right procedures,
> > > > > > > > > > > maybe try it with the working kernel first.
> > > > > > > > > >
> > > > > > > > > > I tried with the working kernel 6.12.43+deb13-rpi but these were the
> > > > > > > > > > earliest lines:
> > > > > > > > > >
> > > > > > > > > > [ 4.116565] printk: legacy console [ttyS1] enabled
> > > > > > > > > > [ 4.129635] printk: legacy bootconsole [earlycon0] disabled
> > > > > > > > > > [ 4.147050] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
> > > > > > > > > > [ 4.160972] mousedev: PS/2 mouse device common for all mice
> > > > > > > > > > [ 4.172622] i2c-bcm2835 20805000.i2c: Could not read clock-frequency property
> > > > > > > > > > [ 4.186585] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
> > > > > > > > > >
> > > > > > > > > > I tried with 6.12.57+deb13-rpi but that failed to boot and the
> > > > > > > > > > earlyprintk line did not give any additional logs.
> > > > > > > > >
> > > > > > > > > Can you please provide a full kernel log of the working kernel?
> > > > > > > >
> > > > > > > > dmesg log is attached.
> > > > > > > >
> > > > > > > > > Also please provide the output of:
> > > > > > > > >
> > > > > > > > > for f in /proc/tty/driver/*; do echo $f; sed 's/^/ /' < $f; done
> > > > > > > >
> > > > > > > > /proc/tty/driver/serial
> > > > > > > > serinfo:1.0 driver revision:
> > > > > > > > 0: uart:unknown port:00000000 irq:0
> > > > > > > > 1: uart:16550 mmio:0x20215040 irq:53 tx:15629 rx:0 RTS|CTS|DTR
> > > > > > > > 2: uart:unknown port:00000000 irq:0
> > > > > > > > 3: uart:unknown port:00000000 irq:0
> > > > > > > > /proc/tty/driver/ttyAMA
> > > > > > > > serinfo:1.0 driver revision:
> > > > > > > > 0: uart:PL011 rev2 mmio:0x20201000 irq:81 tx:452 rx:980 RTS|CTS|DTR
> > > > > > >
> > > > > > > OK, is
> > > > > > >
> > > > > > > earlyprintk=serial,0x20215040
> > > > > > >
> > > > > > > more communicative then?
> > > > > >
> > > > > > Nope, but I found
> > > > > > https://www.raspberrypi.com/documentation/computers/configuration.html#enabling-early-console-for-linux
> > > > > > and setting earlycon=uart8250,mmio32,0x20215040 worked. The kernel
> > > > > > 6.12.43+deb13-rpi booted with printing the early lines as well (see
> > > > > > dmesg of previous mail).
> > > > > >
> > > > > > With all other experiments cleaned, I tried the latest kernel:
> > > > > >
> > > > > > ```
> > > > > > $ cat /etc/default/raspi-extra-cmdline
> > > > > > earlycon=uart8250,mmio32,0x20215040
> > > > > > $ update-initramfs -u
> > > > > > ```
> > > > > >
> > > > > > I got following logs before it got stuck:
> > > > > >
> > > > > > ```
> > > > > > [ 0.000000] Booting Linux on physical CPU 0x0
> > > > > > [ 0.000000] Linux version 6.12.57+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.57-1 (2025-11-05)
> > > > > > [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
> > > > > > [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
> > > > > > [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1
> > > > > > [ 0.000000] random: crng init done
> > > > > > [ 0.000000] earlycon: uart8250 at MMIO32 0x20215040 (options '')
> > > > > > [ 0.000000] printk: legacy bootconsole [uart8250] enabled
> > > > > > [ 0.000000] Memory policy: Data cache writeback
> > > > > > [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> > > > > > [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> > > > > > [ 0.000000] cma: Reserved 64 MiB at 0x17000000 on node -1
> > > > > > ```
> > > > > >
> > > > > > It looks like being cma related and I found a cma boot option in
> > > > > > /etc/default/raspi-firmware. So I modified /boot/firmware/cmdline.txt
> > > > > > and changed cma=64M to cma=0. Then the system booted without problems:
> > > > > >
> > > > > > ```
> > > > > > [...]
> > > > > > [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
> > > > > > [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
> > > > > > [ 0.000000] Zone ranges:
> > > > > > [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> > > > > > [ 0.000000] Movable zone start for each node
> > > > > > [ 0.000000] Early memory node ranges
> > > > > > [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> > > > > > [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> > > > > > [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=0 rootwait earlycon=uart8250,mmio32,0x20215040
> > > > > > [...]
> > > > > > ```
> > > > > >
> > > > > > Then I persisted this change by setting CMA=0 in
> > > > > > /etc/default/raspi-firmware:
> > > > > >
> > > > > > ```
> > > > > > $ grep -Ev '^(#|$)' /etc/default/raspi-firmware
> > > > > > CMA=0
> > > > > > $ update-initramfs -u
> > > > > > ```
> > > > > >
> > > > > > This config removes the cma cmdline option completely. The system still
> > > > > > boots:
> > > > > >
> > > > > > ```
> > > > > > [...]
> > > > > > [ 0.000000] Memory policy: Data cache writeback
> > > > > > [ 0.000000] Reserved memory: created CMA memory pool at 0x17000000, size 64 MiB
> > > > > > [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
> > > > > > [ 0.000000] OF: reserved mem: 0x17000000..0x1affffff (65536 KiB) map reusable linux,cma
> > > > > > [ 0.000000] Zone ranges:
> > > > > > [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
> > > > > > [ 0.000000] Movable zone start for each node
> > > > > > [ 0.000000] Early memory node ranges
> > > > > > [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
> > > > > > [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
> > > > > > [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 rootwait earlycon=uart8250,mmio32,0x20215040
> > > > > > [...]
> > > > > > ```
> > > > > >
> > > > > > That should hopefully narrow down the issue space.
> > > > >
> > > > > If I'm not wrong the only cma related change between 6.12.43 and
> > > > > 6.12.48 was the backport of 2c223f7239f3 ("of: reserved_mem:
> > > > > Restructure call site for dma_contiguous_early_fixup()"):
> > > > >
> > > > > commit 46efab01648a04082266115a8e917c3b26b97fa8
> > > > > Author: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
> > > > > Date: Wed Aug 6 10:24:21 2025 -0700
> > > > >
> > > > > of: reserved_mem: Restructure call site for dma_contiguous_early_fixup()
> > > > >
> > > > > [ Upstream commit 2c223f7239f376a90d71903ec474ba887cf21d94 ]
> > > > >
> > > > > Restructure the call site for dma_contiguous_early_fixup() to
> > > > > where the reserved_mem nodes are being parsed from the DT so that
> > > > > dma_mmu_remap[] is populated before dma_contiguous_remap() is called.
> > > > >
> > > > > Fixes: 8a6e02d0c00e ("of: reserved_mem: Restructure how the reserved memory regions are processed")
> > > > > Signed-off-by: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
> > > > > Tested-by: William Zhang <william.zhang@broadcom.com>
> > > > > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> > > > > Link: https://lore.kernel.org/r/20250806172421.2748302-1-oreoluwa.babatunde@oss.qualcomm.com
> > > > > Signed-off-by: Sasha Levin <sashal@kernel.org>
> > > > >
> > > > > Uwe, would that make sense? Benjamin can you try to make a build with
> > > > > that commit reverted, does it fix the problem?
> > > >
> > > > Building the kernel on the Pi Zero would probably take ages. I have a
> > > > Raspberry Pi 5 running arm64. That should be able to build the kernel in
> > > > a armel schroot, shouldn't it? Is there documentation for building the
> > > > kernel?
> > >
> > > I hope it is fine for Uwe that i respond here, he might have another
> > > more efficient way to reach our goal.
> > >
> > > But we have the simple-patching guideline here:
> > > https://kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#id-1.6.6.4
> > >
> > > That should work within an armel schroot work well, e.g. on a
> > > porterbox amdahl.d.o i would first setup a schroot via:
> > >
> > > schroot -b -c chroot:trixie_armel-dchroot -n linux
> > > dd-schroot-cmd -c linux apt-get update
> > > dd-schroot-cmd -c linux apt-get dist-upgrade
> > > dd-schroot-cmd -c linux apt-get build-dep linux
> > > schroot -r -c linux
> > > (see https://dsa.debian.org/doc/schroot/)
> > >
> > > Then download the linux/6.12.57-1 source and make the revert patch
> > > available.
> > >
> > > apt-get source linux
> > > cd linux-*
> > > ./debian/bin/test-patches -f rpi ../0001-Revert-of-reserved_mem-Restructure-call-site-for-dma.patch
> >
> > In case you can/want trust unsigned packages (but I have put a
> > sha256sum along signed with my key in the DD keyring), you can test
> > the patch revert via the packages on:
> > https://people.debian.org/~carnil/tmp/linux/1116251/
>
> Thanks for providing the kernel. I downloaded linux-image-
> 6.12+unreleased-rpi_6.12.57-1a~test_armel.deb and installed it. This
> kernel hangs on boot (see attached boot.log). It hangs there
> reproducible.
The "Linux version 4.14.98+" in the log puzzled me and
/etc/kernel/postinst.d/z50-raspi-firmware did not copy kernel
6.12.57-1a~test to /boot/firmware.
I found the old kernel.img and kernel7.img that I deleted. I copied the
6.12.57-1a~test kernel manually:
```
update-initramfs -u -k 6.12+unreleased-rpi
cd /boot/firmware/
cp ../vmlinuz-6.12+unreleased-rpi .
cp ../initrd.img-6.12+unreleased-rpi .
vim config.txt
reboot
```
Then the Pi booted the correct kernel (6.12+unreleased-rpi) successfully
with following cmdline configurations:
* no cma set
* cma=0
* cma=64M
--
Benjamin Drung
Debian & Ubuntu Developer
[toc] | [prev] | [next] | [standalone]
| From | "Debian Bug Tracking System" <owner@bugs.debian.org> |
|---|---|
| Date | 2025-11-26 09:00 +0100 |
| Subject | Processed: Re: Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot |
| Message-ID | <LViBs-fPG0-11@gated-at.bofh.it> |
| In reply to | #89399 |
Processing control commands: > tags -1 + moreinfo Bug #1116251 [src:linux] linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Added tag(s) moreinfo. -- 1116251: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1116251 Debian Bug Tracking System Contact owner@bugs.debian.org with problems
[toc] | [prev] | [next] | [standalone]
| From | Marek Szyprowski <m.szyprowski@samsung.com> |
|---|---|
| Date | 2025-12-18 12:50 +0100 |
| Message-ID | <M3kG5-3OIj-1@gated-at.bofh.it> |
| In reply to | #89399 |
On 18.12.2025 09:29, Uwe Kleine-König wrote:
> Control: forwarded -1 https://lore.kernel.org/linux-iommu/hnwgn7glub4klmkzabzcm76eldaa3xm5ua72eldwzesblveo2a@4xq2bxhmbsyq
> Hello,
>
> I extended the audience to people involved in the creation of
> 2c223f7239f376a90d71903ec474ba887cf21d94.
>
> On Wed, Dec 17, 2025 at 11:07:00PM +0100, Benjamin Drung wrote:
>> On Wed, 2025-12-17 at 22:20 +0100, Benjamin Drung wrote:
>>> On Sun, 2025-11-30 at 10:27 +0100, Salvatore Bonaccorso wrote:
>>>> On Sat, Nov 29, 2025 at 12:02:00AM +0100, Salvatore Bonaccorso wrote:
>>>>> On Fri, Nov 28, 2025 at 10:53:17PM +0100, Benjamin Drung wrote:
>>>>>> On Wed, 2025-11-26 at 08:52 +0100, Salvatore Bonaccorso wrote:
>>>>>>> On Sat, Nov 22, 2025 at 04:27:53PM +0100, Benjamin Drung wrote:
>>>>>>>> On Fri, 2025-11-21 at 09:52 +0100, Uwe Kleine-König wrote:
>>>>>>>>> On Thu, Nov 20, 2025 at 11:11:07AM +0100, Benjamin Drung wrote:
>>>>>>>>>> On Thu, 2025-11-20 at 08:58 +0100, Uwe Kleine-König wrote:
>>>>>>>>>>> On Mon, Nov 17, 2025 at 02:05:41AM +0100, Benjamin Drung wrote:
>>>>>>>>>>>> On Wed, 2025-11-05 at 20:14 +0100, Uwe Kleine-König wrote:
>>>>>>>>>>>>> Can you try adding
>>>>>>>>>>>>>
>>>>>>>>>>>>> earlyprintk=serial,0x7e215040
>>>>>>>>>>>>>
>>>>>>>>>>>>> to the kernel commandline. Not sure this activates the right procedures,
>>>>>>>>>>>>> maybe try it with the working kernel first.
>>>>>>>>>>>> I tried with the working kernel 6.12.43+deb13-rpi but these were the
>>>>>>>>>>>> earliest lines:
>>>>>>>>>>>>
>>>>>>>>>>>> [ 4.116565] printk: legacy console [ttyS1] enabled
>>>>>>>>>>>> [ 4.129635] printk: legacy bootconsole [earlycon0] disabled
>>>>>>>>>>>> [ 4.147050] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
>>>>>>>>>>>> [ 4.160972] mousedev: PS/2 mouse device common for all mice
>>>>>>>>>>>> [ 4.172622] i2c-bcm2835 20805000.i2c: Could not read clock-frequency property
>>>>>>>>>>>> [ 4.186585] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
>>>>>>>>>>>>
>>>>>>>>>>>> I tried with 6.12.57+deb13-rpi but that failed to boot and the
>>>>>>>>>>>> earlyprintk line did not give any additional logs.
>>>>>>>>>>> Can you please provide a full kernel log of the working kernel?
>>>>>>>>>> dmesg log is attached.
>>>>>>>>>>
>>>>>>>>>>> Also please provide the output of:
>>>>>>>>>>>
>>>>>>>>>>> for f in /proc/tty/driver/*; do echo $f; sed 's/^/ /' < $f; done
>>>>>>>>>> /proc/tty/driver/serial
>>>>>>>>>> serinfo:1.0 driver revision:
>>>>>>>>>> 0: uart:unknown port:00000000 irq:0
>>>>>>>>>> 1: uart:16550 mmio:0x20215040 irq:53 tx:15629 rx:0 RTS|CTS|DTR
>>>>>>>>>> 2: uart:unknown port:00000000 irq:0
>>>>>>>>>> 3: uart:unknown port:00000000 irq:0
>>>>>>>>>> /proc/tty/driver/ttyAMA
>>>>>>>>>> serinfo:1.0 driver revision:
>>>>>>>>>> 0: uart:PL011 rev2 mmio:0x20201000 irq:81 tx:452 rx:980 RTS|CTS|DTR
>>>>>>>>> OK, is
>>>>>>>>>
>>>>>>>>> earlyprintk=serial,0x20215040
>>>>>>>>>
>>>>>>>>> more communicative then?
>>>>>>>> Nope, but I found
>>>>>>>> https://www.raspberrypi.com/documentation/computers/configuration.html#enabling-early-console-for-linux
>>>>>>>> and setting earlycon=uart8250,mmio32,0x20215040 worked. The kernel
>>>>>>>> 6.12.43+deb13-rpi booted with printing the early lines as well (see
>>>>>>>> dmesg of previous mail).
>>>>>>>>
>>>>>>>> With all other experiments cleaned, I tried the latest kernel:
>>>>>>>>
>>>>>>>> ```
>>>>>>>> $ cat /etc/default/raspi-extra-cmdline
>>>>>>>> earlycon=uart8250,mmio32,0x20215040
>>>>>>>> $ update-initramfs -u
>>>>>>>> ```
>>>>>>>>
>>>>>>>> I got following logs before it got stuck:
>>>>>>>>
>>>>>>>> ```
>>>>>>>> [ 0.000000] Booting Linux on physical CPU 0x0
>>>>>>>> [ 0.000000] Linux version 6.12.57+deb13-rpi (debian-kernel@lists.debian.org) (arm-linux-gnueabi-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 Debian 6.12.57-1 (2025-11-05)
>>>>>>>> [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
>>>>>>>> [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
>>>>>>>> [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1
>>>>>>>> [ 0.000000] random: crng init done
>>>>>>>> [ 0.000000] earlycon: uart8250 at MMIO32 0x20215040 (options '')
>>>>>>>> [ 0.000000] printk: legacy bootconsole [uart8250] enabled
>>>>>>>> [ 0.000000] Memory policy: Data cache writeback
>>>>>>>> [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
>>>>>>>> [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
>>>>>>>> [ 0.000000] cma: Reserved 64 MiB at 0x17000000 on node -1
>>>>>>>> ```
>>>>>>>>
>>>>>>>> It looks like being cma related and I found a cma boot option in
>>>>>>>> /etc/default/raspi-firmware. So I modified /boot/firmware/cmdline.txt
>>>>>>>> and changed cma=64M to cma=0. Then the system booted without problems:
>>>>>>>>
>>>>>>>> ```
>>>>>>>> [...]
>>>>>>>> [ 0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
>>>>>>>> [ 0.000000] OF: reserved mem: node linux,cma compatible matching fail
>>>>>>>> [ 0.000000] Zone ranges:
>>>>>>>> [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
>>>>>>>> [ 0.000000] Movable zone start for each node
>>>>>>>> [ 0.000000] Early memory node ranges
>>>>>>>> [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
>>>>>>>> [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
>>>>>>>> [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 cma=0 rootwait earlycon=uart8250,mmio32,0x20215040
>>>>>>>> [...]
>>>>>>>> ```
>>>>>>>>
>>>>>>>> Then I persisted this change by setting CMA=0 in
>>>>>>>> /etc/default/raspi-firmware:
>>>>>>>>
>>>>>>>> ```
>>>>>>>> $ grep -Ev '^(#|$)' /etc/default/raspi-firmware
>>>>>>>> CMA=0
>>>>>>>> $ update-initramfs -u
>>>>>>>> ```
>>>>>>>>
>>>>>>>> This config removes the cma cmdline option completely. The system still
>>>>>>>> boots:
>>>>>>>>
>>>>>>>> ```
>>>>>>>> [...]
>>>>>>>> [ 0.000000] Memory policy: Data cache writeback
>>>>>>>> [ 0.000000] Reserved memory: created CMA memory pool at 0x17000000, size 64 MiB
>>>>>>>> [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
>>>>>>>> [ 0.000000] OF: reserved mem: 0x17000000..0x1affffff (65536 KiB) map reusable linux,cma
>>>>>>>> [ 0.000000] Zone ranges:
>>>>>>>> [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff]
>>>>>>>> [ 0.000000] Movable zone start for each node
>>>>>>>> [ 0.000000] Early memory node ranges
>>>>>>>> [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff]
>>>>>>>> [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff]
>>>>>>>> [ 0.000000] Kernel command line: dma.dmachans=0x7ff5 bcm2708.boardrev=0x9000c1 bcm2708.serial=0x8bb1238 bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 smsc95xx.macaddr=B8:27:EB:BB:12:38 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=tty0 console=ttyS1,115200 root=/dev/mmcblk0p2 rw fsck.repair=yes net.ifnames=0 rootwait earlycon=uart8250,mmio32,0x20215040
>>>>>>>> [...]
>>>>>>>> ```
>>>>>>>>
>>>>>>>> That should hopefully narrow down the issue space.
>>>>>>> If I'm not wrong the only cma related change between 6.12.43 and
>>>>>>> 6.12.48 was the backport of 2c223f7239f3 ("of: reserved_mem:
>>>>>>> Restructure call site for dma_contiguous_early_fixup()"):
>>>>>>>
>>>>>>> commit 46efab01648a04082266115a8e917c3b26b97fa8
>>>>>>> Author: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
>>>>>>> Date: Wed Aug 6 10:24:21 2025 -0700
>>>>>>>
>>>>>>> of: reserved_mem: Restructure call site for dma_contiguous_early_fixup()
>>>>>>>
>>>>>>> [ Upstream commit 2c223f7239f376a90d71903ec474ba887cf21d94 ]
>>>>>>>
>>>>>>> Restructure the call site for dma_contiguous_early_fixup() to
>>>>>>> where the reserved_mem nodes are being parsed from the DT so that
>>>>>>> dma_mmu_remap[] is populated before dma_contiguous_remap() is called.
>>>>>>>
>>>>>>> Fixes: 8a6e02d0c00e ("of: reserved_mem: Restructure how the reserved memory regions are processed")
>>>>>>> Signed-off-by: Oreoluwa Babatunde <oreoluwa.babatunde@oss.qualcomm.com>
>>>>>>> Tested-by: William Zhang <william.zhang@broadcom.com>
>>>>>>> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
>>>>>>> Link: https://lore.kernel.org/r/20250806172421.2748302-1-oreoluwa.babatunde@oss.qualcomm.com
>>>>>>> Signed-off-by: Sasha Levin <sashal@kernel.org>
>>>>>>>
>>>>>>> Uwe, would that make sense? Benjamin can you try to make a build with
>>>>>>> that commit reverted, does it fix the problem?
>>>>>> Building the kernel on the Pi Zero would probably take ages. I have a
>>>>>> Raspberry Pi 5 running arm64. That should be able to build the kernel in
>>>>>> a armel schroot, shouldn't it? Is there documentation for building the
>>>>>> kernel?
>>>>> I hope it is fine for Uwe that i respond here, he might have another
>>>>> more efficient way to reach our goal.
>>>>>
>>>>> But we have the simple-patching guideline here:
>>>>> https://protect2.fireeye.com/v1/url?k=6d29844b-0ca29171-6d280f04-74fe4860008a-0bd2c61b0efaf6bb&q=1&e=9d70d889-a8df-4ca7-962f-11b3a6da1b85&u=https%3A%2F%2Fkernel-team.pages.debian.net%2Fkernel-handbook%2Fch-common-tasks.html%23id-1.6.6.4
>>>>>
>>>>> That should work within an armel schroot work well, e.g. on a
>>>>> porterbox amdahl.d.o i would first setup a schroot via:
>>>>>
>>>>> schroot -b -c chroot:trixie_armel-dchroot -n linux
>>>>> dd-schroot-cmd -c linux apt-get update
>>>>> dd-schroot-cmd -c linux apt-get dist-upgrade
>>>>> dd-schroot-cmd -c linux apt-get build-dep linux
>>>>> schroot -r -c linux
>>>>> (see https://dsa.debian.org/doc/schroot/)
>>>>>
>>>>> Then download the linux/6.12.57-1 source and make the revert patch
>>>>> available.
>>>>>
>>>>> apt-get source linux
>>>>> cd linux-*
>>>>> ./debian/bin/test-patches -f rpi ../0001-Revert-of-reserved_mem-Restructure-call-site-for-dma.patch
>>>> In case you can/want trust unsigned packages (but I have put a
>>>> sha256sum along signed with my key in the DD keyring), you can test
>>>> the patch revert via the packages on:
>>>> https://people.debian.org/~carnil/tmp/linux/1116251/
>>> Thanks for providing the kernel. I downloaded linux-image-
>>> 6.12+unreleased-rpi_6.12.57-1a~test_armel.deb and installed it. This
>>> kernel hangs on boot (see attached boot.log). It hangs there
>>> reproducible.
>> The "Linux version 4.14.98+" in the log puzzled me and
>> /etc/kernel/postinst.d/z50-raspi-firmware did not copy kernel
>> 6.12.57-1a~test to /boot/firmware.
>>
>> I found the old kernel.img and kernel7.img that I deleted. I copied the
>> 6.12.57-1a~test kernel manually:
>>
>> ```
>> update-initramfs -u -k 6.12+unreleased-rpi
>> cd /boot/firmware/
>> cp ../vmlinuz-6.12+unreleased-rpi .
>> cp ../initrd.img-6.12+unreleased-rpi .
>> vim config.txt
>> reboot
>> ```
>>
>> Then the Pi booted the correct kernel (6.12+unreleased-rpi) successfully
>> with following cmdline configurations:
>>
>> * no cma set
>> * cma=0
>> * cma=64M
> If I understood right that means that
> 46efab01648a04082266115a8e917c3b26b97fa8 aka
> 2c223f7239f376a90d71903ec474ba887cf21d94 broke booting on the Raspberry
> Pi Zero W when CMA is used.
>
> #regzbot introduced: 2c223f7239f376a90d71903ec474ba887cf21d94
>
> Does this ring a bell for someone, or do you have some debugging
> instructions? Complete context is available at
> https://bugs.debian.org/1116251.
There is a fix posted for this case, but it needs a bit more discussion:
https://lore.kernel.org/all/20251210002027.1171519-1-oreoluwa.babatunde@oss.qualcomm.com/
Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland
[toc] | [prev] | [next] | [standalone]
| From | "Debian Bug Tracking System" <owner@bugs.debian.org> |
|---|---|
| Date | 2025-12-18 13:40 +0100 |
| Subject | Processed: Re: Bug#1116251: linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot |
| Message-ID | <M3lst-3Pol-11@gated-at.bofh.it> |
| In reply to | #89399 |
Processing control commands: > forwarded -1 https://lore.kernel.org/linux-iommu/hnwgn7glub4klmkzabzcm76eldaa3xm5ua72eldwzesblveo2a@4xq2bxhmbsyq Bug #1116251 [src:linux] linux-image-6.12.48+deb13-rpi: Raspberry Pi Zero W does not boot Set Bug forwarded-to-address to 'https://lore.kernel.org/linux-iommu/hnwgn7glub4klmkzabzcm76eldaa3xm5ua72eldwzesblveo2a@4xq2bxhmbsyq'. -- 1116251: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1116251 Debian Bug Tracking System Contact owner@bugs.debian.org with problems
[toc] | [prev] | [standalone]
Back to top | Article view | linux.debian.kernel
csiph-web