raspberrypi / linux

Kernel source tree for Raspberry Pi-provided kernel builds. Issues unrelated to the linux kernel should be posted on the community forum at https://forums.raspberrypi.com/
Other
11.18k stars 5.02k forks source link

preempt_rt patched ARM64 kernel will not start on raspberry pi zero w2 or raspberry pi 3b ( BCM2837) #5809

Closed berndbenner closed 10 months ago

berndbenner commented 11 months ago

Describe the bug

I am building custom preempt_rt patched ARM64-kernels for raspberry pi4, cm4 over 2 years and now for raspberry pi 5 with success.

I have tried to build a ARM64-kernel for raspberry pi zero w2 and raspberry pi 3b, but the kernel will hang on start.

Here is the example configuration:

The only difference between the kernels are the initial config generation:

make bcm2711_defconfig  # for rpi4,cm4, rpi3b and zero-w2 
make bcm2712_defconfig  # for rpi5 )

and the m-tune compiler flags.

FLAGS+=CFLAGS="-mtune=cortex-a72 -mno-outline-atomics"   # rpi 4,cm4
FLAGS5+=CFLAGS="-mtune=cortex-a76 -mno-outline-atomics"  # rpi5
FLAGSZ+=CFLAGS="-mtune=cortex-a53 -mno-outline-atomics"  # rpi3b and rpiz-w2

The problem is only a preempt_rt problem on the BCM2837-CPU. A custom build kernel without the preempt_rt patch will start like the official kernel8.

config-6.1.63-preempt_rt-no-start.txt config-6.1.63-start.txt 20231224_005045

Steps to reproduce the behaviour

Device (s)

Raspberry Pi Zero 2 W, Raspberry Pi 3 Mod. B

System

generated on a raspberry pi zero w2 with custom kernel without preempt_rt patch

Raspberry Pi Zero 2 W Rev 1.0 PRETTY_NAME="Debian GNU/Linux 12 (bookworm)" NAME="Debian GNU/Linux" VERSION_ID="12" VERSION="12 (bookworm)"

Raspberry Pi reference 2023-05-03 Generated using pi-gen, https://github.com/RPi-Distro/pi-gen, 7c750947a959fb626a70c09fd17c65815df192ac, stage2

Linux raspz-w2-bb 6.1.63-zw2-bb-custom #1.1.0 SMP PREEMPT Sat Dec 23 22:41:41 CET 2023 aarch64 GNU/Linux Revision : 902120 Serial : 000000007678b203 Model : Raspberry Pi Zero 2 W Rev 1.0 Throttled flag : throttled=0x0 Camera : supported=0 detected=0, libcamera interfaces=0

Videocore information

Mar 17 2023 10:52:42 Copyright (c) 2012 Broadcom version 82f3750a65fadae9a38077e3c2e217ad158c8d54 (clean) (release) (start)

alloc failures: 0 compactions: 0 legacy block fails: 0

Filesystem information

Filesystem 1K-blocks Used Available Use% Mounted on /dev/root 28794788 7289612 20020788 27% / devtmpfs 179252 0 179252 0% /dev tmpfs 214164 0 214164 0% /dev/shm tmpfs 85668 2752 82916 4% /run tmpfs 5120 0 5120 0% /run/lock /dev/sda1 1046508 62524 983984 6% /boot/firmware /dev/sda3 31560656 11225696 18706240 38% /mnt/data tmpfs 42832 0 42832 0% /run/user/0

Filename Type Size Used Priority /var/swap file 102396 1296 -2

Package version information

raspberrypi-ui-mods: Installed: (none) raspberrypi-sys-mods: Installed: 20231208 openbox: Installed: (none) lxpanel: Installed: (none) pcmanfm: Installed: (none) rpd-plym-splash: Installed: (none)

