Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Booting from an Friendly Elec eMMC module with an eMMC-SD adapter fails on Raspberry Pi B #1458

Open
t-linden opened this issue Aug 17, 2020 · 10 comments

Comments

@t-linden
Copy link

t-linden commented Aug 17, 2020

A Raspberry Pi 3 B and 4 B can succesfully boot from an eMMC module with an eMMC-SD adapter. A succeful boot on a Raspberry Pi 3 B gives this output from bootcode.bin over a serial console:
"Raspberry Pi Bootcode

Found SD card, config.txt = 1, start.elf = 1, recovery.elf = 0, timeout = 0
Read File: config.txt, 1845 (bytes)

Raspberry Pi Bootcode
Read File: config.txt, 1845
Read File: start.elf, 2883204 (bytes)
Read File: fixup.dat, 6745 (bytes)
MESS:00:00:07.312064:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:07.316989:0: brfs: File read: 1845 bytes
..."

On a Raspberry Pi B the boot process fails and the messages shown by bootcode.bin are as follows:

"Raspberry Pi Bootcode

No SD card found, try USB
Trying USB
..."
If one boots without any card inserted then no messages are obviously given. Clearly the bootcode.bin file is found on the eMMC module, because otherwise the error messages could not be given.

To reproduce
Put bootcode.bin on an eMMC module on an eMMC-SD adapter and try to boot.

Expected behaviour
Also the older Raspberry Pi models would boot like the Raspberry Pi 3 B,

Actual behaviour
The boot process fails as the eMMC module is not recognized by bootcode.bin.

System
Raspberry Pi B both with 256 MB and 512 MB of RAM and Raspberry Pi A

@t-linden t-linden changed the title Booting from an eMMC module with an eMMC-SD adapter fails on Raspberry Pi 2 B and Raspberry Pi B Booting from an eMMC module with an eMMC-SD adapter fails on Raspberry Pi B Sep 3, 2020
@t-linden
Copy link
Author

t-linden commented Sep 3, 2020

If I use a 16 GB eMMC module in a Raspberry Pi 1 B then it boots fine. But if I use a 32 GB eMMC Nano Pi eMMC module then the boot fails as described in the previous comment.

I connected a Raspberry Pi SD-uSD adapter to a 512 MB Raspberry Pi 1 B with a Kingston Mobilite G2 USB 2 SD/uSD reader with a SanDisk 8 GB SD-card inserted in the Kingston card reader. If I insert a 16 GB eMMC/uSD RasPiKey module into the Raspberry Pi SD-uSD adapter then booting from the eMMC module works fine as can be seen here:

Raspberry Pi Bootcode

Found SD card, config.txt = 1, start.elf = 1, recovery.elf = 0, timeout = 0
Read File: config.txt, 1798 (bytes)

Raspberry Pi Bootcode
Read File: config.txt, 1798
Read File: start.elf, 2877988 (bytes)
Read File: fixup.dat, 6736 (bytes)
MESS:00:00:02.078719:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:02.083298:0: brfs: File read: 1798 bytes
MESS:00:00:02.163416:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:02.167941:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not define
d
MESS:00:00:02.184531:0: gpioman: gpioman_get_pin_num: pin WL_LPO_CLK not defined
MESS:00:00:02.190236:0: gpioman: gpioman_get_pin_num: pin BT_ON not defined
MESS:00:00:02.196914:0: gpioman: gpioman_get_pin_num: pin WL_ON not defined
MESS:00:00:02.375946:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not define
d
MESS:00:00:02.381758:0: *** Restart logging
MESS:00:00:02.385644:0: brfs: File read: 1798 bytes
MESS:00:00:02.420651:0: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_di
splay_state instead
MESS:00:00:02.429126:0: brfs: File read: /mfs/sd/cmdline.txt
MESS:00:00:02.433408:0: Read command line from file 'cmdline.txt':
MESS:00:00:02.439293:0: 'console=serial0,115200 console=tty1 root=PARTUUID=d9b3f
436-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait splash plymout
h.ignore-serial-consoles'
MESS:00:00:02.455805:0: brfs: File read: 160 bytes
MESS:00:00:02.463373:0: brfs: File read: /mfs/sd/bcm2708-rpi-b.dtb
MESS:00:00:02.467860:0: Loading 'bcm2708-rpi-b.dtb' to 0x100 size 0x5d9e
MESS:00:00:02.564334:0: brfs: File read: 23966 bytes
MESS:00:00:02.568407:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:02.573248:0: dtparam: audio=on
MESS:00:00:04.431517:0: gpioman: gpioman_get_pin_num: pin EMMC_ENABLE not define
d
MESS:00:00:04.460069:0: brfs: File read: 1798 bytes
MESS:00:00:04.909446:0: brfs: File read: /mfs/sd/kernel.img
MESS:00:00:04.913326:0: Loading 'kernel.img' to 0x8000 size 0x4cbd38
MESS:00:00:04.919410:0: Device tree loaded to 0x1bfe9e00 (size 0x6185)
MESS:00:00:04.926532:0: uart: Set PL011 baud rate to 103448.300000 Hz
MESS:00:00:04.933363:0: uart: Baud rate change done...
MESS:00:00:04.936791:0: uart: Baud rate change done...
MESS:00:00:04.942168:0: gpioman: gpioman_get_pin_num: pin SDCARD_CONTROL_POWER n
ot defined
MESS:00:00:06.894856:0: vchiq_core: vchiq_init_state: slot_zero = 0x5b580000, is
master = 1
MESS:00:00:06.907984:0: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_di
splay_state instead
MESS:00:00:06.921502:0: TV service:host side not connected, dropping notificatio
n 0x00000002, 0x00000002, 0x00000044
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.19.75+ (dom@buildbot) (gcc version 4.9.3 (crossto
ol-NG crosstool-ng-1.22.0-88-g8460611)) #1270 Tue Sep 24 18:38:54 BST 2019
[ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr
=00c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruc
tion cache
[ 0.000000] OF: fdt: Machine model: Raspberry Pi Model B Rev 2
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] cma: Reserved 8 MiB at 0x1b400000
[ 0.000000] random: get_random_bytes called from start_kernel+0x8c/0x49c with
crng_init=0
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 113680
[ 0.000000] Kernel command line: coherent_pool=1M bcm2708_fb.fbwidth=1920 bcm
2708_fb.fbheight=1200 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x1ec00000 vc_mem.mem

