Raspberry Pi Compute Module 3+ compatibility?

I have a Turing Pi 1 ( https://turingpi.com ) with Raspberry Pi Compute Module 3+ ( Buy a Compute Module 3+ – Raspberry Pi ) installed.

I’m having trouble booting these with a nixos image. I’ve flashed the AArch64 image referenced from NixOS on ARM - NixOS Wiki to the internal storage of the compute module. When booting I see nothing. No output on HDMI or activity LED.

I, unfortunately, have not had luck hooking up a serial console to debug. Fairly clueless on that, so I figure that is likely a setup issue on my end as I can’t get that to work even with a standard raspberry pi OS.

Has anyone succeeded in running AArch64 on a Raspberry PI CM 3+?

I understand that Raspberry Pi 3+ works, but the compute module 3+ afaik is different.

1 Like

This is going to be tricky to troubleshoot without UART. I’ve been meaning to switch the installer boot to use firmware device trees, which will fix Pi Zero 2 W compatibility and should hopefully fix issues with other non-3B/3B+/4B hardware.

Understood. I’ll post here if I make any progress getting debug info.

I have verified they will run a 64bit OS: Ubuntu server. Which I actually had a hard time with. I kept dividing 32bit distros. shrug probably obvious to people who have used Pis before but was a mystery to me XD

Finally got a UART to USB connector for this. Possibly even hooked it up properly.

I flashed the 64bit nixos image to the compute module mmc. Then attempted to boot. No boot activity occurred at all as far as I can tell: No activity on the UART and no LED activity.

I’ll try poking around but any tips on bringing up this board?

Definitely hooked up the UART to USB correctly. I’m able to watch the other nodes boot fine.

I tried adding additional device tree blobs and updating the firmware package. No luck: still no activity on the LED or UART when booting the nix image.

This doc points me to a different uboot build than the RPi 3 that (AFAICT) is currently being used

Guess I’ll try rpi_arm64_defconfig .

oooohhhh. These words make sense now haha. I see in the uboot docs the note “rpi_arm64_defconfig uses the device-tree provided by the firmware instead of the embedded one”. Which sounds like what you are referring to.

cool! This change:

at least gets the compute module to start to boot. Below is the log up until it appears to get stuck. This part stuck out at me:

Retrieving file: /boot/extlinux/../nixos/cjf3d2zj07iwpidvc1pbrbhvhna53ngn-linux-5.17.1-dtbs/broadcom/bcm2837-rpi-cm3.dtb
Failed to load '/boot/extlinux/../nixos/cjf3d2zj07iwpidvc1pbrbhvhna53ngn-linux-5.17.1-dtbs/broadcom/bcm2837-rpi-cm3.dtb'

that’s not the right board.

Anyways, here’s the full log:

U-Boot 2021.10 (Oct 04 2021 - 15:09:26 +0000)

DRAM:  948 MiB
RPI Compute Module 3+ (0xa02100)
MMC:   mmc@7e202000: 0
Loading Environment from FAT... WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
Unable to read "uboot.env" from mmc0:1... In:    serial
Out:   vidconsole
Err:   vidconsole
Net:   No ethernet found.
starting USB...
Bus usb@7e980000: usb dr_mode not found
USB DWC2
scanning bus usb@7e980000 for devices...
Error: smsc95xx_eth address not set.
2 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:2...
Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
691 bytes read in 1 ms (674.8 KiB/s)
1:      NixOS - Default
Retrieving file: /boot/extlinux/../nixos/gyl37girf6nrqxx7c8g1d3ch4pkm3z9d-initrd-linux-5.17.1-initrd
10010190 bytes read in 415 ms (23 MiB/s)
Retrieving file: /boot/extlinux/../nixos/cjf3d2zj07iwpidvc1pbrbhvhna53ngn-linux-5.17.1-Image
47243776 bytes read in 1891 ms (23.8 MiB/s)
append: init=/nix/store/gwd70rdm707afjlcb1v2c2yqrjkzzvds-nixos-system-postpi-0-21.11.git.272a0d6bbee/init console=ttyS0,115200n8 console=ttyAMA0,115200n8 console=tty0 loglevel=7
Retrieving file: /boot/extlinux/../nixos/cjf3d2zj07iwpidvc1pbrbhvhna53ngn-linux-5.17.1-dtbs/broadcom/bcm2837-rpi-cm3.dtb
Failed to load '/boot/extlinux/../nixos/cjf3d2zj07iwpidvc1pbrbhvhna53ngn-linux-5.17.1-dtbs/broadcom/bcm2837-rpi-cm3.dtb'
Moving Image from 0x80000 to 0x200000, end=2fc0000
## Flattened Device Tree blob at 2eff8700
   Booting using the fdt blob at 0x2eff8700
   Using Device Tree in place at 000000002eff8700, end 000000002f002f40

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 5.17.1 (nixbld@localhost) (gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.35.2) #1-NixOS SMP Mon Mar 28 08:03:22 UTC 2022
[    0.000000] Machine model: Raspberry Pi Compute Module 3 Plus Rev 1.0
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created CMA memory pool at 0x0000000037400000, size 64 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] NUMA: No NUMA configuration found
[    0.000000] NUMA: Faking a node at [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000] NUMA: NODE_DATA [mem 0x37200080-0x37202fff]
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000]   Device   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000] On node 0, zone DMA: 19456 pages in unavailable ranges
[    0.000000] percpu: Embedded 30 pages/cpu s82904 r8192 d31784 u122880
[    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] Fallback order for Node 0: 0
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 238896
[    0.000000] Policy zone: DMA
[    0.000000] Kernel command line: init=/nix/store/gwd70rdm707afjlcb1v2c2yqrjkzzvds-nixos-system-postpi-0-21.11.git.272a0d6bbee/init console=ttyS0,115200n8 console=ttyAMA0,115200n8 console=tty0 loglevel=7
[    0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[    0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 828108K/970752K available (19520K kernel code, 4792K rwdata, 10968K rodata, 10752K init, 657K bss, 77108K reserved, 65536K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] ftrace: allocating 64796 entries in 254 pages
[    0.000000] ftrace: allocated 254 pages with 7 groups
[    0.000000] trace event string verifier disabled
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=384 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] random: get_random_bytes called from start_kernel+0x4e4/0x6c8 with crng_init=0
[    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.000571] Console: colour dummy device 80x25
[    0.001159] printk: console [tty0] enabled
[    0.001286] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=76800)
[    0.001326] pid_max: default: 32768 minimum: 301
[    0.001478] LSM: Security Framework initializing
[    0.001517] Yama: becoming mindful.
[    0.001639] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.001687] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.004039] cblist_init_generic: Setting adjustable number of callback queues.
[    0.004088] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.004254] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.004408] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.004724] rcu: Hierarchical SRCU implementation.
[    0.009782] EFI services will not be available.
[    0.010335] smp: Bringing up secondary CPUs ...
[    0.011187] Detected VIPT I-cache on CPU1
[    0.011284] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.012287] Detected VIPT I-cache on CPU2
[    0.012354] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.013340] Detected VIPT I-cache on CPU3
[    0.013402] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.013557] smp: Brought up 1 node, 4 CPUs
[    0.013660] SMP: Total of 4 processors activated.
[    0.013680] CPU features: detected: 32-bit EL0 Support
[    0.013697] CPU features: detected: 32-bit EL1 Support
[    0.013716] CPU features: detected: CRC32 instructions
[    0.034142] CPU: All CPU(s) started at EL2
[    0.034317] alternatives: patching kernel code
[    0.037364] devtmpfs: initialized
[    0.048938] KASLR enabled
[    0.049266] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.049315] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.052810] pinctrl core: initialized pinctrl subsystem
[    0.054604] DMI not present or invalid.
[    0.055539] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.060718] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[    0.061053] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.061276] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.061419] audit: initializing netlink subsys (disabled)
[    0.061689] audit: type=2000 audit(0.060:1): state=initialized audit_enabled=0 res=1
[    0.063587] thermal_sys: Registered thermal governor 'step_wise'
[    0.063598] thermal_sys: Registered thermal governor 'power_allocator'
[    0.063888] cpuidle: using governor menu
[    0.064378] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.064575] ASID allocator initialised with 32768 entries
[    0.067472] Serial: AMBA PL011 UART driver
[    0.103288] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
[    0.103343] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
[    0.103367] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
[    0.103391] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
[    0.105720] fbcon: Taking over console
[    0.105809] ACPI: Interpreter disabled.
[    0.109400] iommu: Default domain type: Translated
[    0.109436] iommu: DMA domain TLB invalidation policy: strict mode
[    0.109802] vgaarb: loaded
[    0.110365] SCSI subsystem initialized
[    0.111040] usbcore: registered new interface driver usbfs
[    0.111130] usbcore: registered new interface driver hub
[    0.111194] usbcore: registered new device driver usb
[    0.111433] usb_phy_generic phy: supply vcc not found, using dummy regulator
[    0.112626] pps_core: LinuxPPS API ver. 1 registered
[    0.112649] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.112695] PTP clock support registered
[    0.112888] EDAC MC: Ver: 3.0.0
[    0.115004] FPGA manager framework
[    0.115197] Advanced Linux Sound Architecture Driver Initialized.
[    0.116952] clocksource: Switched to clocksource arch_sys_counter
[    0.206111] VFS: Disk quotas dquot_6.6.0
[    0.206233] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.206658] pnp: PnP ACPI: disabled
[    0.218505] NET: Registered PF_INET protocol family
[    0.218853] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.220202] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear)
[    0.220342] TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.220481] TCP bind hash table entries: 8192 (order: 5, 131072 bytes, linear)
[    0.220696] TCP: Hash tables configured (established 8192 bind 8192)
[    0.221104] MPTCP token hash table entries: 1024 (order: 2, 24576 bytes, linear)
[    0.221203] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.221271] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.221467] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.222140] RPC: Registered named UNIX socket transport module.
[    0.222167] RPC: Registered udp transport module.
[    0.222185] RPC: Registered tcp transport module.
[    0.222202] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.222225] NET: Registered PF_XDP protocol family
[    0.222254] PCI: CLS 0 bytes, default 64
[    0.222583] Trying to unpack rootfs image as initramfs...
[    0.855513] Freeing initrd memory: 9772K
[    2.036522] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
[    2.036781] kvm [1]: IPA Size Limit: 40 bits
[    2.040874] kvm [1]: Hyp mode initialized successfully
[    2.043150] Initialise system trusted keyrings
[    2.043518] workingset: timestamp_bits=42 max_order=18 bucket_order=0
[    2.053333] zbud: loaded
[    2.055654] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    2.056797] NFS: Registering the id_resolver key type
[    2.056863] Key type id_resolver registered
[    2.056884] Key type id_legacy registered
[    2.057129] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    2.057156] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    2.057470] 9p: Installing v9fs 9p2000 file system support
[    2.129265] Key type asymmetric registered
[    2.129291] Asymmetric key parser 'x509' registered
[    2.131057] alg: self-tests for CTR-KDF (hmac(sha256)) passed
[    2.131202] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
[    2.131424] io scheduler mq-deadline registered
[    2.131449] io scheduler kyber registered
[    2.147474] simple-framebuffer 3eaf0000.framebuffer: framebuffer at 0x3eaf0000, 0x10a800 bytes
[    2.147539] simple-framebuffer 3eaf0000.framebuffer: format=a8r8g8b8, mode=656x416x32, linelength=2624
[    2.148129] Console: switching to colour frame buffer device 82x26
[    2.154899] simple-framebuffer 3eaf0000.framebuffer: fb0: simplefb registered!
[    2.160153] EINJ: ACPI disabled.
[    2.194299] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    2.203117] SuperH (H)SCI(F) driver initialized
[    2.208483] msm_serial: driver initialized
[    2.215389] cacheinfo: Unable to detect cache hierarchy for CPU 0
[    2.229772] loop: module loaded
[    2.236146] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
[    2.242235] megasas: 07.719.03.00-rc1
[    2.255929] tun: Universal TUN/TAP device driver, 1.6
[    2.262028] thunder_xcv, ver 1.0
[    2.266787] thunder_bgx, ver 1.0
[    2.271318] nicpf, ver 1.0
[    2.277456] hns3: Hisilicon Ethernet Network Driver for Hip08 Family - version
[    2.282029] hns3: Copyright (c) 2017 Huawei Corporation.
[    2.286665] hclge is initializing
[    2.291151] e1000: Intel(R) PRO/1000 Network Driver
[    2.295592] e1000: Copyright (c) 1999-2006 Intel Corporation.
[    2.300063] e1000e: Intel(R) PRO/1000 Network Driver
[    2.304438] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[    2.308992] igb: Intel(R) Gigabit Ethernet Network Driver
[    2.313418] igb: Copyright (c) 2007-2014 Intel Corporation.
[    2.317807] igbvf: Intel(R) Gigabit Virtual Function Network Driver
[    2.322109] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[    2.326782] sky2: driver version 1.30
[    2.332235] VFIO - User Level meta-driver version: 0.3
[    2.339223] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    2.343390] ehci-pci: EHCI PCI platform driver
[    2.347486] ehci-platform: EHCI generic platform driver
[    2.351668] ehci-orion: EHCI orion driver
[    2.355765] ehci-exynos: EHCI Exynos driver
[    2.359775] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    2.363742] ohci-pci: OHCI PCI platform driver
[    2.367636] ohci-platform: OHCI generic platform driver
[    2.371564] ohci-exynos: OHCI Exynos driver
[    2.375895] usbcore: registered new interface driver usb-storage
[    2.383258] i2c_dev: i2c /dev entries driver
[    2.393561] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[    2.400598] sdhci: Secure Digital Host Controller Interface driver
[    2.404724] sdhci: Copyright(c) Pierre Ossman
[    2.409683] Synopsys Designware Multimedia Card Interface Driver
[    2.415091] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.421506] ledtrig-cpu: registered to indicate activity on CPUs
[    2.428059] hid: raw HID events driver (C) Jiri Kosina
[    2.433050] usbcore: registered new interface driver usbhid
[    2.437181] usbhid: USB HID core driver
[    2.441638] ashmem: initialized
[    2.446382] bcm2835-mbox 3f00b880.mailbox: mailbox enabled
[    2.457229] drop_monitor: Initializing network drop monitor service
[    2.462349] NET: Registered PF_INET6 protocol family
[    2.470000] Segment Routing with IPv6
[    2.474147] In-situ OAM (IOAM) with IPv6
[    2.478182] NET: Registered PF_PACKET protocol family
[    2.482555] 9pnet: Installing 9P2000 support
[    2.486577] Key type dns_resolver registered
[    2.491639] Loading compiled-in X.509 certificates
[    2.492988] sdhost-bcm2835 3f202000.mmc: loaded - DMA enabled (>1)
[    2.496229] zswap: loaded using pool lzo/zbud
[    2.504595] Key type ._fscrypt registered
[    2.508583] Key type .fscrypt registered
[    2.512476] Key type fscrypt-provisioning registered
[    2.528801] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 99, base_baud = 0) is a PL011 rev2
[    2.639132] mmc0: new high speed MMC card at address 0001
[    2.646104] printk: console [ttyAMA0] enabled
[    2.653810] mmcblk0: mmc0:0001 8GTF4R 7.28 GiB
[    2.663118] raspberrypi-firmware soc:firmware: Attached to firmware from 2022-03-24T13:20:54
[    3.834902]  mmcblk0: p1 p2
[    3.842905] mmcblk0boot0: mmc0:0001 8GTF4R 4.00 MiB
[    3.854287] mmcblk0boot1: mmc0:0001 8GTF4R 4.00 MiB
[    3.865100] mmcblk0rpmb: mmc0:0001 8GTF4R 512 KiB, chardev (234:0)
[    3.896699] ALSA device list:
[    3.903650]   No soundcards found.
[    3.932809] Freeing unused kernel memory: 10752K
[    3.949099] Run /init as init process
[    4.188035] device-mapper: ioctl: 4.45.0-ioctl (2021-03-22) initialised: dm-devel@redhat.com
[    4.751497] random: lvm: uninitialized urandom read (4 bytes read)
[    4.978845] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Quota mode: none.
[    5.512885] EXT4-fs error (device mmcblk0p2): ext4_find_extent:927: inode #664: comm init: pblk 170302 bad header/extent: invalid magic - magic a8, entries 32768, max 6186(0), depth 37597(0)
[    5.542277] EXT4-fs error (device mmcblk0p2): ext4_find_extent:927: inode #664: comm init: pblk 170302 bad header/extent: invalid magic - magic a8, entries 32768, max 6186(0), depth 37597(0)
[    5.572538] EXT4-fs error (device mmcblk0p2): ext4_find_extent:927: inode #664: comm init: pblk 170302 bad header/extent: invalid magic - magic a8, entries 32768, max 6186(0), depth 37597(0)
[   35.812985] cam-dummy-reg: disabling