Networking Information

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet x.x.x.x netmask x.x.x.x inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1000 (Local Loopback) RX packets 18 bytes 3237 (3.1 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 18 bytes 3237 (3.1 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet x.x.x.x netmask x.x.x.x broadcast x.x.x.x inet6 y.y.y.y.y.y.y.y prefixlen 128 scopeid 0x0 inet6 y.y.y.y.y.y.y.y prefixlen 64 scopeid 0x0 inet6 y::y.y.y.y prefixlen 64 scopeid 0x20 ether m.m.m.m txqueuelen 1000 (Ethernet) RX packets 15871 bytes 1570994 (1.4 MiB) RX errors 0 dropped 6599 overruns 0 frame 0 TX packets 1245 bytes 284014 (277.3 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

USB Information

/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc_otg/1p, 480M |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 480M

Display Information

Running Legacy framebuffer

Framebuffer: /dev/fb0

mode "1920x1080" geometry 1920 1080 1920 1080 32 timings 0 0 0 0 0 0 0 rgba 8/16,8/8,8/0,8/24 endmode

/usr/bin/raspinfo: line 103: tvservice: command not found

config.txt

aphy_params_current=819 arm_64bit=1 arm_freq=1000 arm_freq_min=600 audio_pwm_mode=514 camera_auto_detect=-1 config_hdmi_boost=5 core_freq=400 desired_osc_freq=0x331df0 disable_commandline_tags=2 disable_l2cache=1 disable_overscan=1 display_auto_detect=1 display_hdmi_rotate=-1 display_lcd_rotate=-1 dphy_params_current=547 dvfs=3 enable_tvout=1 enable_uart=1 force_eeprom_read=1 force_pwm_open=1 framebuffer_ignore_alpha=1 framebuffer_swap=1 gpu_freq=300 ignore_lcd=1 init_uart_clock=0x2dc6c00 max_framebuffers=-1 over_voltage_avs=6250 pause_burst_frames=1 program_serial_random=1 sdram_freq=450 total_mem=512 hdmi_force_cec_address:0=65535 hdmi_force_cec_address:1=65535 hdmi_pixel_freq_limit:0=0x9a7ec80 device_tree=- kernel=kernel8-bb-custom.img os_prefix=bookworm64.hl/ overlay_prefix=bookworm64.hl/overlays/ hdmi_cvt:0= hdmi_cvt:1= hdmi_edid_filename:0= hdmi_edid_filename:1= hdmi_timings:0= hdmi_timings:1=

cmdline.txt

coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.enable_headphones=0 bcm2708_fb.fbwidth=1920 bcm2708_fb.fbheight=1080 bcm2708_fb.fbswap=1 smsc95xx.macaddr=B8:27:EB:78:B2:03 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=ttyAMA0,115200 console=tty1 root=PARTUUID=a11eb507-02 rootfstype=ext4 fsck.repair=yes rootwait

pin configuration

0: ip -- | hi // ID_SDA/GPIO0 = input 1: ip -- | hi // ID_SCL/GPIO1 = input 2: a0 -- | hi // SDA1/GPIO2 = SDA1 3: a0 -- | hi // SCL1/GPIO3 = SCL1 4: ip -- | hi // GPIO_GCLK/GPIO4 = input 5: ip -- | hi // GPIO5 = input 6: ip -- | hi // GPIO6 = input 7: op -- -- | hi // SPI_CE1_N/GPIO7 = output 8: op -- -- | hi // SPI_CE0_N/GPIO8 = output 9: a0 -- | lo // SPI_MISO/GPIO9 = SPI0_MISO 10: a0 -- | lo // SPI_MOSI/GPIO10 = SPI0_MOSI 11: a0 -- | lo // SPI_SCLK/GPIO11 = SPI0_SCLK 12: ip -- | lo // GPIO12 = input 13: ip -- | lo // GPIO13 = input 14: a0 -- | hi // TXD1/GPIO14 = TXD0 15: a0 -- | hi // RXD1/GPIO15 = RXD0 16: ip -- | lo // GPIO16 = input 17: ip -- | lo // GPIO17 = input 18: a0 -- | lo // GPIO18 = PCM_CLK 19: a0 -- | lo // GPIO19 = PCM_FS 20: a0 -- | lo // GPIO20 = PCM_DIN 21: a0 -- | lo // GPIO21 = PCM_DOUT 22: ip -- | lo // GPIO22 = input 23: ip -- | lo // GPIO23 = input 24: ip -- | lo // GPIO24 = input 25: ip -- | lo // GPIO25 = input 26: ip -- | lo // GPIO26 = input 27: ip -- | lo // GPIO27 = input 28: ip -- | lo // HDMI_HPD_N/GPIO28 = input 29: op -- -- | lo // STATUS_LED_N/GPIO29 = output 30: ip -- | hi // CTS0/GPIO30 = input 31: ip -- | hi // RTS0/GPIO31 = input 32: ip -- | hi // TXD0/GPIO32 = input 33: ip -- | hi // RXD0/GPIO33 = input 34: a3 -- | lo // SD1_CLK/GPIO34 = SD1_CLK 35: a3 -- | hi // SD1_CMD/GPIO35 = SD1_CMD 36: a3 -- | hi // SD1_DATA0/GPIO36 = SD1_DAT0 37: a3 -- | hi // SD1_DATA1/GPIO37 = SD1_DAT1 38: a3 -- | hi // SD1_DATA2/GPIO38 = SD1_DAT2 39: a3 -- | hi // SD1_DATA3/GPIO39 = SD1_DAT3 40: op -- -- | lo // CAM_GPIO1/GPIO40 = output 41: op -- -- | hi // WL_ON/GPIO41 = output 42: op -- -- | lo // BT_ON/GPIO42 = output 43: a0 -- | lo // WIFI_CLK/GPIO43 = GPCLK2 44: ip -- | hi // SDA0/GPIO44 = input 45: ip -- | hi // SCL0/GPIO45 = input 46: ip -- | hi // SMPS_SCL/GPIO46 = input 47: op -- -- | hi // SMPS_SDA/GPIO47 = output 48: a0 -- | lo // SD_CLK_R/GPIO48 = SD0_CLK 49: a0 -- | hi // SD_CMD_R/GPIO49 = SD0_CMD 50: a0 -- | hi // SD_DATA0_R/GPIO50 = SD0_DAT0 51: a0 -- | hi // SD_DATA1_R/GPIO51 = SD0_DAT1 52: a0 -- | hi // SD_DATA2_R/GPIO52 = SD0_DAT2 53: a0 -- | hi // SD_DATA3_R/GPIO53 = SD0_DAT3

vcdbg log messages

004228.555: brfs: File read: /mfs/sd/config.txt 004229.880: brfs: File read: 2232 bytes 004301.813: brfs: File read: /mfs/sd/config.txt 004303.192: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined 004494.064: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not defined 004494.121: *** Restart logging 004494.149: brfs: File read: 2232 bytes 004508.072: gpioman: gpioman_get_pin_num: pin EMMC_ENABLE not defined 004517.380: HDMI0: hdmi_pixel_encoding: 162000000 005033.867: kernel=kernel8-bb-custom.img 005102.798: dtb_file 'bcm2710-rpi-zero-2-w.dtb' 005130.056: brfs: File read: /mfs/sd/bookworm64.hl/bcm2710-rpi-zero-2-w.dtb 005130.082: Loaded 'bookworm64.hl/bcm2710-rpi-zero-2-w.dtb' to 0x100 size 0x7f0c 005144.619: brfs: File read: 32524 bytes 005544.145: brfs: File read: /mfs/sd/bookworm64.hl/overlays/overlay_map.dtb 005640.072: brfs: File read: 4871 bytes 005717.380: brfs: File read: /mfs/sd/config.txt 005717.906: dtparam: i2c_arm=on 005726.850: dtparam: i2s=on 005734.651: dtparam: spi=on 005742.932: brfs: File read: 2232 bytes 005897.652: brfs: File read: /mfs/sd/bookworm64.hl/overlays/disable-bt.dtbo 005914.414: Loaded overlay 'disable-bt' 005954.107: brfs: File read: 1073 bytes 005992.791: brfs: File read: /mfs/sd/bookworm64.hl/cmdline.txt 005992.842: Read command line from file 'bookworm64.hl/cmdline.txt': 005992.861: 'console=serial0,115200 console=tty1 root=PARTUUID=a11eb507-02 rootfstype=ext4 fsck.repair=yes rootwait' 006134.822: brfs: File read: 103 bytes 009073.840: brfs: File read: /mfs/sd/bookworm64.hl/kernel8-bb-custom.img 009073.872: Loaded 'bookworm64.hl/kernel8-bb-custom.img' to 0x80000 size 0x857c4d 011344.910: Kernel relocated to 0x200000 011344.928: Device tree loaded to 0x1bfe7d00 (size 0x82cc) 014552.822: vchiq_core: vchiq_init_state: slot_zero = 0xd8080000, is_master = 1 014557.656: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_display_state instead 014563.690: TV service:host side not connected, dropping notification 0x00000002, 0x00000002, 0x00000052

dmesg log

[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] [ 0.000000] Linux version 6.1.63-zw2-bb-custom (root@raspi-5-000) (gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1.1.0 SMP PREEMPT Sat Dec 23 22:41:41 CET 2023 [ 0.000000] random: crng init done [ 0.000000] Machine model: Raspberry Pi Zero 2 W Rev 1.0 [ 0.000000] efi: UEFI not found. [ 0.000000] Reserved memory: created CMA memory pool at 0x0000000017c00000, size 64 MiB [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool [ 0.000000] Zone ranges: [ 0.000000] DMA [mem 0x0000000000000000-0x000000001bffffff] [ 0.000000] DMA32 empty [ 0.000000] Normal empty [ 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] On node 0, zone DMA: 16384 pages in unavailable ranges [ 0.000000] percpu: Embedded 28 pages/cpu s74344 r8192 d32152 u114688 [ 0.000000] pcpu-alloc: s74344 r8192 d32152 u114688 alloc=28*4096 [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [ 0.000000] Detected VIPT I-cache on CPU0 [ 0.000000] CPU features: kernel page table isolation forced ON by KASLR [ 0.000000] CPU features: detected: Kernel page table isolation (KPTI) [ 0.000000] CPU features: detected: ARM erratum 843419 [ 0.000000] CPU features: detected: ARM erratum 845719 [ 0.000000] alternatives: applying boot alternatives [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 112896 [ 0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.enable_headphones=0 bcm2708_fb.fbwidth=1920 bcm2708_fb.fbheight=1080 bcm2708_fb.fbswap=1 smsc95xx.macaddr=m.m.m.m vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000 console=ttyAMA0,115200 console=tty1 root=PARTUUID=a11eb507-02 rootfstype=ext4 fsck.repair=yes rootwait [ 0.000000] Dentry cache hash table entries: 65536 (order: 7, 524288 bytes, linear) [ 0.000000] Inode-cache hash table entries: 32768 (order: 6, 262144 bytes, linear) [ 0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off [ 0.000000] Memory: 358508K/458752K available (12352K kernel code, 2172K rwdata, 4064K rodata, 4288K init, 1082K bss, 34708K reserved, 65536K cma-reserved) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 [ 0.000000] ftrace: allocating 40013 entries in 157 pages [ 0.000000] ftrace: allocated 157 pages with 5 groups [ 0.000000] trace event string verifier disabled [ 0.000000] rcu: Preemptible hierarchical RCU implementation. [ 0.000000] rcu: RCU event tracing is enabled. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4. [ 0.000000] Trampoline variant of Tasks RCU enabled. [ 0.000000] Rude variant of Tasks RCU enabled. [ 0.000000] Tracing variant of Tasks RCU enabled. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies. [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4 [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 [ 0.000000] Root IRQ handler: bcm2836_arm_irqchip_handle_irq [ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention. [ 0.000000] arch_timer: cp15 timer(s) running at 19.20MHz (phys). [ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x46d987e47, max_idle_ns: 440795202767 ns [ 0.000001] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 4398046511078ns [ 0.000381] Console: colour dummy device 80x25 [ 0.001262] printk: console [tty1] enabled [ 0.001351] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=76800) [ 0.001415] pid_max: default: 32768 minimum: 301 [ 0.001592] LSM: Security Framework initializing [ 0.001870] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes, linear) [ 0.001926] Mountpoint-cache hash table entries: 1024 (order: 1, 8192 bytes, linear) [ 0.003675] cgroup: Disabling memory control group subsystem [ 0.006575] cblist_init_generic: Setting adjustable number of callback queues. [ 0.006624] cblist_init_generic: Setting shift to 2 and lim to 1. [ 0.006876] cblist_init_generic: Setting adjustable number of callback queues. [ 0.006918] cblist_init_generic: Setting shift to 2 and lim to 1. [ 0.007163] cblist_init_generic: Setting adjustable number of callback queues. [ 0.007204] cblist_init_generic: Setting shift to 2 and lim to 1. [ 0.007782] rcu: Hierarchical SRCU implementation. [ 0.007818] rcu: Max phase no-delay instances is 1000. [ 0.010284] EFI services will not be available. [ 0.010955] smp: Bringing up secondary CPUs ... [ 0.012387] Detected VIPT I-cache on CPU1 [ 0.012558] CPU1: Booted secondary processor 0x0000000001 [0x410fd034] [ 0.014025] Detected VIPT I-cache on CPU2 [ 0.014152] CPU2: Booted secondary processor 0x0000000002 [0x410fd034] [ 0.015594] Detected VIPT I-cache on CPU3 [ 0.015717] CPU3: Booted secondary processor 0x0000000003 [0x410fd034] [ 0.015893] smp: Brought up 1 node, 4 CPUs [ 0.016089] SMP: Total of 4 processors activated. [ 0.016123] CPU features: detected: 32-bit EL0 Support [ 0.016154] CPU features: detected: 32-bit EL1 Support [ 0.016187] CPU features: detected: CRC32 instructions [ 0.016366] CPU: All CPU(s) started at EL2 [ 0.016413] alternatives: applying system-wide alternatives [ 0.018745] devtmpfs: initialized [ 0.036968] Enabled cp15_barrier support [ 0.037046] Enabled setend support [ 0.037345] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns [ 0.037416] futex hash table entries: 1024 (order: 4, 65536 bytes, linear) [ 0.040796] pinctrl core: initialized pinctrl subsystem [ 0.041932] DMI not present or invalid. [ 0.042822] NET: Registered PF_NETLINK/PF_ROUTE protocol family [ 0.052055] DMA: preallocated 1024 KiB GFP_KERNEL pool for atomic allocations [ 0.052518] DMA: preallocated 1024 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations [ 0.053875] DMA: preallocated 1024 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations [ 0.054039] audit: initializing netlink subsys (disabled) [ 0.054428] audit: type=2000 audit(0.052:1): state=initialized audit_enabled=0 res=1 [ 0.055357] thermal_sys: Registered thermal governor 'step_wise' [ 0.055481] cpuidle: using governor menu [ 0.055835] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers. [ 0.056103] ASID allocator initialised with 32768 entries [ 0.057151] Serial: AMBA PL011 UART driver [ 0.069247] bcm2835-mbox 3f00b880.mailbox: mailbox enabled [ 0.084422] raspberrypi-firmware soc:firmware: Attached to firmware from 2023-03-17T10:52:42, variant start [ 0.088435] raspberrypi-firmware soc:firmware: Firmware hash is 82f3750a65fadae9a38077e3c2e217ad158c8d54 [ 0.099050] KASLR enabled [ 0.137239] bcm2835-dma 3f007000.dma: DMA legacy API manager, dmachans=0x1 [ 0.141978] iommu: Default domain type: Translated [ 0.142026] iommu: DMA domain TLB invalidation policy: strict mode [ 0.142646] SCSI subsystem initialized [ 0.142971] usbcore: registered new interface driver usbfs [ 0.143068] usbcore: registered new interface driver hub [ 0.143181] usbcore: registered new device driver usb [ 0.143656] usb_phy_generic phy: supply vcc not found, using dummy regulator [ 0.144284] pps_core: LinuxPPS API ver. 1 registered [ 0.144321] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti giometti@linux.it [ 0.144394] PTP clock support registered [ 0.146012] vgaarb: loaded [ 0.146807] clocksource: Switched to clocksource arch_sys_counter [ 0.147733] VFS: Disk quotas dquot_6.6.0 [ 0.147852] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes) [ 0.148126] FS-Cache: Loaded [ 0.148370] CacheFiles: Loaded [ 0.159750] NET: Registered PF_INET protocol family [ 0.160456] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear) [ 0.162263] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear) [ 0.162332] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear) [ 0.162395] TCP established hash table entries: 4096 (order: 3, 32768 bytes, linear) [ 0.162497] TCP bind hash table entries: 4096 (order: 5, 131072 bytes, linear) [ 0.162716] TCP: Hash tables configured (established 4096 bind 4096) [ 0.163114] MPTCP token hash table entries: 512 (order: 1, 12288 bytes, linear) [ 0.163232] UDP hash table entries: 256 (order: 1, 8192 bytes, linear) [ 0.163307] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear) [ 0.163582] NET: Registered PF_UNIX/PF_LOCAL protocol family [ 0.164451] RPC: Registered named UNIX socket transport module. [ 0.164492] RPC: Registered udp transport module. [ 0.164523] RPC: Registered tcp transport module. [ 0.164553] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 0.164603] PCI: CLS 0 bytes, default 64 [ 0.166640] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available [ 0.167163] kvm [1]: IPA Size Limit: 40 bits [ 0.168947] kvm [1]: Hyp mode initialized successfully [ 1.836317] Initialise system trusted keyrings [ 1.836901] workingset: timestamp_bits=46 max_order=17 bucket_order=0 [ 1.846433] zbud: loaded [ 1.850082] NFS: Registering the id_resolver key type [ 1.850160] Key type id_resolver registered [ 1.850192] Key type id_legacy registered [ 1.850348] nfs4filelayout_init: NFSv4 File Layout Driver Registering... [ 1.850391] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering... [ 1.852117] Key type asymmetric registered [ 1.852160] Asymmetric key parser 'x509' registered [ 1.852294] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 247) [ 1.852680] io scheduler mq-deadline registered [ 1.852722] io scheduler kyber registered [ 1.863447] bcm2708_fb soc:fb: FB found 1 display(s) [ 1.924176] Console: switching to colour frame buffer device 240x67 [ 1.943639] bcm2708_fb soc:fb: Registered framebuffer for display 0, size 1920x1080 [ 1.951962] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled [ 1.955954] bcm2835-rng 3f104000.rng: hwrng registered [ 1.956924] vc-mem: phys_addr:0x00000000 mem_base=0x1ec00000 mem_size:0x20000000(512 MiB) [ 1.975611] brd: module loaded [ 1.986543] loop: module loaded [ 1.987679] Loading iSCSI transport class v2.0-870. [ 1.994591] usbcore: registered new interface driver r8152 [ 1.994885] usbcore: registered new interface driver lan78xx [ 1.995078] usbcore: registered new interface driver smsc95xx [ 1.995719] dwc_otg: version 3.00a 10-AUG-2012 (platform bus) [ 2.724228] Core Release: 2.80a [ 2.724324] Setting default values for core params [ 2.724449] Finished setting default values for core params [ 2.925021] Using Buffer DMA mode [ 2.925109] Periodic Transfer Interrupt Enhancement - disabled [ 2.925232] Multiprocessor Interrupt Enhancement - disabled [ 2.925349] OTG VER PARAM: 0, OTG VER FLAG: 0 [ 2.925457] Dedicated Tx FIFOs mode

[ 2.926092] WARN::dwc_otg_hcd_init:1072: FIQ DMA bounce buffers: virt = ffffffc008459000 dma = 0x00000000d8010000 len=9024 [ 2.926365] FIQ FSM acceleration enabled for : Non-periodic Split Transactions Periodic Split Transactions High-Speed Isochronous Endpoints Interrupt/Control Split Transaction hack enabled [ 2.926748] dwc_otg: Microframe scheduler enabled

[ 2.926843] WARN::hcd_init_fiq:496: MPHI regs_base at ffffffc008065000 [ 2.927095] dwc_otg 3f980000.usb: DWC OTG Controller [ 2.927233] dwc_otg 3f980000.usb: new USB bus registered, assigned bus number 1 [ 2.927425] dwc_otg 3f980000.usb: irq 74, io mem 0x00000000 [ 2.927589] Init: Port Power? op_state=1 [ 2.927679] Init: Power Port (0) [ 2.928244] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.01 [ 2.928415] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 2.928564] usb usb1: Product: DWC OTG Controller [ 2.928673] usb usb1: Manufacturer: Linux 6.1.63-zw2-bb-custom dwc_otg_hcd [ 2.933657] usb usb1: SerialNumber: 3f980000.usb [ 2.939596] hub 1-0:1.0: USB hub found [ 2.944681] hub 1-0:1.0: 1 port detected [ 2.950653] dwc_otg: FIQ enabled [ 2.950672] dwc_otg: NAK holdoff enabled [ 2.950687] dwc_otg: FIQ split-transaction FSM enabled [ 2.950719] Module dwc_common_port init [ 2.952208] usbcore: registered new interface driver uas [ 2.957530] usbcore: registered new interface driver usb-storage [ 2.963330] mousedev: PS/2 mouse device common for all mice [ 2.973796] sdhci: Secure Digital Host Controller Interface driver [ 2.978816] sdhci: Copyright(c) Pierre Ossman [ 2.984288] sdhci-pltfm: SDHCI platform and OF driver helper [ 2.991500] ledtrig-cpu: registered to indicate activity on CPUs [ 2.996836] hid: raw HID events driver (C) Jiri Kosina [ 3.001802] usbcore: registered new interface driver usbhid [ 3.006636] usbhid: USB HID core driver [ 3.011769] bcm2835_vchiq 3f00b840.mailbox: there is not valid maps for state default [ 3.025595] NET: Registered PF_PACKET protocol family [ 3.030916] Key type dns_resolver registered [ 3.037190] registered taskstats version 1 [ 3.042256] Loading compiled-in X.509 certificates [ 3.048394] Key type .fscrypt registered [ 3.053237] Key type fscrypt-provisioning registered [ 3.059086] Indeed it is in host mode hprt0 = 00021501 [ 3.102135] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer [ 3.107993] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver [ 3.116636] mmc-bcm2835 3f300000.mmcnr: mmc_debug:0 mmc_debug2:0 [ 3.121539] mmc-bcm2835 3f300000.mmcnr: DMA channel allocated [ 3.153013] sdhost: log_buf @ 000000001977b723 (c2f4a000) [ 3.208636] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1) [ 3.213992] uart-pl011 3f201000.serial: there is not valid maps for state default [ 3.219817] uart-pl011 3f201000.serial: cts_event_workaround enabled [ 3.229235] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 99, base_baud = 0) is a PL011 rev2 [ 3.258844] usb 1-1: new high-speed USB device number 2 using dwc_otg [ 3.261879] printk: console [ttyAMA0] enabled [ 3.280140] Indeed it is in host mode hprt0 = 00001101 [ 3.307071] of_cfs_init [ 3.694823] usb 1-1: New USB device found, idVendor=090c, idProduct=1000, bcdDevice=11.00 [ 3.702052] of_cfs_init: OK [ 3.706327] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 3.716419] mmc0: host does not support reading read-only switch, assuming write-enable [ 3.720449] usb 1-1: Product: Flash Drive FIT [ 3.737473] mmc0: new high speed SD card at address 67c2 [ 3.741371] usb 1-1: Manufacturer: Samsung [ 3.753296] mmcblk0: mmc0:67c2 SD512 473 MiB [ 3.756285] usb 1-1: SerialNumber: 0371622050001625 [ 3.767355] mmcblk0: p1 [ 3.782690] usb-storage 1-1:1.0: USB Mass Storage device detected [ 3.787937] mmcblk0: mmc0:67c2 SD512 473 MiB [ 3.793561] scsi host0: usb-storage 1-1:1.0 [ 4.457567] mmc1: new high speed SDIO card at address 0001 [ 4.683198] Waiting for root device PARTUUID=a11eb507-02... [ 6.221271] scsi 0:0:0:0: Direct-Access Samsung Flash Drive FIT 1100 PQ: 0 ANSI: 6 [ 6.236281] sd 0:0:0:0: [sda] 125313283 512-byte logical blocks: (64.2 GB/59.8 GiB) [ 6.249622] sd 0:0:0:0: [sda] Write Protect is off [ 6.259587] sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00 [ 6.259953] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA [ 6.280077] sda: sda1 sda2 sda3 [ 6.289639] sd 0:0:0:0: [sda] Attached SCSI removable disk [ 6.324394] EXT4-fs (sda2): mounted filesystem with ordered data mode. Quota mode: none. [ 6.338134] VFS: Mounted root (ext4 filesystem) readonly on device 8:2. [ 6.358289] devtmpfs: mounted [ 6.376450] Freeing unused kernel memory: 4288K [ 6.386618] Run /sbin/init as init process [ 6.395965] with arguments: [ 6.395981] /sbin/init [ 6.395998] with environment: [ 6.396012] HOME=/ [ 6.396028] TERM=linux [ 7.088141] systemd[1]: System time before build time, advancing clock. [ 7.371860] NET: Registered PF_INET6 protocol family [ 7.384489] Segment Routing with IPv6 [ 7.393532] In-situ OAM (IOAM) with IPv6 [ 7.512648] systemd[1]: systemd 252.19-1~deb12u1 running in system mode (+PAM +AUDIT +SELINUX +APPARMOR +IMA +SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSETUP +LIBFDISK +PCRE2 -PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=unified) [ 7.557205] systemd[1]: Detected architecture arm64. [ 7.616171] systemd[1]: Hostname set to . [ 7.953049] uart-pl011 3f201000.serial: no DMA platform data [ 8.682631] systemd[1]: Configuration file /lib/systemd/system/wifi-pwrsave-off.service is marked executable. Please remove executable permission bits. Proceeding anyway. [ 9.302706] systemd[1]: Queued start job for default target multi-user.target. [ 9.349042] systemd[1]: Created slice system-getty.slice - Slice /system/getty. [ 9.372915] systemd[1]: Created slice system-modprobe.slice - Slice /system/modprobe. [ 9.397062] systemd[1]: Created slice system-serial\x2dgetty.slice - Slice /system/serial-getty. [ 9.422218] systemd[1]: Created slice system-systemd\x2dfsck.slice - Slice /system/systemd-fsck. [ 9.446699] systemd[1]: Created slice user.slice - User and Session Slice. [ 9.468318] systemd[1]: Started systemd-ask-password-console.path - Dispatch Password Requests to Console Directory Watch. [ 9.494256] systemd[1]: Started systemd-ask-password-wall.path - Forward Password Requests to Wall Directory Watch. [ 9.521292] systemd[1]: Set up automount proc-sys-fs-binfmt_misc.automount - Arbitrary Executable File Formats File System Automount Point. [ 9.549458] systemd[1]: Reached target cryptsetup.target - Local Encrypted Volumes. [ 9.572285] systemd[1]: Reached target integritysetup.target - Local Integrity Protected Volumes. [ 9.596657] systemd[1]: Reached target paths.target - Path Units. [ 9.618154] systemd[1]: Reached target slices.target - Slice Units. [ 9.639806] systemd[1]: Reached target swap.target - Swaps. [ 9.660701] systemd[1]: Reached target veritysetup.target - Local Verity Protected Volumes. [ 9.697925] systemd[1]: Listening on syslog.socket - Syslog Socket. [ 9.721825] systemd[1]: Listening on systemd-fsckd.socket - fsck to fsckd communication Socket. [ 9.747281] systemd[1]: Listening on systemd-initctl.socket - initctl Compatibility Named Pipe. [ 9.775210] systemd[1]: Listening on systemd-journald-audit.socket - Journal Audit Socket. [ 9.801426] systemd[1]: Listening on systemd-journald-dev-log.socket - Journal Socket (/dev/log). [ 9.828788] systemd[1]: Listening on systemd-journald.socket - Journal Socket. [ 9.855890] systemd[1]: Listening on systemd-udevd-control.socket - udev Control Socket. [ 9.882234] systemd[1]: Listening on systemd-udevd-kernel.socket - udev Kernel Socket. [ 9.908853] systemd[1]: dev-hugepages.mount - Huge Pages File System was skipped because of an unmet condition check (ConditionPathExists=/sys/kernel/mm/hugepages). [ 9.963647] systemd[1]: Mounting dev-mqueue.mount - POSIX Message Queue File System... [ 9.998544] systemd[1]: Mounting sys-kernel-debug.mount - Kernel Debug File System... [ 10.033117] systemd[1]: Mounting sys-kernel-tracing.mount - Kernel Trace File System... [ 10.061107] systemd[1]: auth-rpcgss-module.service - Kernel Module supporting RPCSEC_GSS was skipped because of an unmet condition check (ConditionPathExists=/etc/krb5.keytab). [ 10.096358] systemd[1]: Starting fake-hwclock.service - Restore / save the current clock... [ 10.133773] systemd[1]: Starting keyboard-setup.service - Set the console keyboard layout... [ 10.171580] systemd[1]: Starting kmod-static-nodes.service - Create List of Static Device Nodes... [ 10.211833] systemd[1]: Starting modprobe@configfs.service - Load Kernel Module configfs... [ 10.254295] systemd[1]: Starting modprobe@dm_mod.service - Load Kernel Module dm_mod... [ 10.292587] systemd[1]: Starting modprobe@drm.service - Load Kernel Module drm... [ 10.331075] systemd[1]: Starting modprobe@efi_pstore.service - Load Kernel Module efi_pstore... [ 10.362739] device-mapper: ioctl: 4.47.0-ioctl (2022-07-28) initialised: dm-devel@redhat.com [ 10.373020] systemd[1]: Starting modprobe@fuse.service - Load Kernel Module fuse... [ 10.417164] systemd[1]: Starting modprobe@loop.service - Load Kernel Module loop... [ 10.453666] systemd[1]: Starting systemd-fsck-root.service - File System Check on Root Device... [ 10.501438] systemd[1]: Starting systemd-journald.service - Journal Service... [ 10.529401] fuse: init (API version 7.37) [ 10.573001] systemd[1]: Starting systemd-modules-load.service - Load Kernel Modules... [ 10.608961] systemd[1]: Starting systemd-udev-trigger.service - Coldplug All udev Devices... [ 10.656462] systemd[1]: Mounted dev-mqueue.mount - POSIX Message Queue File System. [ 10.684111] systemd[1]: Mounted sys-kernel-debug.mount - Kernel Debug File System. [ 10.712392] systemd[1]: Mounted sys-kernel-tracing.mount - Kernel Trace File System. [ 10.740885] systemd[1]: Finished fake-hwclock.service - Restore / save the current clock. [ 10.771140] systemd[1]: Finished kmod-static-nodes.service - Create List of Static Device Nodes. [ 10.801575] systemd[1]: modprobe@configfs.service: Deactivated successfully. [ 10.819076] systemd[1]: Finished modprobe@configfs.service - Load Kernel Module configfs. [ 10.849188] systemd[1]: modprobe@dm_mod.service: Deactivated successfully. [ 10.866731] systemd[1]: Finished modprobe@dm_mod.service - Load Kernel Module dm_mod. [ 10.896911] systemd[1]: modprobe@drm.service: Deactivated successfully. [ 10.913932] systemd[1]: Finished modprobe@drm.service - Load Kernel Module drm. [ 10.943484] systemd[1]: modprobe@efi_pstore.service: Deactivated successfully. [ 10.961099] systemd[1]: Finished modprobe@efi_pstore.service - Load Kernel Module efi_pstore. [ 10.989217] systemd[1]: Started systemd-journald.service - Journal Service. [ 11.723155] EXT4-fs (sda2): re-mounted. Quota mode: none. [ 11.863890] systemd-journald[151]: Received client request to flush runtime journal. [ 11.941697] systemd-journald[151]: File /var/log/journal/a5dbef5349a84f47adc181fb067667b5/system.journal corrupted or uncleanly shut down, renaming and replacing. [ 14.079190] sd 0:0:0:0: Attached scsi generic sg0 type 0 [ 14.428852] mc: Linux media interface: v0.10 [ 14.477713] rpi-gpiomem 3f200000.gpiomem: window base 0x3f200000 size 0x00001000 [ 14.478306] rpi-gpiomem 3f200000.gpiomem: initialised 1 regions as /dev/gpiomem [ 14.491447] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned. [ 14.494263] bcm2835_vc_sm_cma_probe: Videocore shared memory driver