size=0x20000000 console=ttyAMA0,115200 console=tty1 root=PARTUUID=d9b3f436-02 r
ootfstype=ext4 elevator=deadline fsck.repair=yes rootwait splash plymouth.ignore
-serial-consoles
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Memory: 434424K/458752K available (6973K kernel code, 635K rwdata
, 2080K rodata, 464K init, 797K bss, 16136K reserved, 8192K cma-reserved)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0xdc800000 - 0xff800000 ( 560 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xdc000000 ( 448 MB)
[ 0.000000] modules : 0xbf000000 - 0xc0000000 ( 16 MB)
[ 0.000000] .text : 0x(ptrval) - 0x(ptrval) (6975 kB)
[ 0.000000] .init : 0x(ptrval) - 0x(ptrval) ( 464 kB)
[ 0.000000] .data : 0x(ptrval) - 0x(ptrval) ( 636 kB)
[ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 798 kB)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] ftrace: allocating 25197 entries in 74 pages
[ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[ 0.000030] sched_clock: 32 bits at 1000kHz, resolution 1000ns, wraps every 2
147483647500ns
[ 0.000092] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_
idle_ns: 1911260446275 ns
[ 0.000218] bcm2835: system timer (irq = 27)
[ 0.000633] Console: colour dummy device 80x30
[ 0.001268] console [tty1] enabled
[ 0.001348] Calibrating delay loop... 697.95 BogoMIPS (lpj=3489792)
[ 0.060397] pid_max: default: 32768 minimum: 301
[ 0.060969] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.061028] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.062466] CPU: Testing write buffer coherency: ok
[ 0.063864] Setting up static identity map for 0x8200 - 0x8238
[ 0.065358] devtmpfs: initialized
[ 0.075981] VFP support v0.3: implementor 41 architecture 1 part 20 variant b
rev 5
[ 0.076469] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, ma
x_idle_ns: 19112604462750000 ns
[ 0.076549] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.077927] pinctrl core: initialized pinctrl subsystem
[ 0.079516] NET: Registered protocol family 16
[ 0.082827] DMA: preallocated 1024 KiB pool for atomic coherent allocations
[ 0.089915] hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.
[ 0.089992] hw-breakpoint: maximum watchpoint size is 4 bytes.
[ 0.090158] Serial: AMBA PL011 UART driver
[ 0.093484] bcm2835-mbox 2000b880.mailbox: mailbox enabled
[ 0.136693] bcm2835-dma 20007000.dma: DMA legacy API manager at (ptrval), dma
chans=0x1
[ 0.139289] SCSI subsystem initialized
[ 0.139609] usbcore: registered new interface driver usbfs
[ 0.139751] usbcore: registered new interface driver hub
[ 0.140015] usbcore: registered new device driver usb
[ 0.151157] raspberrypi-firmware soc:firmware: Attached to firmware from 2019
-09-24 17:37, variant start
[ 0.161185] raspberrypi-firmware soc:firmware: Firmware hash is 6820edeee4ef3
891b95fc01cf02a7abd7ca52f17
[ 0.173589] clocksource: Switched to clocksource timer
[ 0.278090] VFS: Disk quotas dquot_6.6.0
[ 0.278276] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.278643] FS-Cache: Loaded
[ 0.279037] CacheFiles: Loaded
[ 0.298392] NET: Registered protocol family 2
[ 0.299770] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096
bytes)
[ 0.299896] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.300011] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.300134] TCP: Hash tables configured (established 4096 bind 4096)
[ 0.300327] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.300396] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.300850] NET: Registered protocol family 1
[ 0.302002] RPC: Registered named UNIX socket transport module.
[ 0.302067] RPC: Registered udp transport module.
[ 0.302099] RPC: Registered tcp transport module.
[ 0.302127] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.304432] hw perfevents: no irqs for PMU, sampling events not supported
[ 0.304556] hw perfevents: enabled with armv6_1176 PMU driver, 3 counters ava
ilable
[ 0.308714] Initialise system trusted keyrings
[ 0.309180] workingset: timestamp_bits=14 max_order=17 bucket_order=3
[ 0.324341] FS-Cache: Netfs 'nfs' registered for caching
[ 0.325707] NFS: Registering the id_resolver key type
[ 0.325808] Key type id_resolver registered
[ 0.325844] Key type id_legacy registered
[ 0.325897] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[ 0.331597] Key type asymmetric registered
[ 0.331670] Asymmetric key parser 'x509' registered
[ 0.331810] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 2
50)
[ 0.332337] io scheduler noop registered
[ 0.332395] io scheduler deadline registered (default)
[ 0.333023] io scheduler cfq registered
[ 0.333073] io scheduler mq-deadline registered (default)
[ 0.333110] io scheduler kyber registered
[ 0.335937] bcm2708_fb soc:fb: FB found 1 display(s)
[ 0.395849] Console: switching to colour frame buffer device 240x75
[ 0.441327] bcm2708_fb soc:fb: Registered framebuffer for display 0, size 192
0x1200
[ 0.446123] bcm2835-rng 20104000.rng: hwrng registered
[ 0.446897] vc-mem: phys_addr:0x00000000 mem_base=0x1ec00000 mem_size:0x20000
000(512 MiB)
[ 0.448568] vc-sm: Videocore shared memory driver
[ 0.449606] gpiomem-bcm2835 20200000.gpiomem: Initialised: Registers at 0x202
00000
[ 0.474443] brd: module loaded
[ 0.490516] loop: module loaded
[ 0.491732] Loading iSCSI transport class v2.0-870.
[ 0.493153] usbcore: registered new interface driver smsc95xx
[ 0.493449] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[ 0.521999] dwc_otg 20980000.usb: base=(ptrval)
[ 0.722827] Core Release: 2.80a
[ 0.723016] Setting default values for core params
[ 0.723259] Finished setting default values for core params
[ 0.924149] Using Buffer DMA mode
[ 0.924346] Periodic Transfer Interrupt Enhancement - disabled
[ 0.924581] Multiprocessor Interrupt Enhancement - disabled
[ 0.924806] OTG VER PARAM: 0, OTG VER FLAG: 0
[ 0.925102] Dedicated Tx FIFOs mode
[ 0.926229] WARN::dwc_otg_hcd_init:1045: FIQ DMA bounce buffers: virt = db514
000 dma = 0x5b514000 len=9024
[ 0.926649] FIQ FSM acceleration enabled for :
[ 0.926649] Non-periodic Split Transactions
[ 0.926649] Periodic Split Transactions
[ 0.926649] High-Speed Isochronous Endpoints
[ 0.926649] Interrupt/Control Split Transaction hack enabled
[ 0.927696] WARN::hcd_init_fiq:457: FIQ on core 0
[ 0.927919] WARN::hcd_init_fiq:458: FIQ ASM at c04fdd70 length 36
[ 0.928181] WARN::hcd_init_fiq:497: MPHI regs_base at dc810000
[ 0.928445] dwc_otg 20980000.usb: DWC OTG Controller
[ 0.928725] dwc_otg 20980000.usb: new USB bus registered, assigned bus number
1
[ 0.929089] dwc_otg 20980000.usb: irq 56, io mem 0x00000000
[ 0.929370] Init: Port Power? op_state=1
[ 0.929539] Init: Power Port (0)
[ 0.930177] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bc
dDevice= 4.19
[ 0.930515] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=
1
[ 0.930798] usb usb1: Product: DWC OTG Controller
[ 0.930993] usb usb1: Manufacturer: Linux 4.19.75+ dwc_otg_hcd
[ 0.931226] usb usb1: SerialNumber: 20980000.usb
[ 0.932807] hub 1-0:1.0: USB hub found
[ 0.933128] hub 1-0:1.0: 1 port detected
[ 0.946766] usbcore: registered new interface driver usb-storage
[ 0.958997] mousedev: PS/2 mouse device common for all mice
[ 0.972170] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[ 0.984518] bcm2835-cpufreq: min=700000 max=700000
[ 0.996932] sdhci: Secure Digital Host Controller Interface driver
[ 1.008453] sdhci: Copyright(c) Pierre Ossman
[ 1.020800] sdhost-bcm2835 20202000.mmc: could not get clk, deferring probe
[ 1.032959] sdhci-pltfm: SDHCI platform and OF driver helper
[ 1.045524] ledtrig-cpu: registered to indicate activity on CPUs
[ 1.057821] hidraw: raw HID events driver (C) Jiri Kosina
[ 1.070019] usbcore: registered new interface driver usbhid
[ 1.081663] usbhid: USB HID core driver
[ 1.094615] vchiq: vchiq_init_state: slot_zero = (ptrval), is_master = 0
[ 1.115632] [vc_sm_connected_init]: start
[ 1.135752] [vc_sm_connected_init]: end - returning 0
[ 1.149790] Initializing XFRM netlink socket
[ 1.161594] NET: Registered protocol family 17
[ 1.173532] Indeed it is in host mode hprt0 = 00021501
[ 1.245679] Key type dns_resolver registered
[ 1.260292] registered taskstats version 1
[ 1.272100] Loading compiled-in X.509 certificates
[ 1.291324] random: fast init done
[ 1.311557] uart-pl011 20201000.serial: cts_event_workaround enabled
[ 1.323545] 20201000.serial: ttyAMA0 at MMIO 0x20201000 (irq = 81, base_baud
= 0) is a PL011 rev2
[ 1.436487] usb 1-1: new high-speed USB device number 2 using dwc_otg
[ 1.436749] Indeed it is in host mode hprt0 = 00001101
[ 1.746380] usb 1-1: New USB device found, idVendor=0424, idProduct=9512, bcd
Device= 2.00
[ 1.746424] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 1.747972] hub 1-1:1.0: USB hub found
[ 1.748192] hub 1-1:1.0: 3 ports detected
[ 2.342342] console [ttyAMA0] enabled
[ 2.363899] sdhost: log_buf @ (ptrval) (5b513000)
[ 2.429757] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
[ 2.449885] of_cfs_init
[ 2.485082] of_cfs_init: OK
[ 2.504846] Waiting for root device PARTUUID=d9b3f436-02...
[ 2.568780] mmc0: new high speed MMC card at address 0001
[ 2.588240] mmcblk0: mmc0:0001 AJTD4R 14.6 GiB
[ 2.604524] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[ 2.624512] mmcblk0boot0: mmc0:0001 AJTD4R partition 1 4.00 MiB
[ 2.643397] mmcblk0boot1: mmc0:0001 AJTD4R partition 2 4.00 MiB
[ 2.661421] mmcblk0rpmb: mmc0:0001 AJTD4R partition 3 4.00 MiB, chardev (246:
0)
[ 2.683543] mmcblk0: p1 p2
[ 2.742903] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. O
pts: (null)
[ 2.763502] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
[ 2.783387] devtmpfs: mounted
[ 2.798848] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00, b
cdDevice= 2.00
[ 2.819236] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber
=0
[ 2.843380] Freeing unused kernel memory: 464K
[ 2.859981] This architecture does not have kernel memory protection.
[ 2.878462] Run /sbin/init as init process
[ 2.898705] smsc95xx v1.0.6
[ 3.044252] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-20980000.usb-
1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:d1:6a:d2
[ 3.173765] usb 1-1.3: new high-speed USB device number 4 using dwc_otg
[ 3.430429] usb 1-1.3: New USB device found, idVendor=090c, idProduct=6300, b
cdDevice= 2.00
[ 3.451557] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber
=3
[ 3.471142] usb 1-1.3: Product: Kingston Reader
[ 3.487963] usb 1-1.3: Manufacturer: Kingston Reader
[ 3.505218] usb 1-1.3: SerialNumber: AA00000000132745
[ 3.528528] usb-storage 1-1.3:1.0: USB Mass Storage device detected
[ 3.549634] scsi host0: usb-storage 1-1.3:1.0
[ 3.871944] systemd[1]: System time before build time, advancing clock.
[ 4.058390] NET: Registered protocol family 10
[ 4.078404] Segment Routing with IPv6
[ 4.176853] systemd[1]: systemd 241 running in system mode. (+PAM +AUDIT +SEL
INUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +
XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybr
id)
[ 4.226339] systemd[1]: Detected architecture arm.
[ 4.300956] systemd[1]: Set hostname to .
[ 4.330914] systemd[1]: Failed to bump fs.file-max, ignoring: Invalid argumen
t
[ 5.931546] scsi 0:0:0:0: Direct-Access Kingston Reader SD/MS 0200 PQ
: 0 ANSI: 0 CCS
[ 5.976401] sd 0:0:0:0: [sda] 15523840 512-byte logical blocks: (7.95 GB/7.40
GiB)
[ 6.024606] sd 0:0:0:0: [sda] Write Protect is off
[ 6.099309] scsi 0:0:0:1: Direct-Access Kingston Reader MicSD/M2 0200 PQ
: 0 ANSI: 0 CCS
[ 6.122452] sd 0:0:0:0: [sda] No Caching mode page found
[ 6.141591] sd 0:0:0:0: [sda] Assuming drive cache: write through
[ 6.189723] sd 0:0:0:1: [sdb] Attached SCSI removable disk
[ 6.243805] sda: sda1 sda2
[ 6.287517] sd 0:0:0:0: [sda] Attached SCSI removable disk
[ 6.314167] uart-pl011 20201000.serial: no DMA platform data
[ 6.759933] systemd[1]: File /lib/systemd/system/systemd-journald.service:12
configures an IP firewall (IPAddressDeny=any), but the local system does not sup
port BPF/cgroup based firewalling.
[ 6.791581] systemd[1]: Proceeding WITHOUT firewalling in effect! (This warni
ng is only shown for the first loaded unit using IP firewalling.)
[ 7.848810] random: systemd: uninitialized urandom read (16 bytes read)
[ 7.899921] random: systemd: uninitialized urandom read (16 bytes read)
[ 7.932497] systemd[1]: Created slice system-serial\x2dgetty.slice.
[ 7.970768] random: systemd: uninitialized urandom read (16 bytes read)
[ 8.008328] systemd[1]: Listening on Syslog Socket.
[ 8.046142] systemd[1]: Listening on udev Kernel Socket.
[ 8.084107] systemd[1]: Listening on initctl Compatibility Named Pipe.
[ 8.734931] i2c /dev entries driver
[ 9.255682] systemd[1]: Listening on udev Control Socket.
[ 9.356316] systemd[1]: Starting udev Coldplug all Devices...
[ 9.483781] systemd[1]: Listening on fsck to fsckd communication Socket.
[ 9.582334] systemd[1]: Listening on Journal Socket (/dev/log).
[ 9.746611] systemd[1]: Starting Journal Service...
[ 9.980663] systemd[1]: Starting Restore / save the current clock...
[ 10.343892] systemd[1]: Started Load Kernel Modules.
[ 10.560009] systemd[1]: Mounted RPC Pipe File System.
[ 10.693988] systemd[1]: Started Create list of required static device nodes f
or the current kernel.
[ 10.803479] systemd[1]: Mounted Kernel Debug File System.
MESS:00:00:24.112233:0: brfs: File read: 5029176 bytes