did you ever succeed with this?

Not yet. Been a while since I tried tho. Was going to give another go soon

I was able to get an RPi Zero 2 W to boot 64-bit NixOS, though not without manually fudging the dtb which has a different name then what is expected by uboot (Aarch64 SD images missing pi-zero-2.dtb file require to boot. · Issue #216886 · NixOS/nixpkgs · GitHub)

Unfortunately, I’m now stuck at a different spot… I need dwc-otg support for a hat that I want to use w/ the Pi Zero 2, but I’m not sure for the life of me how to get the dtb onto the system.

I found a seemingly related issue along with PR and some devicetree related config from @sorki … Maybe something from those would help, though I’m too new to nixos to know how to apply them.

2 Likes

I have some success with my latest try. Seems to boot fine up to login. Does not seem to respond after that. No response on network.

Only error that jumps out at me is:

Retrieving file: /boot/extlinux/../nixos/vyz787nzrbg0lvgiqiq3cassnzlwb05x-linux-6.2.12-dtbs/broadcom/bcm2837-rpi-cm3.dtb
** File not found /boot/extlinux/../nixos/vyz787nzrbg0lvgiqiq3cassnzlwb05x-linux-6.2.12-dtbs/broadcom/bcm2837-rpi-cm3.dtb **

seems important?

Only real patch to nixpkgs I did is:

haven’t tried 22.11 without tht ptch tho

Hmm. So I tried instead linux_rpi3 kernel. That did not boot at all. Interesting…

I see a other places just cp’ing another dtb to bcm2837-rpi-cm3.dtb. I’ll give that a try as well.

Perhaps I miss-flashed the first time. pkgs.linuxKernel.packages.linux_rpi3 does boot without any error on missing dtbs. Appears more devices are recognized. No network is initialized as far as I can tell. No errors or warnings either tho.

Here’s the log from using latest_packages for the kernel. Nothing jumps out at me as to why the ethernet won’t start.

Also, despite this being from minicom I cannot seem to enter anything at the login prompt.

U-Boot 2022.10 (Oct 03 2022 - 19:25:32 +0000)

DRAM:  948 MiB
RPI Compute Module 3+ (0xa02100)
Core:  75 devices, 13 uclasses, devicetree: board
MMC:   mmc@7e202000: 0
Loading Environment from FAT... WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
Unable to read "uboot.env" from mmc0:1... 
In:    serial
Out:   vidconsole
Err:   vidconsole
Net:   No ethernet found.
starting USB...
Bus usb@7e980000: USB DWC2
scanning bus usb@7e980000 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0 
WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:2...
Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
------------------------------------------------------------
1:      NixOS - Default
Enter choice: 1:        NixOS - Default
Retrieving file: /boot/extlinux/../nixos/anwc2vbncp1sq0jm2pyklwhx47lnjw8h-initrd-linux-6.2.12-initrd
Retrieving file: /boot/extlinux/../nixos/vyz787nzrbg0lvgiqiq3cassnzlwb05x-linux-6.2.12-Image
append: init=/nix/store/i9hk8i7wwyv8652flaqdyk60ibdh99as-nixos-system-postpi-1-22.11pre-git/init console=ttyS0,115200n8 console=ttyAMA0,115200n8 console=tty0 dwc_otg.lpm_enable=0 loglevel=7
Retrieving file: /boot/extlinux/../nixos/vyz787nzrbg0lvgiqiq3cassnzlwb05x-linux-6.2.12-dtbs/broadcom/bcm2837-rpi-cm3.dtb
** File not found /boot/extlinux/../nixos/vyz787nzrbg0lvgiqiq3cassnzlwb05x-linux-6.2.12-dtbs/broadcom/bcm2837-rpi-cm3.dtb **
Moving Image from 0x80000 to 0x200000, end=3b90000
## Flattened Device Tree blob at 2eff8400
   Booting using the fdt blob at 0x2eff8400
   Using Device Tree in place at 000000002eff8400, end 000000002f002f97

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 6.2.12 (nixbld@localhost) (gcc (GCC) 9.5.0, GNU ld (GNU Binutils) 2.39) #1-NixOS SMP Thu Apr 20 10:37:00 UTC 2023
[    0.000000] random: crng init done
[    0.000000] Machine model: Raspberry Pi Compute Module 3 Plus Rev 1.0
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created CMA memory pool at 0x0000000037400000, size 64 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] NUMA: No NUMA configuration found
[    0.000000] NUMA: Faking a node at [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000] NUMA: NODE_DATA [mem 0x371ff9c0-0x37202fff]
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000]   Device   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000] On node 0, zone DMA: 19456 pages in unavailable ranges
[    0.000000] percpu: Embedded 30 pages/cpu s84712 r8192 d29976 u122880
[    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] Fallback order for Node 0: 0 
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 238896
[    0.000000] Policy zone: DMA
[    0.000000] Kernel command line: init=/nix/store/i9hk8i7wwyv8652flaqdyk60ibdh99as-nixos-system-postpi-1-22.11pre-git/init console=ttyS0,115200n8 console=ttyAMA0,115200n8 console=tty0 dwc_otg.lpm_enable=0 loglev7
[    0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[    0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 814528K/970752K available (20800K kernel code, 5504K rwdata, 19276K rodata, 12480K init, 743K bss, 90688K reserved, 65536K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] ftrace: allocating 68566 entries in 268 pages
[    0.000000] ftrace: allocated 268 pages with 3 groups
[    0.000000] trace event string verifier disabled
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=384 to nr_cpu_ids=4.
[    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.000800] Console: colour dummy device 80x25
[    0.000819] printk: console [tty0] enabled
[    0.001589] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=76800)
[    0.001631] pid_max: default: 32768 minimum: 301
[    0.001829] LSM: initializing lsm=capability,landlock,yama,integrity,bpf
[    0.001957] landlock: Up and running.
[    0.001975] Yama: becoming mindful.
[    0.002042] LSM support for eBPF active
[    0.002206] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.002256] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.005250] cblist_init_generic: Setting adjustable number of callback queues.
[    0.005300] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.005463] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.005839] rcu: Hierarchical SRCU implementation.
[    0.005862] rcu:     Max phase no-delay instances is 1000.
[    0.011556] EFI services will not be available.
[    0.012204] smp: Bringing up secondary CPUs ...
[    0.013152] Detected VIPT I-cache on CPU1
[    0.013359] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.014460] Detected VIPT I-cache on CPU2
[    0.014616] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.015579] Detected VIPT I-cache on CPU3
[    0.015730] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.015906] smp: Brought up 1 node, 4 CPUs
[    0.016072] SMP: Total of 4 processors activated.
[    0.016093] CPU features: detected: 32-bit EL0 Support
[    0.016110] CPU features: detected: 32-bit EL1 Support
[    0.016130] CPU features: detected: CRC32 instructions
[    0.016290] CPU: All CPU(s) started at EL2
[    0.016322] alternatives: applying system-wide alternatives
[    0.020247] devtmpfs: initialized
[    0.033293] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.033373] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.036819] pinctrl core: initialized pinctrl subsystem
[    0.040253] DMI not present or invalid.
[    0.041246] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.046157] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[    0.046566] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.046801] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.046964] audit: initializing netlink subsys (disabled)
[    0.047244] audit: type=2000 audit(0.044:1): state=initialized audit_enabled=0 res=1
[    0.049308] thermal_sys: Registered thermal governor 'step_wise'
[    0.049321] thermal_sys: Registered thermal governor 'power_allocator'
[    0.049471] cpuidle: using governor ladder
[    0.049546] cpuidle: using governor menu
[    0.050127] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.050336] ASID allocator initialised with 32768 entries
[    0.053829] Serial: AMBA PL011 UART driver
[    0.071710] KASLR enabled
[    0.073337] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
[    0.073381] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
[    0.073406] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
[    0.073426] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
[    0.073448] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
[    0.073468] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
[    0.073491] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
[    0.073511] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
[    1.675860] fbcon: Taking over console
[    1.675957] ACPI: Interpreter disabled.
[    1.680016] iommu: Default domain type: Translated 
[    1.680060] iommu: DMA domain TLB invalidation policy: strict mode 
[    1.680760] SCSI subsystem initialized
[    1.681369] usbcore: registered new interface driver usbfs
[    1.681434] usbcore: registered new interface driver hub
[    1.681530] usbcore: registered new device driver usb
[    1.681842] usb_phy_generic phy: dummy supplies not allowed for exclusive requests
[    1.683050] pps_core: LinuxPPS API ver. 1 registered
[    1.683073] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    1.683119] PTP clock support registered
[    1.683309] EDAC MC: Ver: 3.0.0
[    1.685429] FPGA manager framework
[    1.685657] Advanced Linux Sound Architecture Driver Initialized.
[    1.687530] vgaarb: loaded
[    1.724434] clocksource: Switched to clocksource arch_sys_counter
[    1.725086] VFS: Disk quotas dquot_6.6.0
[    1.725188] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    1.725600] pnp: PnP ACPI: disabled
[    1.738396] NET: Registered PF_INET protocol family
[    1.738753] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    1.741398] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear)
[    1.741480] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    1.741525] TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    1.741664] TCP bind hash table entries: 8192 (order: 6, 262144 bytes, linear)
[    1.742067] TCP: Hash tables configured (established 8192 bind 8192)
[    1.742579] MPTCP token hash table entries: 1024 (order: 2, 24576 bytes, linear)
[    1.742714] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[    1.742793] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
[    1.743058] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    1.743955] RPC: Registered named UNIX socket transport module.
[    1.743992] RPC: Registered udp transport module.
[    1.744011] RPC: Registered tcp transport module.
[    1.744029] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    1.744057] NET: Registered PF_XDP protocol family
[    1.744093] PCI: CLS 0 bytes, default 64
[    1.744526] Trying to unpack rootfs image as initramfs...
[    1.754038] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
[    1.754403] kvm [1]: IPA Size Limit: 40 bits
[    1.762418] kvm [1]: Hyp mode initialized successfully
[    1.765757] Initialise system trusted keyrings
[    1.766295] workingset: timestamp_bits=42 max_order=18 bucket_order=0
[    1.766523] zbud: loaded
[    1.767744] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    1.768887] NFS: Registering the id_resolver key type
[    1.768984] Key type id_resolver registered
[    1.769005] Key type id_legacy registered
[    1.769070] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.769098] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    1.769471] 9p: Installing v9fs 9p2000 file system support
[    1.842337] Key type asymmetric registered
[    1.842408] Asymmetric key parser 'x509' registered
[    1.842591] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
[    1.843182] io scheduler mq-deadline registered
[    1.843230] io scheduler kyber registered
[    1.861800] simple-framebuffer 3eaf0000.framebuffer: framebuffer at 0x3eaf0000, 0x10a800 bytes
[    1.861869] simple-framebuffer 3eaf0000.framebuffer: format=a8r8g8b8, mode=656x416x32, linelength=2624
[    1.862553] Console: switching to colour frame buffer device 82x26
[    1.865246] simple-framebuffer 3eaf0000.framebuffer: fb0: simplefb registered!
[    1.868388] EINJ: ACPI disabled.
[    1.908321] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    1.915588] SuperH (H)SCI(F) driver initialized
[    1.918441] msm_serial: driver initialized
[    1.940368] loop: module loaded
[    1.942935] bcm2835-pm 3f100000.watchdog: invalid resource
[    1.946914] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
[    1.950724] megasas: 07.719.03.00-rc1
[    1.963719] tun: Universal TUN/TAP device driver, 1.6
[    1.967471] thunder_xcv, ver 1.0
[    1.969504] thunder_bgx, ver 1.0
[    1.971440] nicpf, ver 1.0
[    1.975671] hns3: Hisilicon Ethernet Network Driver for Hip08 Family - version
[    1.977611] hns3: Copyright (c) 2017 Huawei Corporation.
[    1.979684] hclge is initializing
[    1.981719] e1000: Intel(R) PRO/1000 Network Driver
[    1.983625] e1000: Copyright (c) 1999-2006 Intel Corporation.
[    1.985678] e1000e: Intel(R) PRO/1000 Network Driver
[    1.987476] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[    1.989372] igb: Intel(R) Gigabit Ethernet Network Driver
[    1.991141] igb: Copyright (c) 2007-2014 Intel Corporation.
[    1.993094] igbvf: Intel(R) Gigabit Virtual Function Network Driver
[    1.994852] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[    1.997486] sky2: driver version 1.30
[    2.004698] usbcore: registered new interface driver usb-storage
[    2.010894] i2c_dev: i2c /dev entries driver
[    2.020891] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[    2.023829] ghes_edac: GHES probing device list is empty
[    2.027287] sdhci: Secure Digital Host Controller Interface driver
[    2.030751] sdhci: Copyright(c) Pierre Ossman
[    2.034131] Synopsys Designware Multimedia Card Interface Driver
[    2.038000] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.044301] ledtrig-cpu: registered to indicate activity on CPUs
[    2.050481] hid: raw HID events driver (C) Jiri Kosina
[    2.053042] usbcore: registered new interface driver usbhid
[    2.054786] usbhid: USB HID core driver
[    2.057821] bcm2835-mbox 3f00b880.mailbox: mailbox enabled
[    2.070672] drop_monitor: Initializing network drop monitor service
[    2.120539] sdhost-bcm2835 3f202000.mmc: loaded - DMA enabled (>1)
[    2.247057] mmc0: new high speed MMC card at address 0001
[    2.250687] mmcblk0: mmc0:0001 8GTF4R 7.28 GiB 
[    2.255500] NET: Registered PF_INET6 protocol family
[    2.257673]  mmcblk0: p1 p2
[    2.261404] mmcblk0boot0: mmc0:0001 8GTF4R 4.00 MiB 
[    2.266372] mmcblk0boot1: mmc0:0001 8GTF4R 4.00 MiB 
[    2.270777] mmcblk0rpmb: mmc0:0001 8GTF4R 512 KiB, chardev (235:0)
[    2.513145] Freeing initrd memory: 11248K
[    2.517800] Segment Routing with IPv6
[    2.519568] In-situ OAM (IOAM) with IPv6
[    2.521353] NET: Registered PF_PACKET protocol family
[    2.523309] 9pnet: Installing 9P2000 support
[    2.525048] Key type dns_resolver registered
[    2.546651] registered taskstats version 1
[    2.548651] Loading compiled-in X.509 certificates
[    2.550608] zswap: loaded using pool lzo/zbud
[    2.567141] Key type .fscrypt registered
[    2.568735] Key type fscrypt-provisioning registered
[    2.577805] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 99, base_baud = 0) is a PL011 rev2
[    2.580947] printk: console [ttyAMA0] enabled
[    3.861439] raspberrypi-firmware soc:firmware: Attached to firmware from 2022-10-26T11:10:35
[    3.887062] ALSA device list:
[    3.891692]   No soundcards found.
[    3.922009] Freeing unused kernel memory: 12480K
[    3.932597] Run /init as init process
[    4.232172] device-mapper: ioctl: 4.47.0-ioctl (2022-07-28) initialised: dm-devel@redhat.com
[    5.226374] EXT4-fs (mmcblk0p2): mounted filesystem 44444444-4444-4444-8888-888888888888 with ordered data mode. Quota mode: none.
[    6.295618] EXT4-fs (mmcblk0p2): re-mounted 44444444-4444-4444-8888-888888888888. Quota mode: none.
[    6.313501] booting system configuration /nix/store/i9hk8i7wwyv8652flaqdyk60ibdh99as-nixos-system-postpi-1-22.11pre-git
[   10.543288] EXT4-fs (mmcblk0p2): resizing filesystem from 619328 to 1899008 blocks
[   10.749980] EXT4-fs (mmcblk0p2): resized filesystem to 1899008
[   13.760954] systemd[1]: System time before build time, advancing clock.
[   13.922870] systemd[1]: systemd 251.15 running in system mode (+PAM +AUDIT -SELINUX +APPARMOR +IMA +SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSET)
[   13.965414] systemd[1]: Detected architecture arm64.
[   13.996326] systemd[1]: Initializing machine ID from random generator.
[   14.051708] platform leds: deferred probe pending
[   14.882336] systemd[1]: bpf-lsm: Failed to link program; assuming BPF LSM is not available
[   15.038204] uart-pl011 3f201000.serial: no DMA platform data
[   15.898013] systemd[1]: Queued start job for default target Multi-User System.
[   15.998538] systemd[1]: Created slice Slice /system/getty.
[   16.028657] systemd[1]: Created slice Slice /system/modprobe.
[   16.058995] systemd[1]: Created slice Slice /system/serial-getty.
[   16.089297] systemd[1]: Created slice User and Session Slice.
[   16.100269] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[   16.115448] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[   16.130171] systemd[1]: Reached target Local Encrypted Volumes.
[   16.140924] systemd[1]: Reached target Containers.
[   16.150619] systemd[1]: Reached target Path Units.
[   16.160131] systemd[1]: Reached target Remote File Systems.
[   16.170392] systemd[1]: Reached target Slice Units.
[   16.179892] systemd[1]: Reached target Swaps.
[   16.200847] systemd[1]: Listening on Process Core Dump Socket.
[   16.212804] systemd[1]: Listening on Journal Audit Socket.
[   16.223909] systemd[1]: Listening on Journal Socket (/dev/log).
[   16.235567] systemd[1]: Listening on Journal Socket.
[   16.246184] systemd[1]: Listening on Userspace Out-Of-Memory (OOM) Killer Socket.
[   16.262219] systemd[1]: Listening on udev Control Socket.
[   16.273090] systemd[1]: Listening on udev Kernel Socket.
[   16.320967] systemd[1]: Mounting Huge Pages File System...
[   16.355752] systemd[1]: Mounting POSIX Message Queue File System...
[   16.391177] systemd[1]: Mounting Kernel Debug File System...
[   16.426486] systemd[1]: Starting Create List of Static Device Nodes...
[   16.462933] systemd[1]: Starting Load Kernel Module configfs...
[   16.498870] systemd[1]: Starting Load Kernel Module drm...
[   16.534845] systemd[1]: Starting Load Kernel Module fuse...
[   16.570522] systemd[1]: Starting mount-pstore.service...
[   16.581817] systemd[1]: File System Check on Root Device was skipped because of a failed condition check (ConditionPathIsReadWrite=!/).
[   16.600498] fuse: init (API version 7.38)
[   16.677483] systemd[1]: Starting Journal Service...
[   16.713536] systemd[1]: Starting Load Kernel Modules...
[   16.750397] systemd[1]: Starting Remount Root and Kernel File Systems...
[   16.790111] systemd[1]: Starting Coldplug All udev Devices...
[   16.856896] systemd[1]: Mounted Huge Pages File System.
[   16.868397] systemd[1]: Mounted POSIX Message Queue File System.
[   16.881684] systemd[1]: Mounted Kernel Debug File System.
[   16.885919] EXT4-fs (mmcblk0p2): re-mounted 44444444-4444-4444-8888-888888888888. Quota mode: none.
[   16.913783] systemd[1]: Finished Create List of Static Device Nodes.
[   16.926861] audit: type=1130 audit(1653143111.159:2): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=kmod-static-nodes comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/sy'
[   16.929850] systemd[1]: modprobe@configfs.service: Deactivated successfully.
[   16.935485] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[   16.987680] systemd[1]: Finished Load Kernel Module configfs.
[   16.999100] audit: type=1130 audit(1653143111.231:3): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=modprobe@configfs comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/sy'
[   17.000216] systemd[1]: Started Journal Service.
[   17.008130] audit: type=1131 audit(1653143111.231:4): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=modprobe@configfs comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/sy'
[   17.074805] audit: type=1130 audit(1653143111.307:5): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-journald comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/sys'
[   17.117120] audit: type=1130 audit(1653143111.351:6): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=modprobe@drm comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/systemd'
[   17.149696] audit: type=1131 audit(1653143111.351:7): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=modprobe@drm comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/systemd'
[   17.187130] audit: type=1130 audit(1653143111.419:8): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=modprobe@fuse comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/system'
[   17.219965] audit: type=1131 audit(1653143111.419:9): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=modprobe@fuse comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/system'
[   17.284824] audit: type=1130 audit(1653143111.519:10): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-modules-load comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/li'
[   17.322223] audit: type=1130 audit(1653143111.555:11): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-remount-fs comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/'
[   17.586095] systemd-journald[446]: Received client request to flush runtime journal.
[   19.965355] 8021q: 802.1Q VLAN Support v1.8
[   20.515058] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[   20.573694] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[   21.471055] thermal_sys: Failed to find 'trips' node
[   21.477768] thermal_sys: Failed to find trip points for thermal id=0
[   21.485861] bcm2835_thermal 3f212000.thermal: Failed to register the thermal device: -22
[   21.497384] bcm2835_thermal: probe of 3f212000.thermal failed with error -22
[   21.505894] vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[   21.529479] bcm2835-rng 3f104000.rng: hwrng registered
[   21.758525] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
[   21.784767] mc: Linux media interface: v0.10
[   21.790362] bcm2835_audio bcm2835_audio: card created with 8 channels
[   21.857079] videodev: Linux video capture interface: v2.00
[   21.884985] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[   21.911819] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned.


<<< Welcome to NixOS 22.11pre-git (aarch64) - ttyAMA0 >>>

Run 'nixos-help' for the NixOS manual.

postpi-1 login: 

Ah! Ends up I had “Hardware flow control” set to on in minicom. This is incorrect for USB adapters. Hardware flow control should be off.

Now I can at least log in and poke around.

This is the boot log with linux_rpi3 as the kernel. In this case, the USB OTG hub is recognized. No network devices tho

U-Boot 2022.10 (Oct 03 2022 - 19:25:32 +0000)

DRAM:  948 MiB
RPI Compute Module 3+ (0xa02100)
Core:  75 devices, 13 uclasses, devicetree: board
MMC:   mmc@7e202000: 0
Loading Environment from FAT... WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
Unable to read "uboot.env" from mmc0:1... 
In:    serial
Out:   vidconsole
Err:   vidconsole
Net:   No ethernet found.
starting USB...
Bus usb@7e980000: USB DWC2
scanning bus usb@7e980000 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0 
WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
WARNING at drivers/mmc/bcm2835_sdhost.c:414/bcm2835_send_command()!
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:2...
Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
------------------------------------------------------------
1:      NixOS - Default
Enter choice: 1:        NixOS - Default
Retrieving file: /boot/extlinux/../nixos/dp06rnxzwbpq97w4j3kq04n7pimg89kg-initrd-linux-5.15.74-1.20221028-initrd
Retrieving file: /boot/extlinux/../nixos/1bkgs3ym52ncjnwm36kz2iswkv228xmd-linux-5.15.74-1.20221028-Image
append: init=/nix/store/fpfp36lrvkrj9i9az3rmkv9zsdhh7w0r-nixos-system-postpi-1-22.11pre-git/init console=ttyS0,115200n8 console=ttyAMA0,115200n8 console=tty0 dwc_otg.lpm_enable=0 loglevel=7
Retrieving file: /boot/extlinux/../nixos/1bkgs3ym52ncjnwm36kz2iswkv228xmd-linux-5.15.74-1.20221028-dtbs/broadcom/bcm2837-rpi-cm3.dtb
Moving Image from 0x80000 to 0x200000, end=1e90000
## Flattened Device Tree blob at 04700000
   Booting using the fdt blob at 0x4700000
   Using Device Tree in place at 0000000004700000, end 000000000470a5cc

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 5.15.74 (nixbld@localhost) (gcc (GCC) 9.5.0, GNU ld (GNU Binutils) 2.39) #1-NixOS SMP Tue Jan 1 00:00:00 UTC 1980
[    0.000000] Machine model: Raspberry Pi Compute Module 3 Plus Rev 1.0
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created CMA memory pool at 0x0000000037400000, size 64 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] NUMA: No NUMA configuration found
[    0.000000] NUMA: Faking a node at [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000] NUMA: NODE_DATA [mem 0x371ff140-0x37201fff]
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000]   Device   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000] On node 0, zone DMA: 19456 pages in unavailable ranges
[    0.000000] percpu: Embedded 28 pages/cpu s76952 r8192 d29544 u114688
[    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] Built 1 zonelists, mobility grouping on.  Total pages: 238896
[    0.000000] Policy zone: DMA
[    0.000000] Kernel command line: init=/nix/store/fpfp36lrvkrj9i9az3rmkv9zsdhh7w0r-nixos-system-postpi-1-22.11pre-git/init console=ttyS0,115200n8 console=ttyAMA0,115200n8 console=tty0 dwc_otg.lpm_enable=0 loglev7
[    0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[    0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 844636K/970752K available (12480K kernel code, 2206K rwdata, 8980K rodata, 4352K init, 1053K bss, 60580K reserved, 65536K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] ftrace: allocating 39131 entries in 153 pages
[    0.000000] ftrace: allocated 153 pages with 4 groups
[    0.000000] trace event string verifier disabled
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=384 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 100 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:     Offload RCU callbacks from CPUs: (none).
[    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.000409] Console: colour dummy device 80x25
[    0.001212] printk: console [tty0] enabled
[    0.001428] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=19200)
[    0.001486] pid_max: default: 32768 minimum: 301
[    0.002082] LSM: Security Framework initializing
[    0.002579] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.002642] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.004832] cgroup: Disabling memory control group subsystem
[    0.009109] rcu: Hierarchical SRCU implementation.
[    0.011437] EFI services will not be available.
[    0.012305] smp: Bringing up secondary CPUs ...
[    0.013979] Detected VIPT I-cache on CPU1
[    0.014073] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.016401] Detected VIPT I-cache on CPU2
[    0.016472] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.018646] Detected VIPT I-cache on CPU3
[    0.018712] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.019459] smp: Brought up 1 node, 4 CPUs
[    0.019590] SMP: Total of 4 processors activated.
[    0.019621] CPU features: detected: 32-bit EL0 Support
[    0.019650] CPU features: detected: CRC32 instructions
[    0.069502] CPU: All CPU(s) started at EL2
[    0.069781] alternatives: patching kernel code
[    0.072318] devtmpfs: initialized
[    0.094911] Enabled cp15_barrier support
[    0.094988] Enabled setend support
[    0.095026] KASLR enabled
[    0.095320] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns
[    0.095383] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.099108] pinctrl core: initialized pinctrl subsystem
[    0.100326] DMI not present or invalid.
[    0.101898] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.113798] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[    0.114189] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.114572] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.114705] audit: initializing netlink subsys (disabled)
[    0.115192] audit: type=2000 audit(0.113:1): state=initialized audit_enabled=0 res=1
[    0.116228] thermal_sys: Registered thermal governor 'step_wise'
[    0.116503] cpuidle: using governor menu
[    0.116871] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.117175] ASID allocator initialised with 32768 entries
[    0.117583] Serial: AMBA PL011 UART driver
[    0.126463] bcm2835-mbox 3f00b880.mailbox: mailbox enabled
[    0.138428] raspberrypi-firmware soc:firmware: Attached to firmware from 2022-10-26T11:10:35, variant start
[    0.139445] raspberrypi-firmware soc:firmware: Firmware hash is c72ad6b26ff40c91ef776b847436094ee63fabee
[    0.193881] fbcon: Taking over console
[    0.194441] bcm2835-dma 3f007000.dma: DMA legacy API manager, dmachans=0x1
[    0.199105] iommu: Default domain type: Translated 
[    0.199146] iommu: DMA domain TLB invalidation policy: strict mode 
[    0.200184] SCSI subsystem initialized
[    0.200580] usbcore: registered new interface driver usbfs
[    0.200734] usbcore: registered new interface driver hub
[    0.200840] usbcore: registered new device driver usb
[    0.201269] usb_phy_generic phy: supply vcc not found, using dummy regulator
[    0.201571] usb_phy_generic phy: dummy supplies not allowed for exclusive requests
[    0.201971] pps_core: LinuxPPS API ver. 1 registered
[    0.202003] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.202090] PTP clock support registered
[    0.205003] clocksource: Switched to clocksource arch_sys_counter
[    0.333576] VFS: Disk quotas dquot_6.6.0
[    0.333782] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.334138] FS-Cache: Loaded
[    0.334593] CacheFiles: Loaded
[    0.334952] simple-framebuffer 3eaf0000.framebuffer: framebuffer at 0x3eaf0000, 0x10a800 bytes
[    0.335018] simple-framebuffer 3eaf0000.framebuffer: format=a8r8g8b8, mode=656x416x32, linelength=2624
[    0.335632] Console: switching to colour frame buffer device 82x26
[    0.340466] simple-framebuffer 3eaf0000.framebuffer: fb0: simplefb registered!
[    0.359234] NET: Registered PF_INET protocol family
[    0.362892] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.371792] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear)
[    0.378554] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.385752] TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.393286] TCP bind hash table entries: 8192 (order: 5, 131072 bytes, linear)
[    0.397321] TCP: Hash tables configured (established 8192 bind 8192)
[    0.401670] MPTCP token hash table entries: 1024 (order: 2, 24576 bytes, linear)
[    0.409382] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.413344] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.417733] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.423128] RPC: Registered named UNIX socket transport module.
[    0.427050] RPC: Registered udp transport module.
[    0.430899] RPC: Registered tcp transport module.
[    0.434695] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.438518] NET: Registered PF_XDP protocol family
[    0.443043] Trying to unpack rootfs image as initramfs...
[    1.302016] Freeing initrd memory: 10868K
[    1.696024] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
[    1.705792] Initialise system trusted keyrings
[    1.709851] workingset: timestamp_bits=42 max_order=18 bucket_order=0
[    1.726265] zbud: loaded
[    1.733689] FS-Cache: Netfs 'nfs' registered for caching
[    1.738392] NFS: Registering the id_resolver key type
[    1.741858] Key type id_resolver registered
[    1.745163] Key type id_legacy registered
[    1.748536] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.751767] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    1.758764] Key type asymmetric registered
[    1.761857] Asymmetric key parser 'x509' registered
[    1.765033] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
[    1.771406] io scheduler mq-deadline registered
[    1.774418] io scheduler kyber registered
[    1.784421] bcm2708_fb soc:fb: FB found 1 display(s)
[    1.794887] bcm2708_fb soc:fb: Registered framebuffer for display 0, size 656x416
[    1.808255] bcm2835-rng 3f104000.rng: hwrng registered
[    1.812086] vc-mem: phys_addr:0x00000000 mem_base=0x00000000 mem_size:0x00000000(0 MiB)
[    1.819915] gpiomem-bcm2835 3f200000.gpiomem: Initialised: Registers at 0x3f200000
[    1.847878] brd: module loaded
[    1.866406] loop: module loaded
[    1.870430] Loading iSCSI transport class v2.0-870.
[    1.876365] usbcore: registered new interface driver lan78xx
[    1.879582] usbcore: registered new interface driver smsc95xx
[    1.882637] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[    2.086655] Core Release: 2.80a
[    2.089685] Setting default values for core params
[    2.092782] Finished setting default values for core params
[    2.296365] Using Buffer DMA mode
[    2.299352] Periodic Transfer Interrupt Enhancement - disabled
[    2.302350] Multiprocessor Interrupt Enhancement - disabled
[    2.305370] OTG VER PARAM: 0, OTG VER FLAG: 0
[    2.308375] Dedicated Tx FIFOs mode
[    2.312064] 
[    2.312079] WARN::dwc_otg_hcd_init:1072: FIQ DMA bounce buffers: virt = ffffffc008af1000 dma = 0x00000000f7490000 len=9024
[    2.320750] FIQ FSM acceleration enabled for :
[    2.320750] Non-periodic Split Transactions
[    2.320750] Periodic Split Transactions
[    2.320750] High-Speed Isochronous Endpoints
[    2.320750] Interrupt/Control Split Transaction hack enabled
[    2.335097] 
[    2.335109] WARN::hcd_init_fiq:496: MPHI regs_base at ffffffc00806d000
[    2.340576] dwc_otg 3f980000.usb: DWC OTG Controller
[    2.343273] dwc_otg 3f980000.usb: new USB bus registered, assigned bus number 1
[    2.346075] dwc_otg 3f980000.usb: irq 74, io mem 0x00000000
[    2.348878] Init: Port Power? op_state=1
[    2.351608] Init: Power Port (0)
[    2.354789] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.15
[    2.360408] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    2.363389] usb usb1: Product: DWC OTG Controller
[    2.366346] usb usb1: Manufacturer: Linux 5.15.74 dwc_otg_hcd
[    2.369314] usb usb1: SerialNumber: 3f980000.usb
[    2.373215] hub 1-0:1.0: USB hub found
[    2.376174] hub 1-0:1.0: 1 port detected
[    2.381177] usbcore: registered new interface driver usb-storage
[    2.390252] sdhci: Secure Digital Host Controller Interface driver
[    2.391745] sdhci: Copyright(c) Pierre Ossman
[    2.393458] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.395818] ledtrig-cpu: registered to indicate activity on CPUs
[    2.397609] hid: raw HID events driver (C) Jiri Kosina
[    2.399165] usbcore: registered new interface driver usbhid
[    2.400627] usbhid: USB HID core driver
[    2.402401] ashmem: initialized
[    2.407815] drop_monitor: Initializing network drop monitor service
[    2.409542] Initializing XFRM netlink socket
[    2.411673] NET: Registered PF_INET6 protocol family
[    2.416775] Segment Routing with IPv6
[    2.418325] In-situ OAM (IOAM) with IPv6
[    2.419840] NET: Registered PF_PACKET protocol family
[    2.421537] Key type dns_resolver registered
[    2.423895] registered taskstats version 1
[    2.425359] Loading compiled-in X.509 certificates
[    2.427587] Key type ._fscrypt registered
[    2.428964] Key type .fscrypt registered
[    2.430271] Key type fscrypt-provisioning registered
[    2.440122] uart-pl011 3f201000.serial: cts_event_workaround enabled
[    2.441627] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 99, base_baud = 0) is a PL011 rev2
[    3.647808] printk: console [ttyAMA0] enabled
[    3.655566] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[    3.663711] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
[    3.673456] sdhost: log_buf @ (____ptrval____) (c394c000)
[    3.728165] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
[    3.757124] of_cfs_init
[    3.761097] of_cfs_init: OK
[    3.773565] Freeing unused kernel memory: 4352K
[    3.781088] Run /init as init process
[    3.830212] mmc0: new high speed MMC card at address 0001
[    3.838204] mmcblk0: mmc0:0001 8GTF4R 7.28 GiB 
[    3.847247]  mmcblk0: p1 p2
[    3.852032] mmcblk0: mmc0:0001 8GTF4R 7.28 GiB
[    3.858450] mmcblk0boot0: mmc0:0001 8GTF4R 4.00 MiB 
[    3.867318] mmcblk0boot1: mmc0:0001 8GTF4R 4.00 MiB 
[    3.875732] mmcblk0rpmb: mmc0:0001 8GTF4R 512 KiB, chardev (243:0)
[    4.041586] device-mapper: ioctl: 4.45.0-ioctl (2021-03-22) initialised: dm-devel@redhat.com
[    4.657513] random: lvm: uninitialized urandom read (4 bytes read)
[    4.816673] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null). Quota mode: none.
[    5.551762] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null). Quota mode: none.
[    5.568423] booting system configuration /nix/store/fpfp36lrvkrj9i9az3rmkv9zsdhh7w0r-nixos-system-postpi-1-22.11pre-git
[    6.084901] random: perl: uninitialized urandom read (4 bytes read)
[    6.138430] random: perl: uninitialized urandom read (4 bytes read)
[    6.781337] random: perl: uninitialized urandom read (4 bytes read)
[    8.688143] EXT4-fs (mmcblk0p2): resizing filesystem from 533701 to 1899008 blocks
[    9.061762] EXT4-fs (mmcblk0p2): resized filesystem to 1899008
[   10.941001] random: crng init done
[   10.946153] random: 2 urandom warning(s) missed due to ratelimiting
[   12.107503] systemd[1]: System time before build time, advancing clock.
[   12.235743] systemd[1]: systemd 251.15 running in system mode (+PAM +AUDIT -SELINUX +APPARMOR +IMA +SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSET)
[   12.277076] systemd[1]: Detected architecture arm64.
[   12.300765] systemd[1]: Initializing machine ID from random generator.
[   12.548595] systemd[1]: bpf-lsm: BPF LSM hook not enabled in the kernel, BPF LSM not supported
[   12.649589] uart-pl011 3f201000.serial: no DMA platform data
[   13.374229] systemd[1]: Queued start job for default target Multi-User System.
[   13.391149] systemd[1]: Created slice Slice /system/getty.
[   13.403079] systemd[1]: Created slice Slice /system/modprobe.
[   13.415056] systemd[1]: Created slice Slice /system/serial-getty.
[   13.427254] systemd[1]: Created slice User and Session Slice.
[   13.437516] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[   13.451582] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[   13.465297] systemd[1]: Reached target Local Encrypted Volumes.
[   13.475310] systemd[1]: Reached target Containers.
[   13.484196] systemd[1]: Reached target Path Units.
[   13.493042] systemd[1]: Reached target Remote File Systems.
[   13.502643] systemd[1]: Reached target Slice Units.
[   13.511525] systemd[1]: Reached target Swaps.
[   13.526901] systemd[1]: Listening on Process Core Dump Socket.
[   13.537854] systemd[1]: Listening on Journal Audit Socket.
[   13.548103] systemd[1]: Listening on Journal Socket (/dev/log).
[   13.558830] systemd[1]: Listening on Journal Socket.
[   13.568535] systemd[1]: Listening on Userspace Out-Of-Memory (OOM) Killer Socket.
[   13.583374] systemd[1]: Listening on udev Control Socket.
[   13.593435] systemd[1]: Listening on udev Kernel Socket.
[   13.603316] systemd[1]: Huge Pages File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/mm/hugepages).
[   13.624395] systemd[1]: Mounting POSIX Message Queue File System...
[   13.640497] systemd[1]: Mounting Kernel Debug File System...
[   13.656581] systemd[1]: Starting Create List of Static Device Nodes...
[   13.672570] systemd[1]: Starting Load Kernel Module configfs...
[   13.687916] systemd[1]: Starting Load Kernel Module drm...
[   13.702896] systemd[1]: Starting Load Kernel Module fuse...
[   13.717549] systemd[1]: Starting mount-pstore.service...
[   13.727555] systemd[1]: File System Check on Root Device was skipped because of a failed condition check (ConditionPathIsReadWrite=!/).
[   13.750655] systemd[1]: Starting Journal Service...
[   13.766714] systemd[1]: Starting Load Kernel Modules...
[   13.782741] systemd[1]: Starting Remount Root and Kernel File Systems...
[   13.802075] systemd[1]: Starting Coldplug All udev Devices...
[   13.828581] systemd[1]: Mounted POSIX Message Queue File System.
[   13.840871] systemd[1]: Mounted Kernel Debug File System.
[   13.844134] fuse: init (API version 7.34)
[   13.860182] systemd[1]: Finished Create List of Static Device Nodes.
[   13.874235] systemd[1]: modprobe@configfs.service: Deactivated successfully.
[   13.884831] systemd[1]: Finished Load Kernel Module configfs.
[   13.897664] systemd[1]: modprobe@fuse.service: Deactivated successfully.
[   13.907613] systemd[1]: Finished Load Kernel Module fuse.
[   13.918357] audit: type=1130 audit(1653143109.809:2): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=modprobe@fuse comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/system'
[   13.952299] systemd[1]: modprobe@drm.service: Deactivated successfully.
[   13.955340] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[   13.961854] audit: type=1131 audit(1653143109.840:3): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=modprobe@fuse comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/system'
[   13.970511] systemd[1]: Finished Load Kernel Module drm.
[   14.020417] audit: type=1130 audit(1653143109.911:4): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=modprobe@drm comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/systemd'
[   14.021313] systemd[1]: Started Journal Service.
[   14.029079] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null). Quota mode: none.
[   14.051833] audit: type=1131 audit(1653143109.911:5): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=modprobe@drm comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/systemd'
[   14.105174] audit: type=1130 audit(1653143109.993:6): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-journald comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/sys'
[   14.143141] audit: type=1130 audit(1653143110.032:7): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-remount-fs comm="systemd" exe="/nix/store/5jysk43qzb3pdd2hfhvg9jl9nlmhn8hb-systemd-251.15/lib/s'
[   14.175959] audit: type=1334 audit(1653143110.067:8): prog-id=57 op=LOAD
[   14.176352] tun: Universal TUN/TAP device driver, 1.6
[   14.185300] audit: type=1334 audit(1653143110.067:9): prog-id=58 op=LOAD
[   14.211752] audit: type=1334 audit(1653143110.102:10): prog-id=59 op=LOAD
[   14.221737] audit: type=1334 audit(1653143110.112:11): prog-id=60 op=LOAD
[   14.291300] systemd-journald[477]: Received client request to flush runtime journal.
[   15.183013] Error: Driver 'sdhost-bcm2835' is already registered, aborting...
[   15.489527] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
[   15.490398] mc: Linux media interface: v0.10
[   15.517321] bcm2835_vc_sm_cma_probe: Videocore shared memory driver
[   15.527755] [vc_sm_connected_init]: start
[   15.538800] [vc_sm_connected_init]: installed successfully
[   15.694442] videodev: Linux video capture interface: v2.00
[   15.785717] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[   15.790820] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[   15.833121] bcm2835_isp: module is from the staging directory, the quality is unknown, you have been warned.
[   15.838298] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned.
[   15.840339] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned.
[   15.878177] bcm2835-codec bcm2835-codec: Device registered as /dev/video10
[   15.879483] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev/video13
[   15.889242] bcm2835-codec bcm2835-codec: Loaded V4L2 decode
[   15.899513] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /dev/video14
[   15.919171] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /dev/video15
[   15.931669] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/video16
[   15.938379] bcm2835-codec bcm2835-codec: Device registered as /dev/video11
[   15.943735] bcm2835-isp bcm2835-isp: Register output node 0 with media controller
[   15.952529] bcm2835-codec bcm2835-codec: Loaded V4L2 encode
[   15.964064] bcm2835-isp bcm2835-isp: Register capture node 1 with media controller
[   15.964091] bcm2835-isp bcm2835-isp: Register capture node 2 with media controller
[   15.964104] bcm2835-isp bcm2835-isp: Register capture node 3 with media controller
[   15.984813] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev/video20
[   16.020127] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /dev/video21
[   16.020556] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /dev/video22
[   16.020871] bcm2835-codec bcm2835-codec: Device registered as /dev/video12
[   16.020881] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/video23
[   16.020904] bcm2835-isp bcm2835-isp: Register output node 0 with media controller
[   16.020913] bcm2835-codec bcm2835-codec: Loaded V4L2 isp
[   16.020919] bcm2835-isp bcm2835-isp: Register capture node 1 with media controller
[   16.020934] bcm2835-isp bcm2835-isp: Register capture node 2 with media controller
[   16.021006] bcm2835-isp bcm2835-isp: Register capture node 3 with media controller
[   16.021247] bcm2835-isp bcm2835-isp: Loaded V4L2 bcm2835-isp
[   16.035735] bcm2835-codec bcm2835-codec: Device registered as /dev/video18
[   16.140409] bcm2835-codec bcm2835-codec: Loaded V4L2 image_fx
[   16.178879] bcm2835-codec bcm2835-codec: Device registered as /dev/video31
[   16.178936] bcm2835-codec bcm2835-codec: Loaded V4L2 encode_image
[   16.457007] 8021q: 802.1Q VLAN Support v1.8
[   16.650632] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[   16.677926] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[   34.275011] cam-dummy-reg: disabling


<<< Welcome to NixOS 22.11pre-git (aarch64) - ttyAMA0 >>>

Run 'nixos-help' for the NixOS manual.

postpi-1 login:

lsusb:


Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 
  bDeviceProtocol         1 Single TT
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0002 2.0 root hub
  bcdDevice            5.15
  iManufacturer           3 Linux 5.15.74 dwc_otg_hcd
  iProduct                2 DWC OTG Controller
  iSerial                 1 3f980000.usb
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0019
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0004  1x 4 bytes
        bInterval              12

Solved!

The lack of network device was because I had the USB device boot (?) cable still plugged in. I thought this only mattered if I had the jumper set. Once that cable was unplugged the ethernet device was recognized immediately.

Rock on. Now to go through the painful processes of flashing 7 of these.

1 Like

For the record, the colmena config:

The scripts I use to build / flash:

After some struggle, I’ve managed to build the image following your setup, but it does not boot and gets stuck on the rainbow screen. There is so much of misleading info, some enable uboot, some disable extlinux, some enable it, … I am getting conflicts (22.x and 23.x) around system.build.installBootLoader flag or image that does not work.

It looks like there is no RPi3B+/CM3+ config in nixos-hardware and even the raspberry/aarch64 modules are misleading (I understand the first is v1 and v2, aarch64 is 3 and 4). Also various kernels are reported not to work, even those labeled as rpi3 packages, so people seem to use latest, which is quite unreliable.

Does anyone actually have a working configuration that does not break? Is your configuration still working if you rebuild it on top of the stable/unstable?