[ 14.519670] [vc_sm_connected_init]: installed successfully [ 14.590953] videodev: Linux video capture interface: v2.00 [ 14.700792] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned. [ 14.728284] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned. [ 14.757049] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned. [ 14.788692] bcm2835_isp: module is from the staging directory, the quality is unknown, you have been warned. [ 14.836304] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev/video13 [ 14.840661] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /dev/video14 [ 14.852986] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned. [ 14.872515] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /dev/video15 [ 14.873709] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/video16 [ 14.873791] bcm2835-isp bcm2835-isp: Register output node 0 with media controller [ 14.873830] bcm2835-isp bcm2835-isp: Register capture node 1 with media controller [ 14.873885] bcm2835-isp bcm2835-isp: Register capture node 2 with media controller [ 14.873917] bcm2835-isp bcm2835-isp: Register capture node 3 with media controller [ 14.898980] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev/video20 [ 14.902591] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /dev/video21 [ 14.910309] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /dev/video22 [ 14.914299] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/video23 [ 14.914369] bcm2835-isp bcm2835-isp: Register output node 0 with media controller [ 14.914416] bcm2835-isp bcm2835-isp: Register capture node 1 with media controller [ 14.914446] bcm2835-isp bcm2835-isp: Register capture node 2 with media controller [ 14.914474] bcm2835-isp bcm2835-isp: Register capture node 3 with media controller [ 14.915725] bcm2835-isp bcm2835-isp: Loaded V4L2 bcm2835-isp [ 14.927851] bcm2835-codec bcm2835-codec: Device registered as /dev/video10 [ 14.927947] bcm2835-codec bcm2835-codec: Loaded V4L2 decode [ 14.949987] bcm2835-codec bcm2835-codec: Device registered as /dev/video11 [ 14.950086] bcm2835-codec bcm2835-codec: Loaded V4L2 encode [ 15.000985] bcm2835-codec bcm2835-codec: Device registered as /dev/video12 [ 15.001207] bcm2835-codec bcm2835-codec: Loaded V4L2 isp [ 15.012614] bcm2835-codec bcm2835-codec: Device registered as /dev/video18 [ 15.012717] bcm2835-codec bcm2835-codec: Loaded V4L2 image_fx [ 15.021445] bcm2835-codec bcm2835-codec: Device registered as /dev/video31 [ 15.021576] bcm2835-codec bcm2835-codec: Loaded V4L2 encode_image [ 15.544338] cfg80211: Loading compiled-in X.509 certificates for regulatory database [ 15.671820] cfg80211: Loaded X.509 cert 'benh@debian.org: 577e021cb980e0e820821ba7b54b4961b8b4fadf' [ 15.673845] cfg80211: Loaded X.509 cert 'romain.perier@gmail.com: 3abbc6ec146e09d1b6016ab9d6cf71dd233f0328' [ 15.675968] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7' [ 16.123521] brcmfmac: F1 signature read @0x18000000=0x1541a9a6 [ 16.135215] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1 [ 16.138157] usbcore: registered new interface driver brcmfmac [ 16.394592] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM43430/1 wl0: Jun 14 2023 07:27:45 version 7.45.96.s1 (gf031a129) FWID 01-70bd2af7 es7 [ 18.722753] Adding 102396k swap on /var/swap. Priority:-2 extents:5 across:696316k FS [ 20.800647] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled [ 21.347300] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled [ 22.761050] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled [ 23.500126] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 24.144536] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save disabled [ 24.712572] EXT4-fs (sda3): mounted filesystem with ordered data mode. Quota mode: none. [ 3133.305738] raspberrypi-firmware soc:firmware: failed to allocate a DMA channel [ 3295.903538] raspberrypi-firmware soc:firmware: failed to allocate a DMA channel