Raspbian GNU/Linux 10 raspberrypi ttyAMA0

raspberrypi login:

If I I only change the eMMC module on this system to a 32 GB Nano Pi eMMC module, then booting from the eMMC module fails and bootcode.bin does instead an USB boot from the Kingston card reader which has the SD-card inserted. From the Linux boot log it can be seen that the Nano Pi eMMC module is detected normally, so this is not a problem with the Raspberry Pi SD-uSD card adapter, but rather with bootcode.bin being unable to read the files from the Nano Pi eMMC module. But the Nano Pi eMMC modules I have can be booted on the Raspberry Pi 4 B, 3 B and 2 B models. Here is the log where the eMMC boot from a Nano Pi module fails:

Raspberry Pi Bootcode

No SD card found, try USB
Trying USB
Hub device found at addr 4, enumerating HUB
Initialise hub
Found 3 ports, multi_tt = 1
Setting interface 0
Enabling PORT POWER on port 1
Enabling PORT POWER on port 2
Enabling PORT POWER on port 3
Waiting for devices to respond to reset
Found device on port 1
Found highspeed device
Device found: type = Ethernet adapter, addr = 5
Found device on port 3
Found highspeed device
Device found: type = Mass storage, addr = 6
Trying booting from MSD device addr 6
Retrieving the config descriptor
Found ep_in = 00000001, ep_out = 00000002
GetMaxLun returned 0, max_lun = 1
Sending and retrying TEST_UNIT_READY
Sending SCSI_COMMAND_INQUIRY
Sending READ_CAPACITY
init_msd returned 0
USB device configuration set
Initialised mass storage, block size = 512, block count = 15523840
MBR read and decoded successfully
FAT32 partition decoded successfully
start.elf found in first partition on USB MSD, booting
Read File: config.txt, 1481 (bytes)

