Hi Vagrant! Thanks for the help!
Unfortunately, I don't think the extra kmods seem to have changed the situation. I'm attaching the new config.scm and the new boot log. I don't believe the lines under "loading kernel modules..." were there last time, so I think the new kmods are being successfully loaded. But you can see at the bottom that the emmc still isn't showing under /dev. I don't have a lot of experience with bootloader shells like like this, but I'm assuming I'd see something conspicuous there if the partitions were visible. I agree, I should reference something more concrete like a UUID. But there was some confusion in the IRC which of the two UUIDs shown with blkid that I should be using. And I couldn't get a boot using either of them. So I've been sticking with the /dev path. Very much appreciate the help! - Dakota Sep 8, 2026, 4:37 PM by [email protected]: > On 2026-09-08, mail--- via wrote: > >> I have a Pine64 RockPro64 single-board ARM computer. I am trying to >> get Guix running on it, and running into an odd issue. The folks in >> the IRC chat suggested I reach out to the mailing list for help. >> >> I am able to run Debian on an SD card and install Guix there. I have >> an EMMC module (linked below) that I can attach to the board while >> Debian is running. >> >> https://pine64.com/product/128gb-emmc-module/ >> >> I am able to successfully partition the module, mount the ext4 >> partition and run 'guix system init' to install. >> >> Starting the board with only the EMMC module attached, the bootloader >> starts successfully, but fails to find the installation >> partition. Running 'ls /dev' in the bourneish shell doesn't show any >> mmc devices. >> >> I tried looking through dmesg in Debian and adding any kernel modules >> that seemed relevant to initrd-modules, but got the same result. >> > > Probably just did not add enough modules ... there are some obscure ones > such as clocks and regulators that are indirect dependencies to get the > hardware fully functional... > > Here are the ones I use, which might be more than you need and although > I am booting from SCSI... pretty sure I have all the modules that used > to successfully work on microSD, which should be almost the same as > eMMC... so many tricky combinations! > > (initrd-modules > (append > (list > ;; scsi modules > "ahci" > "libata" > "sd_mod" > "scsi_common" > ;; "t10_pi" ; not present in 6.13.x? > ;; regulators and clocks > "rk808-regulator" > "clk-rk808" > "fixed" > "fan53555" > ;; "rk808" ; not present in 6.13.x? replaced by MFD_RK8XX_I2C a.k.a. > rk8xx-i2c > "rk8xx-i2c" ; replaces rk808 > "i2c-rk3x" > "pl330" > "dwc3" > "rtc-rk808" > "sdhci" > "sdhci-pltfm" > "dw_mmc" > "dw_mmc-pltfm" > ;; "dw_mmc-rockchip" > "phy_rockchip_pcie" > "pcie_rockchip_host" > "nvme"))) > >> I've also tried to modify the SCM to look for the partition by UUID instead >> of path, with no success. >> I'm attaching my config.scm and the log from u-boot. >> Any help would be appreciated! >> > > Yeah, you definitely want to use some sort of unique identifier for the > device, e.g. uuid or partition label... > > Good luck! > > >> Starting kernel ... >> >> GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main >> thread >> GC Warning: Could not open /proc/stat >> Welcome, this is GNU's early boot Guile. >> Use 'gnu.repl' for an initrd REPL. >> >> loading kernel modules... >> e2fsck: No such file or directory while trying to open /dev/mmcblk1p1 >> Possibly non-existent device? >> File system check on /dev/mmcblk1p1 failed >> > > Curiously, /dev/mmcblk1 is microSD on mine ... do you have a > /dev/mmcblk0 ? > > Though as you can probably guess, these do swap around from time to time > on kernel upgrades, so way better to use uuid or partition labels... > > live well, > vagrant >
U-Boot TPL 2025.01 (Jan 01 1970 - 00:00:01) lpddr4_set_rate: change freq to 400MHz 0, 1 Channel 0: LPDDR4, 400MHz BW=32 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=2048MB Channel 1: LPDDR4, 400MHz BW=32 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=2048MB 256B stride lpddr4_set_rate: change freq to 800MHz 1, 0 Trying to boot from BOOTROM Returning to boot ROM... U-Boot SPL 2025.01 (Jan 01 1970 - 00:00:01 +0000) Trying to boot from MMC1 load_simple_fit: Skip load 'atf-6': image size is 0! U-Boot 2025.01 (Jan 01 1970 - 00:00:01 +0000) SoC: Rockchip rk3399 Reset cause: POR Model: Pine64 RockPro64 v2.1 DRAM: 4 GiB (effective 3.9 GiB) PMIC: RK808 Core: 323 devices, 34 uclasses, devicetree: separate MMC: mmc@fe310000: 3, mmc@fe320000: 1, mmc@fe330000: 0 Loading Environment from SPIFlash... SF: Detected gd25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB *** Warning - bad CRC, using default environment In: serial,usbkbd Out: serial,vidconsole Err: serial,vidconsole Model: Pine64 RockPro64 v2.1 Net: eth0: ethernet@fe300000 Hit any key to stop autoboot: 0 Scanning for bootflows in all bootdevs Seq Method State Uclass Part Name Filename --- ----------- ------ -------- ---- ------------------------ ---------------- Scanning global bootmeth 'efi_mgr': Card did not respond to voltage select! : -110 Card did not respond to voltage select! : -110 ** File not found ubootefi.var ** Failed to load EFI variables ** Unable to write file ubootefi.var ** Failed to persist EFI variables ** Unable to write file ubootefi.var ** Failed to persist EFI variables ** Unable to write file ubootefi.var ** Failed to persist EFI variables 0 efi_mgr ready (none) 0 <NULL> ** Booting bootflow '<NULL>' with efi_mgr Loading Boot0000 'mmc 0' failed EFI boot manager: Cannot load any image Boot failed (err=-14) Scanning bootdev '[email protected]': Card did not respond to voltage select! : -110 Scanning bootdev '[email protected]': 1 extlinux ready mmc 1 [email protected] /boot/extlinux/extlinux.conf ** Booting bootflow '[email protected]_1' with extlinux Ignoring unknown command: UI GNU Guix Boot Options 1: GNU with Linux-Libre 6.17.12 Enter choice: 1: GNU with Linux-Libre 6.17.12 Retrieving file: /gnu/store/dxpqhwgfblphhs051p4c6xk8szs50b21-linux-libre-6.17.12/Image Retrieving file: /gnu/store/0p2mf32bj5ca2j1cm5d4hbnqnv72f7k2-raw-initrd/initrd.cpio.gz append: root=/dev/mmcblk1p1 gnu.system=/gnu/store/g2jpdqswj94grfnb9xkk0q44ipi1fscn-system gnu.load=/gnu/store/g2jpdqswj94grfnb9xkk0q44ipi1fscn-system/boot modprobe.blacklist=usbmouse,usbkbd quiet Retrieving file: /gnu/store/dxpqhwgfblphhs051p4c6xk8szs50b21-linux-libre-6.17.12/lib/dtbs/rockchip/rk3399-rockpro64.dtb Moving Image from 0x2080000 to 0x2200000, end=0x4660000 ## Flattened Device Tree blob at 01e00000 Booting using the fdt blob at 0x1e00000 Working FDT set to 1e00000 Loading Ramdisk to effff000, end f0ec555f ... OK Loading Device Tree to 00000000effe7000, end 00000000efffeba3 ... OK Working FDT set to effe7000 Timer summary in microseconds (13 records): Mark Elapsed Stage 0 0 reset 493,583 493,583 board_init_f 1,879,153 1,385,570 board_init_r 1,994,603 115,450 eth_common_init 2,165,884 171,281 eth_initialize 2,166,163 279 main_loop 11,139,974 8,973,811 bootm_start 11,539,991 400,017 boot_ramdisk_high 11,577,991 38,000 boot_jump_linux 11,577,993 2 start_kernel Accumulated time: 1,030,848 dm_f 13,773 of_live 17,970 dm_r Starting kernel ... GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread GC Warning: Could not open /proc/stat Welcome, this is GNU's early boot Guile. Use 'gnu.repl' for an initrd REPL. loading kernel modules... [ 2.489807] dw-apb-uart ff180000.serial: Failed to create device link (0x180) with supplier regulator-vcc3v3-sys for /serial@ff180000/bluetooth [ 2.511181] dw-apb-uart ff180000.serial: Failed to create device link (0x180) with supplier 0-001b for /serial@ff180000/bluetooth [ 2.536899] dw-apb-uart ff180000.serial: Failed to create device link (0x180) with supplier 0-001b for /serial@ff180000/bluetooth [ 3.401603] rockchip-pcie f8000000.pcie: PCIe link training gen1 timeout! [ 3.402263] rockchip-pcie f8000000.pcie: probe with driver rockchip-pcie failed with error -110 e2fsck: No such file or directory while trying to open /dev/mmcblk1p1 Possibly non-existent device? File system check on /dev/mmcblk1p1 failed Spawning Bourne-like REPL. GNU Guile 3.0.9 Copyright (C) 1995-2023 Free Software Foundation, Inc. Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. This program is free software, and you are welcome to redistribute it under certain conditions; type `,show c' for details. Enter `,help' for help. bournish@(guile-user)> ls /dev /dev/console /dev/tty2 /dev/tty50 /dev/cpu_dma_latency /dev/tty20 /dev/tty51 /dev/full /dev/tty21 /dev/tty52 /dev/gpiochip0 /dev/tty22 /dev/tty53 /dev/gpiochip1 /dev/tty23 /dev/tty54 /dev/gpiochip2 /dev/tty24 /dev/tty55 /dev/gpiochip3 /dev/tty25 /dev/tty56 /dev/gpiochip4 /dev/tty26 /dev/tty57 /dev/hwrng /dev/tty27 /dev/tty58 /dev/input /dev/tty28 /dev/tty59 /dev/kmsg /dev/tty29 /dev/tty6 /dev/kvm /dev/tty3 /dev/tty60 /dev/mapper /dev/tty30 /dev/tty61 /dev/mem /dev/tty31 /dev/tty62 /dev/null /dev/tty32 /dev/tty63 /dev/port /dev/tty33 /dev/tty7 /dev/psaux /dev/tty34 /dev/tty8 /dev/ptmx /dev/tty35 /dev/tty9 /dev/random /dev/tty36 /dev/ttyS0 /dev/rtc0 /dev/tty37 /dev/ttyS1 /dev/snapshot /dev/tty38 /dev/ttyS2 /dev/tty /dev/tty39 /dev/ttyS3 /dev/tty0 /dev/tty4 /dev/urandom /dev/tty1 /dev/tty40 /dev/userfaultfd /dev/tty10 /dev/tty41 /dev/vcs /dev/tty11 /dev/tty42 /dev/vcs1 /dev/tty12 /dev/tty43 /dev/vcsa /dev/tty13 /dev/tty44 /dev/vcsa1 /dev/tty14 /dev/tty45 /dev/vcsu /dev/tty15 /dev/tty46 /dev/vcsu1 /dev/tty16 /dev/tty47 /dev/vga_arbiter /dev/tty17 /dev/tty48 /dev/zero /dev/tty18 /dev/tty49 /dev/tty19 /dev/tty5 bournish@(guile-user)>
config-initrd-extra-anonymized.scm
Description: Lotus Screencam