Logs

No response

Additional context

bootcode.bin is on a sd-card, boot/firmware and rootfs is on a fast usb-stick, may be relevant for timing.

nbuchwitz commented 10 months ago

dwc_otg usb driver splats with rt patch on arm64. Dwc2 driver does work though. Spend some time trying to fix dwc_otg with rt and Arm64, but ended using the dwc2 on older and xhci on newer devices.

Just add dtoverlay=dwc2 to /boot/config.txt

berndbenner commented 10 months ago

The add of dtoverlay=dwc2,dr_mode=host or dtoverlay=dwc2 to config.txt will not fix the startup issue on a zero w2

After the add the kernel will not show the stack trace, but the startup hangs (endless) after identifiing the mmc card after the message: mmc1: new high speed SDIO card at address 0001

The non-rt-kernel will also hang at the same position with "dtoverlay=dwc2" in config.txt. I have to comment it out, to boot. ( only dwc_otg will work )

if I boot the normal non-rt-kernel the usb-device and the usb-storage device will be detected after the last message of the rt-boot. Here is a kernel log:

Jan 22 22:29:58 raspz-w2-bb kernel: Waiting for root device PARTUUID=a11eb507-02...
Jan 22 22:29:58 raspz-w2-bb kernel: usb 1-1: new high-speed USB device number 2 using dwc_otg
Jan 22 22:29:58 raspz-w2-bb kernel: Indeed it is in host mode hprt0 = 00001101
Jan 22 22:29:58 raspz-w2-bb kernel: mmc0: host does not support reading read-only switch, assuming write-enable
Jan 22 22:29:58 raspz-w2-bb kernel: mmc0: new high speed SD card at address 67c2
Jan 22 22:29:58 raspz-w2-bb kernel: mmcblk0: mmc0:67c2 SD512 473 MiB 
Jan 22 22:29:58 raspz-w2-bb kernel:  mmcblk0: p1
Jan 22 22:29:58 raspz-w2-bb kernel: mmcblk0: mmc0:67c2 SD512 473 MiB
Jan 22 22:29:58 raspz-w2-bb kernel: mmc1: new high speed SDIO card at address 0001
Jan 22 22:29:58 raspz-w2-bb kernel: usb 1-1: New USB device found, idVendor=090c, idProduct=1000, bcdDevice=11.00
Jan 22 22:29:58 raspz-w2-bb kernel: usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jan 22 22:29:58 raspz-w2-bb kernel: usb 1-1: Product: Flash Drive FIT
Jan 22 22:29:58 raspz-w2-bb kernel: usb 1-1: Manufacturer: Samsung
Jan 22 22:29:58 raspz-w2-bb kernel: usb 1-1: SerialNumber: 0371622050001625
Jan 22 22:29:58 raspz-w2-bb kernel: usb-storage 1-1:1.0: USB Mass Storage device detected
Jan 22 22:29:58 raspz-w2-bb kernel: scsi host0: usb-storage 1-1:1.0
Jan 22 22:29:58 raspz-w2-bb kernel: scsi 0:0:0:0: Direct-Access     Samsung  Flash Drive FIT  1100 PQ: 0 ANSI: 6
Jan 22 22:29:58 raspz-w2-bb kernel: sd 0:0:0:0: [sda] 125313283 512-byte logical blocks: (64.2 GB/59.8 GiB)
Jan 22 22:29:58 raspz-w2-bb kernel: sd 0:0:0:0: [sda] Write Protect is off
Jan 22 22:29:58 raspz-w2-bb kernel: sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00
Jan 22 22:29:58 raspz-w2-bb kernel: sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
Jan 22 22:29:58 raspz-w2-bb kernel:  sda: sda1 sda2 sda3
Jan 22 22:29:58 raspz-w2-bb kernel: sd 0:0:0:0: [sda] Attached SCSI removable disk
Jan 22 22:29:58 raspz-w2-bb kernel: EXT4-fs (sda2): INFO: recovery required on readonly filesystem
Jan 22 22:29:58 raspz-w2-bb kernel: EXT4-fs (sda2): write access will be enabled during recovery
Jan 22 22:29:58 raspz-w2-bb kernel: EXT4-fs (sda2): recovery complete
Jan 22 22:29:58 raspz-w2-bb kernel: EXT4-fs (sda2): mounted filesystem with ordered data mode. Quota mode: none.
Jan 22 22:29:58 raspz-w2-bb kernel: VFS: Mounted root (ext4 filesystem) readonly on device 8:2.
...

The "trick" of only bootcode.bin on the sd-card and other boot stuff,device tree ... and rootfs on a usb-stick will not work on "older" rpi Cortex-A52-devices with the prempt_rt patched kernel by usb-device driver timing issues .

pelwell commented 10 months ago

We do not support the RT kernel, and we don't recommend running a 64-bit kernel on Zero 2 W because of memory constraints.

berndbenner commented 10 months ago

Ok Thank you! May be, its helpfull to update your custom kernel build and prempt_rt patch instructions to avoid the pitfalls with zero-w2 and rpi3b boards.

pelwell commented 10 months ago

update your custom kernel build and prempt_rt patch instructions

Which instructions are those?

nbuchwitz commented 10 months ago

Ok Thank you! May be, its helpfull to update your custom kernel build and prempt_rt patch instructions to avoid the pitfalls with zero-w2 and rpi3b boards.

Afaik 3b should work. You could try to use the Revolution Pi kernel repo which includes the rt patch with some custom patches tailored towards raspberry pi compute module.