Raspberry Pi Bootcode
Read File: config.txt, 1481
Read File: start.elf, 3001440 (bytes)
Read File: fixup.dat, 7274 (bytes)
MESS:00:00:04.572910:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:04.577574:0: brfs: File read: 1481 bytes
MESS:00:00:04.659670:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:04.664205:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not define
d
MESS:00:00:04.682582:0: brfs: File read: 1481 bytes
MESS:00:00:04.690874:0: gpioman: gpioman_get_pin_num: pin WL_LPO_CLK not defined
MESS:00:00:04.696581:0: gpioman: gpioman_get_pin_num: pin BT_ON not defined
MESS:00:00:04.703259:0: gpioman: gpioman_get_pin_num: pin WL_ON not defined
MESS:00:00:04.732222:0: gpioman: gpioman_get_pin_num: pin LEDS_PWR_OK not define
d
MESS:00:00:04.738044:0: *** Restart logging
MESS:00:00:04.774270:0: HDMI0: hdmi_pixel_encoding: 162000000
MESS:00:00:04.779250:0: dtb_file 'bcm2708-rpi-b.dtb'
MESS:00:00:04.823567:0: brfs: File read: /mfs/sd/bcm2708-rpi-b.dtb
MESS:00:00:04.828049:0: Loading 'bcm2708-rpi-b.dtb' to 0x100 size 0x61c9
MESS:00:00:04.855318:0: brfs: File read: 25033 bytes
MESS:00:00:05.187491:0: brfs: File read: /mfs/sd/overlays/overlay_map.dtb
MESS:00:00:05.289746:0: brfs: File read: 1371 bytes
MESS:00:00:05.332010:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:05.346356:0: brfs: File read: 1481 bytes
MESS:00:00:05.362635:0: brfs: File read: /mfs/sd/cmdline.txt
MESS:00:00:05.366612:0: Read command line from file 'cmdline.txt':
MESS:00:00:05.372498:0: 'dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyA
MA0,115200 console=tty1 root=PARTUUID=000dbfc6-02 rootfstype=ext4 rootdelay=5 el
evator=deadline rootwait'
MESS:00:00:07.249512:0: gpioman: gpioman_get_pin_num: pin EMMC_ENABLE not define
d
MESS:00:00:07.285364:0: gpioman: gpioman_get_pin_num: pin WL_ON not defined
MESS:00:00:07.297223:0: brfs: File read: 160 bytes
MESS:00:00:09.021008:0: brfs: File read: /mfs/sd/kernel.img
MESS:00:00:09.024888:0: Loading 'kernel.img' to 0x8000 size 0x5010e8
MESS:00:00:09.030973:0: Device tree loaded to 0x17fe9a00 (size 0x65e1)
MESS:00:00:09.037255:0: uart: Set PL011 baud rate to 103448.300000 Hz
MESS:00:00:09.044928:0: uart: Baud rate change done...
MESS:00:00:09.048357:0: uart: Baud rate change done...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 5.4.51+ (dom@buildbot) (gcc version 4.9.3 (crosstoo
l-NG crosstool-ng-1.22.0-88-g8460611)) #1327 Thu Jul 23 10:53:06 BST 2020
[ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr
=00c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruc
tion cache
[ 0.000000] OF: fdt: Machine model: Raspberry Pi Model B Rev 2
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] Reserved memory: created CMA memory pool at 0x13c00000, size 64 M
iB
[ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id share
d-dma-pool
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 97536
[ 0.000000] Kernel command line: coherent_pool=1M snd_bcm2835.enable_compat_a
lsa=0 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_headphones=1 bcm2708_fb.fbwid
th=1920 bcm2708_fb.fbheight=1200 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x1ec00000
vc_mem.mem_size=0x20000000 dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=t
tyAMA0,115200 console=tty1 root=PARTUUID=000dbfc6-02 rootfstype=ext4 rootdelay=5
elevator=deadline rootwait
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, l
inear)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, li
near)
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] Memory: 312088K/393216K available (7474K kernel code, 694K rwdata
, 2384K rodata, 480K init, 799K bss, 15592K reserved, 65536K cma-reserved)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] ftrace: allocating 26388 entries in 52 pages
[ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[ 0.000000] random: get_random_bytes called from start_kernel+0x2a8/0x4c4 wit
h crng_init=0
[ 0.000023] sched_clock: 32 bits at 1000kHz, resolution 1000ns, wraps every 2
147483647500ns
[ 0.000088] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_
idle_ns: 1911260446275 ns
[ 0.000203] bcm2835: system timer (irq = 27)
[ 0.000813] Console: colour dummy device 80x30
[ 0.001392] printk: console [tty1] enabled
[ 0.001485] Calibrating delay loop... 697.95 BogoMIPS (lpj=3489792)
[ 0.050397] pid_max: default: 32768 minimum: 301
[ 0.050904] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linea
r)
[ 0.050978] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes,
linear)
[ 0.052599] CPU: Testing write buffer coherency: ok
[ 0.054318] Setting up static identity map for 0x8200 - 0x8238
[ 0.055440] devtmpfs: initialized
[ 0.068264] VFP support v0.3: implementor 41 architecture 1 part 20 variant b
rev 5
[ 0.068810] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, ma
x_idle_ns: 19112604462750000 ns
[ 0.068900] futex hash table entries: 256 (order: -1, 3072 bytes, linear)
[ 0.077715] pinctrl core: initialized pinctrl subsystem
[ 0.079661] NET: Registered protocol family 16
[ 0.084502] DMA: preallocated 1024 KiB pool for atomic coherent allocations
[ 0.092930] hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.
[ 0.093007] hw-breakpoint: maximum watchpoint size is 4 bytes.
[ 0.093210] Serial: AMBA PL011 UART driver
[ 0.097079] bcm2835-mbox 2000b880.mailbox: mailbox enabled
[ 0.120850] raspberrypi-firmware soc:firmware: Attached to firmware from 2020
-07-17 11:04, variant start
[ 0.130873] raspberrypi-firmware soc:firmware: Firmware hash is 21a15cb094f41
c7506ad65d2cb9b29c550693057
[ 0.193376] bcm2835-dma 20007000.dma: DMA legacy API manager, dmachans=0x1
[ 0.196651] SCSI subsystem initialized
[ 0.196999] usbcore: registered new interface driver usbfs
[ 0.197180] usbcore: registered new interface driver hub
[ 0.197470] usbcore: registered new device driver usb
[ 0.200342] clocksource: Switched to clocksource timer
[ 1.457327] VFS: Disk quotas dquot_6.6.0
[ 1.457533] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 1.457923] FS-Cache: Loaded
[ 1.458360] CacheFiles: Loaded
[ 1.478710] thermal_sys: Registered thermal governor 'step_wise'
[ 1.479407] NET: Registered protocol family 2
[ 1.481084] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096
bytes, linear)
[ 1.481202] TCP established hash table entries: 4096 (order: 2, 16384 bytes,
linear)
[ 1.481332] TCP bind hash table entries: 4096 (order: 2, 16384 bytes, linear)
[ 1.481460] TCP: Hash tables configured (established 4096 bind 4096)
[ 1.481674] UDP hash table entries: 256 (order: 0, 4096 bytes, linear)
[ 1.481750] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear)
[ 1.482222] NET: Registered protocol family 1
[ 1.483640] RPC: Registered named UNIX socket transport module.
[ 1.483712] RPC: Registered udp transport module.
[ 1.483748] RPC: Registered tcp transport module.
[ 1.483781] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 1.485386] hw perfevents: no irqs for PMU, sampling events not supported
[ 1.485514] hw perfevents: enabled with armv6_1176 PMU driver, 3 counters ava
ilable
[ 1.490222] Initialise system trusted keyrings
[ 1.491071] workingset: timestamp_bits=30 max_order=17 bucket_order=0
[ 1.506552] FS-Cache: Netfs 'nfs' registered for caching
[ 1.508189] NFS: Registering the id_resolver key type
[ 1.508304] Key type id_resolver registered
[ 1.508346] Key type id_legacy registered
[ 1.508404] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[ 1.510718] Key type asymmetric registered
[ 1.510791] Asymmetric key parser 'x509' registered
[ 1.510919] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 2
49)
[ 1.510974] io scheduler mq-deadline registered
[ 1.511011] io scheduler kyber registered
[ 1.514530] bcm2708_fb soc:fb: FB found 1 display(s)
[ 1.592530] Console: switching to colour frame buffer device 240x75
[ 1.637439] bcm2708_fb soc:fb: Registered framebuffer for display 0, size 192
0x1200
[ 1.647138] bcm2835-rng 20104000.rng: hwrng registered
[ 1.648113] vc-mem: phys_addr:0x00000000 mem_base=0x1ec00000 mem_size:0x20000
000(512 MiB)
[ 1.650098] vc-sm: Videocore shared memory driver
[ 1.651505] gpiomem-bcm2835 20200000.gpiomem: Initialised: Registers at 0x202
00000
[ 1.677652] brd: module loaded
[ 1.696530] loop: module loaded
[ 1.699384] Loading iSCSI transport class v2.0-870.
[ 1.700992] usbcore: registered new interface driver smsc95xx
[ 1.701299] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[ 2.430106] Core Release: 2.80a
[ 2.430306] Setting default values for core params
[ 2.430663] Finished setting default values for core params
[ 2.500350] random: fast init done
[ 2.631934] Using Buffer DMA mode
[ 2.632123] Periodic Transfer Interrupt Enhancement - disabled
[ 2.632364] Multiprocessor Interrupt Enhancement - disabled
[ 2.632591] OTG VER PARAM: 0, OTG VER FLAG: 0
[ 2.632916] Dedicated Tx FIFOs mode
[ 2.634150] WARN::dwc_otg_hcd_init:1074: FIQ DMA bounce buffers: virt = d3d14
000 dma = 0x53d14000 len=9024
[ 2.634558] FIQ FSM acceleration enabled for :
[ 2.634558] Non-periodic Split Transactions
[ 2.634558] Periodic Split Transactions
[ 2.634558] High-Speed Isochronous Endpoints
[ 2.634558] Interrupt/Control Split Transaction hack enabled
[ 2.635520] WARN::hcd_init_fiq:457: FIQ on core 0
[ 2.635741] WARN::hcd_init_fiq:458: FIQ ASM at c05500d4 length 36
[ 2.635997] WARN::hcd_init_fiq:497: MPHI regs_base at d8810000
[ 2.636262] dwc_otg 20980000.usb: DWC OTG Controller
[ 2.636546] dwc_otg 20980000.usb: new USB bus registered, assigned bus number
1
[ 2.636967] dwc_otg 20980000.usb: irq 56, io mem 0x00000000
[ 2.637254] Init: Port Power? op_state=1
[ 2.637427] Init: Power Port (0)
[ 2.638296] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bc
dDevice= 5.04
[ 2.638644] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=
1
[ 2.638937] usb usb1: Product: DWC OTG Controller
[ 2.639138] usb usb1: Manufacturer: Linux 5.4.51+ dwc_otg_hcd
[ 2.639373] usb usb1: SerialNumber: 20980000.usb
[ 2.641274] hub 1-0:1.0: USB hub found
[ 2.641654] hub 1-0:1.0: 1 port detected
[ 2.655968] usbcore: registered new interface driver usb-storage
[ 2.668505] mousedev: PS/2 mouse device common for all mice
[ 2.682746] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[ 2.695126] bcm2835-cpufreq: min=700000 max=1000000
[ 2.708514] sdhci: Secure Digital Host Controller Interface driver
[ 2.720235] sdhci: Copyright(c) Pierre Ossman
[ 2.733242] sdhost-bcm2835 20202000.mmc: could not get clk, deferring probe
[ 2.745479] sdhci-pltfm: SDHCI platform and OF driver helper
[ 2.758171] ledtrig-cpu: registered to indicate activity on CPUs
[ 2.770997] hidraw: raw HID events driver (C) Jiri Kosina
[ 2.783300] usbcore: registered new interface driver usbhid
[ 2.795092] usbhid: USB HID core driver
[ 2.808468] vchiq: vchiq_init_state: slot_zero = (ptrval)
[ 2.823037] [vc_sm_connected_init]: start
[ 2.837800] [vc_sm_connected_init]: end - returning 0
[ 2.852818] Initializing XFRM netlink socket
[ 2.864657] NET: Registered protocol family 17
[ 2.876475] Indeed it is in host mode hprt0 = 00021501
[ 2.948526] Key type dns_resolver registered
[ 2.962348] registered taskstats version 1
[ 2.974167] Loading compiled-in X.509 certificates
[ 3.011298] uart-pl011 20201000.serial: cts_event_workaround enabled
[ 3.023358] 20201000.serial: ttyAMA0 at MMIO 0x20201000 (irq = 81, base_baud
= 0) is a PL011 rev2
[ 3.139896] usb 1-1: new high-speed USB device number 2 using dwc_otg
[ 3.140203] Indeed it is in host mode hprt0 = 00001101
[ 3.443778] usb 1-1: New USB device found, idVendor=0424, idProduct=9512, bcd
Device= 2.00
[ 3.443831] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 3.445602] hub 1-1:1.0: USB hub found
[ 3.445837] hub 1-1:1.0: 3 ports detected
[ 4.077733] printk: console [ttyAMA0] enabled
[ 4.098132] KGDB: Registered I/O driver kgdboc
[ 4.115338] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains drive
r
[ 4.139450] sdhost: log_buf @ (ptrval) (53d13000)
[ 4.206745] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
[ 4.228616] of_cfs_init
[ 4.264143] of_cfs_init: OK
[ 4.283334] Waiting 5 sec before mounting root device...
[ 4.370455] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[ 4.392232] mmc0: new high speed MMC card at address 0001
[ 4.411445] mmcblk0: mmc0:0001 BJTD4R 29.1 GiB
[ 4.428283] mmcblk0boot0: mmc0:0001 BJTD4R partition 1 4.00 MiB
[ 4.446519] mmcblk0boot1: mmc0:0001 BJTD4R partition 2 4.00 MiB
[ 4.464533] mmcblk0rpmb: mmc0:0001 BJTD4R partition 3 4.00 MiB, chardev (245:
0)
[ 4.487282] mmcblk0: p1 p2
[ 4.511162] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00, b
cdDevice= 2.00
[ 4.531475] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber
=0
[ 4.554187] smsc95xx v1.0.6
[ 4.657480] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-20980000.usb-
1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:d1:6a:d2
[ 4.780472] usb 1-1.3: new high-speed USB device number 4 using dwc_otg
[ 5.037136] usb 1-1.3: New USB device found, idVendor=090c, idProduct=6300, b
cdDevice= 2.00
[ 5.057746] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber
=3
[ 5.077189] usb 1-1.3: Product: Kingston Reader
[ 5.093827] usb 1-1.3: Manufacturer: Kingston Reader
[ 5.110944] usb 1-1.3: SerialNumber: AA00000000132745
[ 5.129731] usb-storage 1-1.3:1.0: USB Mass Storage device detected
[ 5.149895] scsi host0: usb-storage 1-1.3:1.0
[ 7.463101] scsi 0:0:0:0: Direct-Access Kingston Reader SD/MS 0200 PQ
: 0 ANSI: 0 CCS
[ 7.542868] sd 0:0:0:0: [sda] 15523840 512-byte logical blocks: (7.95 GB/7.40
GiB)
[ 7.563299] scsi 0:0:0:1: Direct-Access Kingston Reader MicSD/M2 0200 PQ
: 0 ANSI: 0 CCS
[ 7.585201] sd 0:0:0:0: [sda] Write Protect is off
[ 7.605758] sd 0:0:0:0: [sda] No Caching mode page found
[ 7.623785] sd 0:0:0:0: [sda] Assuming drive cache: write through
[ 7.648484] sd 0:0:0:1: [sdb] Attached SCSI removable disk
[ 7.681219] sda: sda1 sda2
[ 7.702321] sd 0:0:0:0: [sda] Attached SCSI removable disk
[ 9.399434] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts:
(null)
[ 9.420013] VFS: Mounted root (ext4 filesystem) readonly on device 8:2.
[ 9.441316] devtmpfs: mounted
[ 9.464182] Freeing unused kernel memory: 480K
[ 9.481321] This architecture does not have kernel memory protection.
[ 9.500382] Run /sbin/init as init process
[ 10.650106] systemd[1]: System time before build time, advancing clock.
[ 10.867090] NET: Registered protocol family 10
[ 10.887726] Segment Routing with IPv6
[ 11.010798] systemd[1]: systemd 241 running in system mode. (+PAM +AUDIT +SEL
INUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +
XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybr
id)
[ 11.061569] systemd[1]: Detected architecture arm.
[ 11.178586] systemd[1]: Set hostname to .
[ 13.117530] uart-pl011 20201000.serial: no DMA platform data
[ 15.129045] random: systemd: uninitialized urandom read (16 bytes read)
[ 15.276861] systemd[1]: Condition check resulted in Journal Audit Socket bein
g skipped.
[ 15.299221] random: systemd: uninitialized urandom read (16 bytes read)
[ 15.325984] systemd[1]: Created slice system-getty.slice.
[ 15.363617] random: systemd: uninitialized urandom read (16 bytes read)
[ 15.386318] systemd[1]: Set up automount Arbitrary Executable File Formats Fi
le System Automount Point.
[ 15.427512] systemd[1]: Reached target Swap.
[ 15.465640] systemd[1]: Created slice system-systemd\x2dfsck.slice.
[ 15.505972] systemd[1]: Created slice system-serial\x2dgetty.slice.
[ 15.544834] systemd[1]: Listening on udev Kernel Socket.
[ 16.033531] systemd[1]: Condition check resulted in Huge Pages File System be
ing skipped.
[ 16.208330] systemd[1]: Mounting RPC Pipe File System...
[ 16.487962] systemd[1]: Mounting Temporary Directory...
[ 16.523519] snd_bcm2835: module is from the staging directory, the quality is
unknown, you have been warned.
[ 16.691297] fuse: init (API version 7.31)
[ 16.842150] systemd[1]: Mounting POSIX Message Queue File System...
[ 17.056186] systemd[1]: Starting Restore / save the current clock...
[ 17.183284] systemd[1]: Condition check resulted in Set Up Additional Binary
Formats being skipped.
[ 17.263429] systemd[1]: Started Forward Password Requests to Wall Directory W
atch.
[ 17.368838] systemd[1]: Listening on initctl Compatibility Named Pipe.
[ 17.488635] systemd[1]: Starting Create list of required static device nodes
for the current kernel...
[ 17.580523] random: crng init done
[ 17.580542] random: 7 urandom warning(s) missed due to ratelimiting
[ 17.713752] systemd[1]: Created slice User and Session Slice.
[ OK ] Started Show Plymouth Boot Screen.
[ OK ] Started Forward Password Requests to Plymouth Directory Watch.
[ OK ] Reached target Local Encrypted Volumes.
[ OK ] Reached target Paths.
[ OK ] Found device /dev/ttyAMA0.
[ OK ] Found device Reader_SD_MS 1.
Starting File System Check on /dev/disk/by-partuuid/000dbfc6-01...
[ OK ] Started File System Check on /dev/disk/by-partuuid/000dbfc6-01.
Mounting /boot...
[ OK ] Mounted /boot.
[ OK ] Reached target Local File Systems.
Starting Preprocess NFS configuration...
Starting Set console font and keymap...
Starting Raise network interfaces...
Starting Tell Plymouth To Write Out Runtime Data...
Starting Create Volatile Files and Directories...
[ OK ] Started Preprocess NFS configuration.
[ OK ] Started Set console font and keymap.
[ OK ] Started Tell Plymouth To Write Out Runtime Data.
[ OK ] Reached target NFS client services.
[ OK ] Started Create Volatile Files and Directories.
Starting Update UTMP about System Boot/Shutdown...
Starting RPC bind portmap service...
[ OK ] Started RPC bind portmap service.
[ OK ] Reached target Remote File Systems (Pre).
[ OK ] Reached target Remote File Systems.
[ OK ] Reached target RPC Port Mapper.
[ OK ] Started Update UTMP about System Boot/Shutdown.
[ OK ] Reached target System Initialization.
[ OK ] Listening on D-Bus System Message Bus Socket.
[ OK ] Started Daily man-db regeneration.
[ OK ] Started Daily apt download activities.
[ OK ] Started Daily apt upgrade and clean activities.
[ OK ] Started Daily rotation of log files.
[ OK ] Started Daily Cleanup of Temporary Directories.
[ OK ] Reached target Timers.
[ OK ] Listening on triggerhappy.socket.
[ OK ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
[ OK ] Reached target Sockets.
[ OK ] Reached target Basic System.
Starting LSB: Start Motion detection...
Starting Restore /etc/resolv.conf if the system crashed before the ppp
link was shut down...
Starting Login Service...
Starting dphys-swapfile - set up, mount/unmount, and delete a swap file
...
Starting LSB: Switch to ondemand cpu governor (unless shift key is pres
sed)...
Starting triggerhappy global hotkey daemon...
[ OK ] Started D-Bus System Message Bus.
Starting WPA supplicant...
Starting Modem Manager...
Starting Network Manager...
Starting System Logging Service...
[ OK ] Started Regular background program processing daemon.
Starting Avahi mDNS/DNS-SD Stack...
[ OK ] Started Raise network interfaces.
[ OK ] Started Restore /etc/resolv.conf if the system crashed before the ppp l
ink was shut down.
[ OK ] Started System Logging Service.
[ OK ] Started Login Service.
[ OK ] Started WPA supplicant.
[ OK ] Started triggerhappy global hotkey daemon.
[ OK ] Started LSB: Start Motion detection.
[ OK ] Started LSB: Switch to ondemand cpu governor (unless shift key is press
ed).
[ OK ] Started dphys-swapfile - set up, mount/unmount, and delete a swap file.
[ OK ] Started Avahi mDNS/DNS-SD Stack.
Starting Authorization Manager...
[ OK ] Started Network Manager.
Starting Network Manager Wait Online...
[ OK ] Reached target Network.
Starting OpenBSD Secure Shell server...
Starting Permit User Sessions...
Starting Network Time Service...
[ OK ] Started Authorization Manager.
Starting Hostname Service...
[ OK ] Started Permit User Sessions.
[ OK ] Started Network Time Service.
[ OK ] Started Modem Manager.
[ OK ] Started OpenBSD Secure Shell server.
[ OK ] Started Hostname Service.
Starting Network Manager Script Dispatcher Service...
[ OK ] Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch.
[ OK ] Started Network Manager Script Dispatcher Service.
[ OK ] Started Network Manager Wait Online.
[ OK ] Reached target Network is Online.
Starting /etc/rc.local Compatibility...
Starting LSB: Start/stop apache2 web server...
Starting LSB: Brings up/down network automatically...
[FAILED] Failed to start LSB: Start/stop apache2 web server.
See 'systemctl status apache2.service' for details.
[ OK ] Created slice User Slice of UID 1000.
Starting User Runtime Directory /run/user/1000...
[ OK ] Started LSB: Brings up/down network automatically.
[ OK ] Started User Runtime Directory /run/user/1000.
Starting User Manager for UID 1000...
[ OK ] Started User Manager for UID 1000.
[ OK ] Started Session c1 of user pi.
[ 53.183357] rc.local[390]: /home/pi/motion-mmal/motion: error while loading s
hared libraries: libavformat.so.53: cannot open shared object file: No such file
or directory
[FAILED] Failed to start /etc/rc.local Compatibility.
See 'systemctl status rc-local.service' for details.
Starting Hold until boot process finishes up...
Starting Terminate Plymouth Boot Screen...

Raspbian GNU/Linux 10 rpicam ttyAMA0

rpicam login: pi
Password:

@t-linden t-linden changed the title Booting from an eMMC module with an eMMC-SD adapter fails on Raspberry Pi B Booting from an Friendly Elec eMMC module with an eMMC-SD adapter fails on Raspberry Pi B Jan 12, 2021
@t-linden
Copy link
Author

I have a few Friendly Elec 32 GB eMMC modules that will not boot on the Raspberry Pi B versions with 256 MB and 512 MB RAM. Being able to use these eMMC modules on the older Raspberry Pi B versions would be useful to have faster random I/O compared to a standard SD-card.The problem seems to be a timing issue in bootcode.bin as shown above where the eMMC module can be accessed without problem from the Linux kernel when only the bootcode.bin has been provided from a USB-device. If needed I could send one of the problematic eMMC modules for testing.

I borrowed from an Odroid-N2 an 128 GB eMMC module and tested it as well in the Raspberry Pi:s that I have. That eMMC module did boot also on the Raspberry Pi B versions with 256 MB and 512 MB RAM.

Could you comment on this Friendly Elec eMMC boot problem @timg236 ?

@timg236
Copy link

timg236 commented Jan 12, 2021

For Pi4 boot issues please can you raise an rpi-eeprom but with the log from BOOT_UART=1 to see whether the EMMC is detected at all by the Raspberry Pi. Can Linux mount it if you boot from USB?

@t-linden
Copy link
Author

The issue here is specific to the Raspberry Pi 1 A, 256 MB, Raspberry Pi 1 B rev. 2, 512 MB, Raspberry Pi 1 B rev. 2, 256 MB, Raspberry Pi 1 B rev. 1, 256 MB and is only seen with the 32 GB Friendly Elec eMMC module with a corresponging uSD-adaptor in that these modules will not boot on these older Raspberry Pi models. I have tried most of the available bootcode.bin versions, but I have not found a version that works. Shown above is the logs where I put bootcode.bin on a USB-reader and was able to access the 32 GB Frienddly Elec eMMC module from Linux on a Raspberry Pi 1 B. The Friendly Elec 32 GB eMMC modules boots as expected on the more recent models that I have: Raspberry Pi 4 B, Raspberry Pi 3 B and Raspberry Pi 2 B.

I also have a 16 GB RasPiKey UUGear eMMC module and it boots fine on all Raspberry Pi models listed previously. A 128 GB Odroid eMMC module with corresponding uSD-adaptor also boots on all the Raspberry Pi models listed above.

I don't have access to Raspberry Pi Zero models, so I don't know if they would boot with the 32 GB Friendly Elec eMMC module.

@t-linden
Copy link
Author

I forgot to mention that I have tried also creating the file "timeout" in the /boot folder, but this has not solved the problem.
https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/README.md

@t-linden
Copy link
Author

The eMMC chip on the RasPiKey 16 GB eMMC module is a Samsung KLMAG1JETD-B041 and on the Friendly Elec eMMC the 32 GB chip is a Samsung KLMBG2JETD-B041, so they are very similar.

@t-linden
Copy link
Author

When a Raspberry Pi boots succesfully from the (u)SD-reader the activity LED will flash in an irregular fasion with a normal intensity. The activity LED only gives a very faint light when the boot hangs with a Friendly Elect 32 GB eMMC module. It could be that the LED is flashing with such a high frequence that it gives the appearance of a constant very faint light.

@t-linden
Copy link
Author

t-linden commented Feb 1, 2021

Is there any bootcode.bin version that could output more debugging information about the detection of the SD/eMMC-storage?

@timg236
Copy link

timg236 commented Feb 1, 2021

Modifying BOOT_UART=1 in bootcode.bin will show all available debug

@t-linden
Copy link
Author

t-linden commented Feb 1, 2021

OK, I have tried to understand the problem with that option already but so far unsuccesfully as you can see above. Do you have suggestions for how to debug this further?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants