Hi All,
Since almost 1 year I'm experiencing a strange issue with my ODROID-XU board.
It gets stuck on boot randomly.
I am using latest kernel available for the board at the moment 5.11.2-1-ARCH #1 SMP PREEMPT Sun Feb 28 22:03:25 UTC 2021 armv7l GNU/Linux
I am booting the board from sdcard and there is no emmc memory installed.
I also have to mention that i can get the board booting only if I either:
1. comment the setenv fdt_high line inside boot.ini file, or
2. replace the address 0x41f00000 with 0x44000000 inside boot.ini file, such that the bootcmd line becomes, which is similar to ODROID-XU3 board if I'm not mistaken:
$this->bbcode_second_pass_code('', '
setenv bootcmd "fatload mmc 0:1 0x40008000 zImage; if fatload mmc 0:1 0x44000000 dtbs/exynos5410-odroidxu.dtb; then bootz 0x40008000 - 0x44000000; else bootz 0x40008000; fi
')
Here is the boot log when it doesn't work:
$this->bbcode_second_pass_code('', '
U-Boot 2012.07 (Sep 13 2013 - 13:53:58) for Exynos5410
CPU: Exynos5410 Rev2.3 [Samsung SOC on SMP Platform Base on ARM CortexA15]
APLL = 900MHz, KPLL = 600MHz
MPLL = 532MHz, BPLL = 800MHz
DRAM: 2 GiB
WARNING: Caches not enabled
TrustZone Enabled BSP
BL1 version:
PMIC VER : 0, CHIP REV : 6
VDD MIF : 1.00000V
VDD ARM : 1.00000V
VDD INT : 1.00000V
VDD G3D : 1.00000V
VDD KFC : 1.00000V
Checking Boot Mode ... SDMMC
MMC: S5P_MSHC2: 0, S5P_MSHC0: 1
MMC Device 0: 29.7 GiB
MMC Device 1: [ERROR] response error : 00000006 cmd 8
[ERROR] response error : 00000006 cmd 55
[ERROR] response error : 00000006 cmd 2
*** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Net: No ethernet found.
Press 'Enter' or 'Space' to stop autoboot: 0
there are pending interrupts 0x00000001
reading boot.ini
5234 bytes read
Find boot.ini file from FAT Area!!
boot.ini command = setenv hk_current_version "2"
boot.ini command = setenv verify 'if test $hk_version != $hk_current_version;then;fatload mmc 0:1 40008000 u-boot.bin;emmc open 0;movi w z u 0 40008000;emmc close 0;setenv hk_version $hk_cu'
boot.ini command = run verify
reading u-boot.bin
** Unable to read "u-boot.bin" from mmc 0:1 **
[ERROR] response timeout error : 00000104 cmd 6
eMMC OPEN Failed.!!
boot.ini command = setenv initrd_high "0xffffffff"
boot.ini command = setenv fdt_high "0xffffffff"
boot.ini command = setenv bootrootfs "console=ttySAC2,115200n8 root=/dev/mmcblk1p2 rootwait rw"
boot.ini command = setenv fb_x_res "1920"
boot.ini command = setenv fb_y_res "1080"
boot.ini command = setenv vout "hdmi"
boot.ini command = setenv left "56"
boot.ini command = setenv right "24"
boot.ini command = setenv upper "3"
boot.ini command = setenv lower "3"
boot.ini command = setenv hsync "14"
boot.ini command = setenv vsync "3"
boot.ini command = setenv fb_control "left=${left} right=${right} upper=${upper} lower=${lower} vsync=${vsync} hsync=${hsync}"
boot.ini command = setenv hdmi_phy_res "1080p60hz"
boot.ini command = setenv led_blink "1"
boot.ini command = setenv bootcmd "fatload mmc 0:1 0x40008000 zImage; if fatload mmc 0:1 0x44000000 dtbs/exynos5410-odroidxu.dtb; then bootz 0x40008000 - 0x44000000; else bootz 0x40008000; "
boot.ini command = setenv bootargs "${bootrootfs} ${fb_control} fb_x_res=${fb_x_res} fb_y_res=${fb_y_res} vout=${vout} hdmi_phy_res=${hdmi_phy_res} led_blink=${led_blink}"
boot.ini command = boot
reading zImage
7406192 bytes read
reading dtbs/exynos5410-odroidxu.dtb
44824 bytes read
## Flattened Device Tree blob at 44000000
Booting using the fdt blob at 0x44000000
Using Device Tree in place at 44000000, end 4400df17
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 5.11.2-1-ARCH (builduser@leming) (armv7l-unknown-linux-gnueabihf-gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35) #1 SMP PREEMPT Sun Feb 28 22:03:25 UTC 2021
[ 0.000000] CPU: ARMv7 Processor [412fc0f3] revision 3 (ARMv7), cr=10c5387d
[ 0.000000] CPU: div instructions available: patching division code
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[ 0.000000] OF: fdt: Machine model: Hardkernel Odroid XU
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] cma: Reserved 64 MiB at 0xbb800000
[ 0.000000] Samsung CPU ID: 0xe5410023
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000040000000-0x000000006fffffff]
[ 0.000000] Normal empty
[ 0.000000] HighMem [mem 0x0000000070000000-0x00000000bfdfffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000040000000-0x00000000bfdfffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x00000000bfdfffff]
[ 0.000000] Running under secure firmware.
[ 0.000000] percpu: Embedded 16 pages/cpu s35404 r8192 d21940 u65536
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 522048
[ 0.000000] Kernel command line: console=ttySAC2,115200n8 root=/dev/mmcblk1p2 rootwait rw left=56 right=24 upper=3 lower=3 vsync=3 hsync=14 fb_x_res=1920 fb_y_res=1080 vout=hdmi hdmi_phy1
[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] Memory: 1983616K/2095104K available (15360K kernel code, 1846K rwdata, 6056K rodata, 1024K init, 871K bss, 45952K reserved, 65536K cma-reserved, 1243136K highmem)
[ 0.000000] random: get_random_u32 called from __kmem_cache_create+0x28/0x6e8 with crng_init=0
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] rcu: Preemptible hierarchical RCU implementation.
[ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
[ 0.000000] Trampoline 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: 16, nr_irqs: 16, preallocated irqs: 16
[ 0.000000] Switching to timer-based delay loop, resolution 41ns
[ 0.000000] clocksource: mct-frc: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000002] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[ 0.000027] genirq: irq_chip COMBINER did not update eff. affinity mask of irq 57
[ 0.002062] arch_timer: cp15 timer(s) running at 24.00MHz (virt).
[ 0.002083] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[ 0.002104] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[ 0.002122] Ignoring duplicate/late registration of read_current_timer delay
[ 0.002832] Console: colour dummy device 80x30
[ 0.002882] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=96000)
[ 0.002904] pid_max: default: 32768 minimum: 301
[ 0.003068] LSM: Security Framework initializing
[ 0.003183] Smack: Initializing.
[ 0.003193] Smack: IPv6 port labeling enabled.
[ 0.003340] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
[ 0.003363] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
[ 0.004304] CPU: Testing write buffer coherency: ok
[ 0.004348] CPU0: Spectre v2: firmware did not set auxiliary control register IBE bit, system vulnerable
[ 0.004576] CPU0: update cpu_capacity 1024
[ 0.004592] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.005380] Setting up static identity map for 0x40300000 - 0x403000ac
[ 0.006519] rcu: Hierarchical SRCU implementation.
[ 0.008076] smp: Bringing up secondary CPUs ...
[ 0.012198] CPU1: update cpu_capacity 1024
[ 0.012207] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.012218] CPU1: Spectre v2: firmware did not set auxiliary control register IBE bit, system vulnerable
[ 0.013858] CPU2: update cpu_capacity 1024
[ 0.013867] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[ 0.013878] CPU2: Spectre v2: firmware did not set auxiliary control register IBE bit, system vulnerable
[ 0.015478] CPU3: update cpu_capacity 1024
[ 0.015487] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[ 0.015497] CPU3: Spectre v2: firmware did not set auxiliary control register IBE bit, system vulnerable
[ 0.015670] smp: Brought up 1 node, 4 CPUs
[ 0.015687] SMP: Total of 4 processors activated (192.00 BogoMIPS).
[ 0.015701] CPU: All CPU(s) started in SVC mode.
[ 0.016321] devtmpfs: initialized
[ 0.026017] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
[ 0.026374] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.026400] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[ 0.027692] pinctrl core: initialized pinctrl subsystem
[ 0.029170] NET: Registered protocol family 16
[ 0.031427] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.033031] audit: initializing netlink subsys (disabled)
[ 0.033217] audit: type=2000 audit(0.032:1): state=initialized audit_enabled=0 res=1
[ 0.034261] thermal_sys: Registered thermal governor 'fair_share'
[ 0.034270] thermal_sys: Registered thermal governor 'bang_bang'
[ 0.034282] thermal_sys: Registered thermal governor 'step_wise'
[ 0.034294] thermal_sys: Registered thermal governor 'user_space'
[ 0.034998] cpuidle: using governor menu
[ 0.035377] No ATAGs?
[ 0.035408] hw-breakpoint: Failed to enable monitor mode on CPU 0.
[ 0.036632] soc soc0: Exynos: CPU[EXYNOS5410] PRO_ID[0xe5410023] REV[0x23] Detected
[ 0.036673] Serial: AMBA PL011 UART driver
[ 0.151969] raid6: neonx8 gen() 1642 MB/s
[ 0.219975] raid6: neonx8 xor() 1174 MB/s
[ 0.271479] random: fast init done
[ 0.287974] raid6: neonx4 gen() 2317 MB/s
[ 0.355973] raid6: neonx4 xor() 1552 MB/s
[ 0.423980] raid6: neonx2 gen() 2084 MB/s
[ 0.491979] raid6: neonx2 xor() 1601 MB/s
[ 0.559987] raid6: neonx1 gen() 1692 MB/s
[ 0.627984] raid6: neonx1 xor() 1395 MB/s
[ 0.696023] raid6: int32x8 gen() 503 MB/s
[ 0.764012] raid6: int32x8 xor() 297 MB/s
[ 0.832219] raid6: int32x4 gen() 573 MB/s
[ 0.899986] raid6: int32x4 xor() 307 MB/s
[ 0.967996] raid6: int32x2 gen() 516 MB/s
[ 1.035984] raid6: int32x2 xor() 288 MB/s
[ 1.104028] raid6: int32x1 gen() 487 MB/s
[ 1.171996] raid6: int32x1 xor() 240 MB/s
[ 1.172008] raid6: using algorithm neonx4 gen() 2317 MB/s
[ 1.172019] raid6: .... xor() 1552 MB/s, rmw enabled
[ 1.172030] raid6: using neon recovery algorithm
[ 1.175957] iommu: Default domain type: Translated
[ 1.176790] vgaarb: loaded
[ 1.177414] SCSI subsystem initialized
[ 1.177797] usbcore: registered new interface driver usbfs
[ 1.177853] usbcore: registered new interface driver hub
[ 1.177903] usbcore: registered new device driver usb
[ 1.178972] s3c-i2c 12c70000.i2c: slave address 0x00
[ 1.178993] s3c-i2c 12c70000.i2c: bus frequency set to 64 KHz
[ 1.179588] s3c-i2c 12c70000.i2c: i2c-1: S3C I2C adapter
[ 1.180064] mc: Linux media interface: v0.10
[ 1.180103] videodev: Linux video capture interface: v2.00
[ 1.180192] pps_core: LinuxPPS API ver. 1 registered
[ 1.180205] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 1.180231] PTP clock support registered
[ 1.180279] EDAC MC: Ver: 3.0.0
[ 1.181299] Advanced Linux Sound Architecture Driver Initialized.
[ 1.181836] NetLabel: Initializing
[ 1.181849] NetLabel: domain hash size = 128
[ 1.181859] NetLabel: protocols = UNLABELED CIPSOv4 CALIPSO
[ 1.181926] NetLabel: unlabeled traffic allowed by default
[ 1.182394] clocksource: Switched to clocksource mct-frc
[ 1.182636] VFS: Disk quotas dquot_6.6.0
[ 1.182703] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 1.193646] NET: Registered protocol family 2
[ 1.194477] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear)
[ 1.194533] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear)
[ 1.194610] TCP bind hash table entries: 8192 (order: 4, 65536 bytes, linear)
[ 1.194754] TCP: Hash tables configured (established 8192 bind 8192)
[ 1.194916] MPTCP token hash table entries: 1024 (order: 2, 16384 bytes, linear)
[ 1.194975] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[ 1.195020] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
[ 1.195212] NET: Registered protocol family 1
[ 1.195895] RPC: Registered named UNIX socket transport module.
[ 1.195910] RPC: Registered udp transport module.
[ 1.195921] RPC: Registered tcp transport module.
[ 1.195931] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 1.195944] NET: Registered protocol family 44
[ 1.195961] PCI: CLS 0 bytes, default 64
[ 1.197298] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available
[ 1.198703] Initialise system trusted keyrings
[ 1.198862] workingset: timestamp_bits=14 max_order=19 bucket_order=5
[ 1.203285] zbud: loaded
[ 1.205030] NFS: Registering the id_resolver key type
[ 1.205058] Key type id_resolver registered
[ 1.205070] Key type id_legacy registered
[ 1.205161] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[ 1.280561] xor: measuring software checksum speed
[ 1.285275] arm4regs : 2121 MB/sec
[ 1.291312] 8regs : 1656 MB/sec
[ 1.297643] 32regs : 1564 MB/sec
[ 1.300706] neon : 3274 MB/sec
[ 1.300718] xor: using function: neon (3274 MB/sec)
[ 1.300733] Key type asymmetric registered
[ 1.300745] Asymmetric key parser 'x509' registered
[ 1.300802] bounce: pool size: 64 pages
[ 1.300847] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
[ 1.300975] io scheduler mq-deadline registered
[ 1.300990] io scheduler kyber registered
[ 1.301151] io scheduler bfq registered
[ 1.305406] samsung-usb2-phy 12130000.phy: supply vbus not found, using dummy regulator
[ 1.306102] exynos5_usb3drd_phy 12100000.phy: supply vbus not found, using dummy regulator
[ 1.306235] exynos5_usb3drd_phy 12100000.phy: supply vbus-boost not found, using dummy regulator
[ 1.306611] exynos5_usb3drd_phy 12500000.phy: supply vbus not found, using dummy regulator
[ 1.306756] exynos5_usb3drd_phy 12500000.phy: supply vbus-boost not found, using dummy regulator
[ 1.320960] dma-pl330 121a0000.pdma: Loaded driver for PL330 DMAC-241330
[ 1.320980] dma-pl330 121a0000.pdma: DBUFF-32x4bytes Num_Chans-8 Num_Peri-32 Num_Events-32
[ 1.323009] dma-pl330 121b0000.pdma: Loaded driver for PL330 DMAC-241330
[ 1.323027] dma-pl330 121b0000.pdma: DBUFF-32x4bytes Num_Chans-8 Num_Peri-32 Num_Events-32
[ 1.328723] Serial: 8250/16550 driver, 6 ports, IRQ sharing enabled
[ 1.331645] Serial: AMBA driver
[ 1.331852] 12c00000.serial: ttySAC0 at MMIO 0x12c00000 (irq = 70, base_baud = 0) is a S3C6400/10
[ 1.332397] 12c10000.serial: ttySAC1 at MMIO 0x12c10000 (irq = 71, base_baud = 0) is a S3C6400/10
[ 1.332918] 12c20000.serial: ttySAC2 at MMIO 0x12c20000 (irq = 72, base_baud = 0) is a S3C6400/10
[ 2.384130] printk: console [ttySAC2] enabled
[ 2.388977] 12c30000.serial: ttySAC3 at MMIO 0x12c30000 (irq = 73, base_baud = 0) is a S3C6400/10
[ 2.399878] sdhci: Secure Digital Host Controller Interface driver
[ 2.404651] sdhci: Copyright(c) Pierre Ossman
[ 2.409713] Synopsys Designware Multimedia Card Interface Driver
[ 2.415862] dwmmc_exynos 12200000.mmc: IDMAC supports 32-bit address mode.
[ 2.416753] dwmmc_exynos 12220000.mmc: IDMAC supports 32-bit address mode.
[ 2.421853] dwmmc_exynos 12200000.mmc: Using internal DMA controller.
[ 2.422705] VUB300 Driver rom wait states = 1C irqpoll timeout = 0400
[ 2.428705] dwmmc_exynos 12220000.mmc: Using internal DMA controller.
[ 2.429552] usbcore: registered new interface driver vub300
[ 2.429622] usbcore: registered new interface driver ushc
[ 2.430779] sdhci-pltfm: SDHCI platform and OF driver helper
[ 2.435076] dwmmc_exynos 12200000.mmc: Version ID is 241a
[ 2.441467] dwmmc_exynos 12220000.mmc: Version ID is 241a
[ 2.441564] dwmmc_exynos 12220000.mmc: DW MMC controller at irq 95,64 bit host data width,128 deep fifo
[ 2.447995] dwmmc_exynos 12200000.mmc: DW MMC controller at irq 94,64 bit host data width,128 deep fifo
[ 2.504393] loop: module loaded
[ 2.507415] Loading iSCSI transport class v2.0-870.
[ 2.511572] iscsi: registered transport (tcp)
[ 2.519927] libphy: Fixed MDIO Bus: probed
[ 2.526460] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 2.531537] ehci-pci: EHCI PCI platform driver
[ 2.535987] ehci-platform: EHCI generic platform driver
[ 2.541315] ehci-omap: OMAP-EHCI Host Controller driver
[ 2.546496] ehci-orion: EHCI orion driver
[ 2.550473] ehci-exynos: EHCI Exynos driver
[ 2.554918] exynos-ehci 12110000.usb: EHCI Host Controller
[ 2.560007] exynos-ehci 12110000.usb: new USB bus registered, assigned bus number 1
[ 2.567854] exynos-ehci 12110000.usb: irq 89, io mem 0x12110000
[ 2.586446] exynos-ehci 12110000.usb: USB 2.0 started, EHCI 1.00
[ 2.591191] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.11
[ 2.599252] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 2.606446] usb usb1: Product: EHCI Host Controller
[ 2.611299] usb usb1: Manufacturer: Linux 5.11.2-1-ARCH ehci_hcd
[ 2.617282] usb usb1: SerialNumber: 12110000.usb
[ 2.622501] hub 1-0:1.0: USB hub found
[ 2.625610] hub 1-0:1.0: 3 ports detected
[ 2.630263] tegra-ehci: Tegra EHCI driver
[ 2.633733] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 2.639791] ohci-pci: OHCI PCI platform driver
[ 2.644203] ohci-platform: OHCI generic platform driver
[ 2.649528] ohci-exynos: OHCI Exynos driver
[ 2.653768] exynos-ohci 12120000.usb: USB Host Controller
[ 2.658930] exynos-ohci 12120000.usb: new USB bus registered, assigned bus number 2
[ 2.666635] exynos-ohci 12120000.usb: irq 89, io mem 0x12120000
[ 2.735714] usb usb2: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 5.11
[ 2.742537] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 2.749729] usb usb2: Product: USB Host Controller
[ 2.754498] usb usb2: Manufacturer: Linux 5.11.2-1-ARCH ohci_hcd
[ 2.760481] usb usb2: SerialNumber: 12120000.usb
[ 2.765566] hub 2-0:1.0: USB hub found
[ 2.768838] hub 2-0:1.0: 3 ports detected
[ 2.773899] usbcore: registered new interface driver uas
[ 2.778153] usbcore: registered new interface driver usb-storage
[ 2.784133] usbcore: registered new interface driver ums-cypress
[ 2.790083] usbcore: registered new interface driver ums_eneub6250
[ 2.796262] usbcore: registered new interface driver ums-freecom
[ 2.802223] usbcore: registered new interface driver ums-isd200
[ 2.808123] usbcore: registered new interface driver ums-usbat
[ 2.818920] i2c /dev entries driver
[ 2.842065] usb3503 4-0008: switched to HUB mode
[ 2.845235] usb3503 4-0008: usb3503_probe: probed in hub mode
[ 2.855741] vdd_mif: supplied by regulator-dummy
[ 2.860237] vdd_arm: supplied by regulator-dummy
[ 2.864712] vdd_int: supplied by regulator-dummy
[ 2.869426] vdd_g3d: supplied by regulator-dummy
[ 2.873895] vdd_mem: supplied by regulator-dummy
[ 2.878760] vdd_kfc: supplied by regulator-dummy
[ 2.883186] buck7: supplied by regulator-dummy
[ 2.887658] vddf_2v85: supplied by regulator-dummy
[ 2.892434] buck9: supplied by regulator-dummy
[ 2.896846] buck10: supplied by regulator-dummy
[ 2.900805] vdd_alive: supplied by buck7
[ 2.904703] vddq_m1_m2: supplied by buck7
[ 2.908712] vddq_gpio: supplied by buck9
[ 2.912599] vddq_mmc2: supplied by buck10
[ 2.916610] vdd18_hsic: supplied by buck9
[ 2.920573] vdd18_bpll: supplied by buck9
[ 2.924601] vddq_lcd: supplied by buck9
[ 2.928389] vdd10_hdmi: supplied by vdd_mem
[ 2.932557] ldo9: supplied by buck9
[ 2.936026] vdd18_mipi: supplied by buck9
[ 2.940028] vddq_mmc01: supplied by buck9
[ 2.944102] vdd33_usb3: supplied by regulator-dummy
[ 2.948873] vddq_abbg0: supplied by buck9
[ 2.952918] vddq_abbg1: supplied by buck9
[ 2.956865] vdd10_usb3: supplied by vdd_mem
[ 2.961007] cam_sensor_core: supplied by buck7
[ 2.965446] ldo18: supplied by buck9
[ 2.969013] ldo19: supplied by buck9
[ 2.972565] vdd_mmc0: supplied by buck9
[ 2.976375] vddf_2v8: supplied by buck10
[ 2.980375] dp_p3v3: supplied by regulator-dummy
[ 2.984884] cam_af: supplied by buck10
[ 2.989032] eth_p3v3: supplied by regulator-dummy
[ 2.993412] usb30_extclk: supplied by regulator-dummy
[ 2.998305] ldo27: supplied by buck7
[ 3.001885] ldo28: supplied by buck9
[ 3.005427] ldo29: supplied by buck9
[ 3.009009] vddq_e1_e2: supplied by buck7
[ 3.013094] vs_power_meter: supplied by regulator-dummy
[ 3.018188] ldo33: supplied by buck10
[ 3.021935] ldo34: supplied by regulator-dummy
[ 3.026259] ldo35: supplied by buck7
[ 3.043037] rtc rtc0: invalid alarm value: 1900-01-01T00:00:00
[ 3.047878] max77686-rtc max77802-rtc: registered as rtc0
[ 3.055101] max77686-rtc max77802-rtc: setting system clock to 2021-11-06T17:51:45 UTC (1636221105)
[ 3.072957] ledtrig-cpu: registered to indicate activity on CPUs
[ 3.078142] hid: raw HID events driver (C) Jiri Kosina
[ 3.078474] usb 1-3: new high-speed USB device number 2 using exynos-ehci
[ 3.083154] usbcore: registered new interface driver usbhid
[ 3.094948] usbhid: USB HID core driver
[ 3.104316] NET: Registered protocol family 10
[ 3.110281] Segment Routing with IPv6
[ 3.112570] mip6: Mobile IPv6
[ 3.115453] NET: Registered protocol family 17
[ 3.120052] Key type dns_resolver registered
[ 3.124796] Failed to find PMU node
[ 3.127593] ThumbEE CPU extension supported.
[ 3.131865] Registering SWP/SWPB emulation handler
[ 3.136942] registered taskstats version 1
[ 3.140722] Loading compiled-in X.509 certificates
[ 3.145708] zswap: loaded using pool lzo/zbud
[ 3.150315] Key type ._fscrypt registered
[ 3.153792] Key type .fscrypt registered
[ 3.157701] Key type fscrypt-provisioning registered
[ 3.165522] Btrfs loaded, crc32c=crc32c-generic, zoned=yes
[ 3.188280] dwmmc_exynos 12220000.mmc: IDMAC supports 32-bit address mode.
[ 3.189411] dwmmc_exynos 12200000.mmc: IDMAC supports 32-bit address mode.
[ 3.190331] dwc3 12000000.usb: changing max_speed on rev 5533200a
[ 3.193794] dwmmc_exynos 12220000.mmc: Using internal DMA controller.
[ 3.200640] dwmmc_exynos 12200000.mmc: Using internal DMA controller.
[ 3.206641] dwmmc_exynos 12220000.mmc: Version ID is 241a
[ 3.210274] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[ 3.210318] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 3
[ 3.210891] xhci-hcd xhci-hcd.1.auto: hcc params 0x0220f04c hci version 0x100 quirks 0x0000000002010010
[ 3.211084] xhci-hcd xhci-hcd.1.auto: irq 126, io mem 0x12400000
[ 3.212158] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.11
[ 3.212177] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 3.212193] usb usb3: Product: xHCI Host Controller
[ 3.212206] usb usb3: Manufacturer: Linux 5.11.2-1-ARCH xhci-hcd
[ 3.212218] usb usb3: SerialNumber: xhci-hcd.1.auto
[ 3.213295] dwmmc_exynos 12200000.mmc: Version ID is 241a
[ 3.213839] hub 3-0:1.0: USB hub found
[ 3.213909] hub 3-0:1.0: 1 port detected
[ 3.214684] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[ 3.214726] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 4
[ 3.214750] xhci-hcd xhci-hcd.1.auto: Host supports USB 3.0 SuperSpeed
[ 3.214912] usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
[ 3.215187] usb usb4: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.11
[ 3.215203] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 3.215218] usb usb4: Product: xHCI Host Controller
[ 3.215230] usb usb4: Manufacturer: Linux 5.11.2-1-ARCH xhci-hcd
[ 3.215242] usb usb4: SerialNumber: xhci-hcd.1.auto
[ 3.219496] dwmmc_exynos 12220000.mmc: DW MMC controller at irq 95,64 bit host data width,128 deep fifo
[ 3.223288] hub 4-0:1.0: USB hub found
[ 3.223354] hub 4-0:1.0: 1 port detected
[ 3.224881] dwmmc_exynos 12200000.mmc: DW MMC controller at irq 94,64 bit host data width,128 deep fifo
[ 3.227456] s3c-rtc 101e0000.rtc: rtc disabled, re-enabling
[ 3.228093] s3c-rtc 101e0000.rtc: registered as rtc1
[ 3.243220] ALSA device list:
[ 3.244851] mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 400000Hz, actual 396825HZ div = 63)
[ 3.248371] dwmmc_exynos 12200000.mmc: Got CD GPIO
[ 3.253341] No soundcards found.
[ 3.254038] usb 1-3: New USB device found, idVendor=0424, idProduct=3503, bcdDevice=a1.a0
[ 3.254056] usb 1-3: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 3.255193] hub 1-3:1.0: USB hub found
[ 3.255409] hub 1-3:1.0: 3 ports detected
[ 3.261673] dwmmc_exynos 12200000.mmc: allocated mmc-pwrseq
[ 3.341047] mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
[ 3.358778] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 400000Hz, actual 396825HZ div = 63)
[ 3.365817] mmc0: new high speed SDHC card at address aaaa
[ 3.467160] Waiting for root device /dev/mmcblk1p2...
[ 3.472637] mmcblk0: mmc0:aaaa SC32G 29.7 GiB
[ 3.481692] mmcblk0: p1 p2
[ 3.530445] usb 1-2: new high-speed USB device number 3 using exynos-ehci
[ 3.690865] usb 1-2: New USB device found, idVendor=0424, idProduct=9730, bcdDevice= 1.00
[ 3.697594] usb 1-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
')
What I found disturbing, is that, when it doesn't boot it says at the end (grep on mmc string over the boot log):
$this->bbcode_second_pass_code('', '
[ 0.000000] Kernel command line: console=ttySAC2,115200n8 root=/dev/mmcblk1p2 rootwait rw left=56 right=24 upper=3 lower=3 vsync=3 hsync=14 fb_x_res=1920 fb_y_res=1080 vout=hdmi hdmi_phy1
[ 2.415862] dwmmc_exynos 12200000.mmc: IDMAC supports 32-bit address mode.
[ 2.416753] dwmmc_exynos 12220000.mmc: IDMAC supports 32-bit address mode.
[ 2.421853] dwmmc_exynos 12200000.mmc: Using internal DMA controller.
[ 2.428705] dwmmc_exynos 12220000.mmc: Using internal DMA controller.
[ 2.435076] dwmmc_exynos 12200000.mmc: Version ID is 241a
[ 2.441467] dwmmc_exynos 12220000.mmc: Version ID is 241a
[ 2.441564] dwmmc_exynos 12220000.mmc: DW MMC controller at irq 95,64 bit host data width,128 deep fifo
[ 2.447995] dwmmc_exynos 12200000.mmc: DW MMC controller at irq 94,64 bit host data width,128 deep fifo
[ 2.912599] vddq_mmc2: supplied by buck10
[ 2.940028] vddq_mmc01: supplied by buck9
[ 2.972565] vdd_mmc0: supplied by buck9
[ 3.188280] dwmmc_exynos 12220000.mmc: IDMAC supports 32-bit address mode.
[ 3.189411] dwmmc_exynos 12200000.mmc: IDMAC supports 32-bit address mode.
[ 3.193794] dwmmc_exynos 12220000.mmc: Using internal DMA controller.
[ 3.200640] dwmmc_exynos 12200000.mmc: Using internal DMA controller.
[ 3.206641] dwmmc_exynos 12220000.mmc: Version ID is 241a
[ 3.213295] dwmmc_exynos 12200000.mmc: Version ID is 241a
[ 3.219496] dwmmc_exynos 12220000.mmc: DW MMC controller at irq 95,64 bit host data width,128 deep fifo
[ 3.224881] dwmmc_exynos 12200000.mmc: DW MMC controller at irq 94,64 bit host data width,128 deep fifo
[ 3.244851] mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 400000Hz, actual 396825HZ div = 63)
[ 3.248371] dwmmc_exynos 12200000.mmc: Got CD GPIO
[ 3.261673] dwmmc_exynos 12200000.mmc: allocated mmc-pwrseq
[ 3.341047] mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
[ 3.358778] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 400000Hz, actual 396825HZ div = 63)
...
[ 3.365817] mmc0: new high speed SDHC card at address aaaa
[ 3.467160] Waiting for root device /dev/mmcblk1p2...
[ 3.472637] mmcblk0: mmc0:aaaa SC32G 29.7 GiB
[ 3.481692] mmcblk0: p1 p2
')
and when it boots correctly it says (grep on mmc string over the boot log).
$this->bbcode_second_pass_code('', '
[ 0.000000] Kernel command line: console=ttySAC2,115200n8 root=/dev/mmcblk1p2 rootwait rw left=56 right=24 upper=3 lower=3 vsync=3 hsync=14 fb_x_res=1920 fb_y_res=1080 vout=hdmi hdmi_phy1
[ 2.417025] dwmmc_exynos 12200000.mmc: IDMAC supports 32-bit address mode.
[ 2.417346] dwmmc_exynos 12220000.mmc: IDMAC supports 32-bit address mode.
[ 2.422949] dwmmc_exynos 12200000.mmc: Using internal DMA controller.
[ 2.429760] dwmmc_exynos 12220000.mmc: Using internal DMA controller.
[ 2.436198] dwmmc_exynos 12200000.mmc: Version ID is 241a
[ 2.442563] dwmmc_exynos 12220000.mmc: Version ID is 241a
[ 2.442654] dwmmc_exynos 12220000.mmc: DW MMC controller at irq 95,64 bit host data width,128 deep fifo
[ 2.448053] dwmmc_exynos 12200000.mmc: DW MMC controller at irq 94,64 bit host data width,128 deep fifo
[ 2.928366] vddq_mmc2: supplied by buck10
[ 2.955857] vddq_mmc01: supplied by buck9
[ 2.994337] vdd_mmc0: supplied by buck9
[ 3.208642] dwmmc_exynos 12220000.mmc: IDMAC supports 32-bit address mode.
[ 3.208821] dwmmc_exynos 12200000.mmc: IDMAC supports 32-bit address mode.
[ 3.220986] dwmmc_exynos 12200000.mmc: Using internal DMA controller.
[ 3.229783] dwmmc_exynos 12220000.mmc: Using internal DMA controller.
[ 3.233429] dwmmc_exynos 12200000.mmc: Version ID is 241a
[ 3.239838] dwmmc_exynos 12220000.mmc: Version ID is 241a
[ 3.245413] dwmmc_exynos 12200000.mmc: DW MMC controller at irq 94,64 bit host data width,128 deep fifo
[ 3.250610] dwmmc_exynos 12220000.mmc: DW MMC controller at irq 95,64 bit host data width,128 deep fifo
[ 3.260056] dwmmc_exynos 12200000.mmc: Got CD GPIO
[ 3.260249] dwmmc_exynos 12200000.mmc: allocated mmc-pwrseq
[ 3.273616] mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 400000Hz, actual 396825HZ div = 63)
[ 3.280430] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 400000Hz, actual 396825HZ div = 63)
[ 3.370931] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
...
[ 3.379484] mmc1: new high speed SDHC card at address aaaa
[ 3.395358] mmcblk1: mmc1:aaaa SC32G 29.7 GiB
[ 3.417660] mmcblk1: p1 p2
')
If I power cycle the board and wait few seconds between the cycles, the board will boot.
It is something like 1 in 3 retries i get it to boot.
If I do a cold boot after a long period of time it usually boots.
If I run reboot command on the board it will most likely get stuck.
The moment when it started is pretty close to when the USB3 issue got fixed (around Oct 2020), but it might be before the issue got fixed, and cannot confirm 100%.
It looks like mmc0 and mmc1 have same address aaaa stored somewhere.
I just need some pointers on where to look further or if there are some parameters that I can add to boot ini to ignore mmc0.
I haven't attached the correct boot log as the message would have got too big, but I can provided if it helps.
Thanks a lot