Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
(Solved) Unable to find mmcblk to boot
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Installing Gentoo
View previous topic :: View next topic  
Author Message
ShadowHawkBV
Guru
Guru


Joined: 27 Mar 2004
Posts: 318

PostPosted: Mon Feb 18, 2019 4:16 pm    Post subject: (Solved) Unable to find mmcblk to boot Reply with quote

I've just finished installing Gentoo on an ACEPC T11. It has a Hynix HBG4a2 emmc drive in it. I booted into the BIOS and changed to an external DVD to boot it up with the latest version of SystemRescueCD. It finds everything and allowed me to install Gentoo, following the AMD64 install manual religiously - prevents me misremembering things, with no issues. Upon reboot, it cannot find the root drive, whether it's ID'd with UUID or via /dev/mmcblk0p4. I initially assumed I forgot to make the file-system or the MMC as part of the kernel, so I went in and re-made the kernel. Still the same issue. It runs the Loading Linux version 4.20.10, Loading intial ramdisk, Activating mdext, Loading modules (virtio, nvme, pata, sata, scsi, usb, firewire, waitscan, lvm, dmraid, mdadm, fscrypto, xts) then does either cannot find root block device in UUID=4101c9a3-b2e9-44bd-8678-c730a2184f6b or root block in /dev/mmcblk0p4 is invalid.

Here is my fstab (Note I've tried using both UUID and /dev/mmcblk
Code:
root@sysresccd /root % cat /mnt/gentoo/etc/fstab
# /etc/fstab: static file system information.
#
# noatime turns off atimes for increased performance (atimes normally aren't
# needed); notail increases performance of ReiserFS (at the expense of storage
# efficiency).  It's safe to drop the noatime options if you want and to
# switch between notail / tail freely.
#
# The root filesystem should have a pass number of either 0 or 1.
# All other filesystems should have a pass number of 0 or greater than 1.
#
# See the manpage fstab(5) for more information.
#

# <fs>         <mountpoint>   <type>      <opts>      <dump/pass>

# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
#
# NOTE: Even though we list ext4 as the type here, it will work with ext2/ext3
#       filesystems.  This just tells the kernel to use the ext4 driver.
#
# NOTE: You can use full paths to devices like /dev/sda3, but it is often
#       more reliable to use filesystem labels or UUIDs. See your filesystem
#       documentation for details on setting a label. To obtain the UUID, use
#       the blkid(8) command.

#LABEL=boot      /boot      ext4      noauto,noatime   1 2
#UUID=58e72203-57d1-4497-81ad-97655bd56494      /      ext4      noatime      0 1
#LABEL=swap      none      swap      sw      0 0
#/dev/cdrom      /mnt/cdrom   auto      noauto,ro   0 0
/dev/mmcblk0p2      /boot      vfat      noauto,noatime   1 2
/dev/mmcblk0p3      none      swap      sw      0 0
/dev/mmcblk0p4      /      ext4      noatime      0 1
#UUID=291f08f3-915b-4ed2-91a9-a34465645244      /boot      vfat      noauto,noatime   1 2
#UUID=ca2f2611-34f0-418f-ba27-c1c73db804e1      none      swap      sw      0 0
#UUID=4101c9a3-b2e9-44bd-8678-c730a2184f6b      /      ext4      noatime      0 1
#UUID=6AD4-1A41                  grub      vfat


Here is the parted -l
Code:
Model: Generic SD/MMC Storage Card (sd/mmc)
Disk /dev/mmcblk0rpmb: 4194kB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:

Warning: Unable to open /dev/sr0 read-write (Read-only file system).  /dev/sr0 has been opened read-only.
Error: /dev/sr0: unrecognised disk label
Model: ASUS SBC-06D2X-U (scsi)                                           
Disk /dev/sr0: 572MB
Sector size (logical/physical): 2048B/2048B
Partition Table: unknown
Disk Flags:

Error: /dev/mmcblk0boot0: unrecognised disk label
Model: Generic SD/MMC Storage Card (sd/mmc)                               
Disk /dev/mmcblk0boot0: 4194kB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:

Error: /dev/mmcblk0boot1: unrecognised disk label
Model: Generic SD/MMC Storage Card (sd/mmc)                               
Disk /dev/mmcblk0boot1: 4194kB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:

Model: MMC HBG4a2 (sd/mmc)
Disk /dev/mmcblk0: 31.3GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name    Flags
 1      1049kB  3146kB  2097kB  fat32           grub    bios_grub
 2      3146kB  137MB   134MB   fat16           boot    boot, esp
 3      137MB   1211MB  1074MB  linux-swap(v1)  swap
 4      1212MB  31.3GB  30.1GB  ext4            rootfs

Here is the blkid:
Code:

root@sysresccd /root % blkid
/dev/loop0: TYPE="squashfs"
/dev/sr0: UUID="2018-04-02-13-43-43-00" LABEL="sysrcd-5.2.2" TYPE="iso9660"
/dev/mmcblk0: PTUUID="1ee42a8b-d33b-44b0-b847-43f454ca2c7b" PTTYPE="gpt"
/dev/mmcblk0p1: UUID="6AD4-1A41" TYPE="vfat" PARTLABEL="grub" PARTUUID="ff324e53-d96e-4631-beb6-432ecb58e162"
/dev/mmcblk0p2: SEC_TYPE="msdos" UUID="ECDD-03D5" TYPE="vfat" PARTLABEL="boot" PARTUUID="3a584714-3ee5-4fec-8532-d4c59196a9c2"
/dev/mmcblk0p3: UUID="ca2f2611-34f0-418f-ba27-c1c73db804e1" TYPE="swap" PARTLABEL="swap" PARTUUID="d54086c3-7186-4041-b162-63604abb275e"
/dev/mmcblk0p4: UUID="4101c9a3-b2e9-44bd-8678-c730a2184f6b" TYPE="ext4" PARTLABEL="rootfs" PARTUUID="b60a0e41-c358-4167-afdc-87fe14fe184c"


Here is the lspci -k:
Code:
root@sysresccd /root % lspci -k
00:00.0 Host bridge: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series SoC Transaction Register (rev 36)
   Subsystem: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series SoC Transaction Register
   Kernel driver in use: iosf_mbi_pci
00:02.0 VGA compatible controller: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series PCI Configuration Registers (rev 36)
   Subsystem: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series PCI Configuration Registers
   Kernel driver in use: i915
   Kernel modules: i915
00:03.0 Multimedia controller: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series Imaging Unit (rev 36)
   Subsystem: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series Imaging Unit
00:0b.0 Signal processing controller: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series Power Management Controller (rev 36)
   Subsystem: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series Power Management Controller
   Kernel driver in use: proc_thermal
   Kernel modules: processor_thermal_device
00:14.0 USB controller: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series USB xHCI Controller (rev 36)
   Subsystem: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series USB xHCI Controller
   Kernel driver in use: xhci_hcd
00:1a.0 Encryption controller: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series Trusted Execution Engine (rev 36)
   Subsystem: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series Trusted Execution Engine
   Kernel driver in use: mei_txe
   Kernel modules: mei_txe
00:1f.0 ISA bridge: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series PCU (rev 36)
   Subsystem: Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series PCU
   Kernel driver in use: lpc_ich
   Kernel modules: lpc_ich


Here is the lsmod:
Code:
root@sysresccd /root % lsmod
Module                  Size  Used by
btsdio                 16384  0
bluetooth             417792  2 btsdio
ecdh_generic           20480  1 bluetooth
brcmfmac              208896  0
brcmutil               16384  1 brcmfmac
binfmt_misc            16384  1
cfg80211              495616  1 brcmfmac
rfkill                 24576  2 bluetooth,cfg80211
intel_rapl             24576  0
intel_powerclamp       16384  0
coretemp               16384  0
crct10dif_pclmul       16384  0
crc32_pclmul           16384  0
crc32c_intel           20480  0
gpio_keys              20480  0
ghash_clmulni_intel    16384  0
axp288_adc             16384  0
mmc_block              36864  2
r8152                  49152  0
wdat_wdt               16384  0
intel_cstate           16384  0
axp288_fuel_gauge      16384  0
industrialio           57344  2 axp288_adc,axp288_fuel_gauge
extcon_axp288          16384  0
axp288_charger         16384  0
axp20x_pek             16384  0
intel_hid              16384  0
dw_dmac                16384  0
sparse_keymap          16384  1 intel_hid
tpm_crb                16384  0
tpm_tis                16384  0
sdhci_acpi             16384  0
tpm_tis_core           20480  1 tpm_tis
mei_txe                24576  0
tpm                    45056  3 tpm_tis,tpm_crb,tpm_tis_core
sdhci                  40960  1 sdhci_acpi
soc_button_array       16384  0
intel_int0002_vgpio    16384  1
mei                    81920  1 mei_txe
lpc_ich                28672  0
int3406_thermal        16384  0
mmc_core              110592  5 sdhci,btsdio,mmc_block,sdhci_acpi,brcmfmac
int3400_thermal        16384  0
processor_thermal_device    16384  0
acpi_thermal_rel       16384  1 int3400_thermal
pwm_lpss_platform      16384  0
int3403_thermal        16384  0
int340x_thermal_zone    16384  2 int3403_thermal,processor_thermal_device
acpi_pad               36864  0
intel_soc_dts_iosf     16384  1 processor_thermal_device
pwm_lpss               16384  1 pwm_lpss_platform
spi_pxa2xx_platform    28672  0
raid10                 45056  0
raid456               122880  0
async_raid6_recov      16384  1 raid456
async_pq               16384  2 raid456,async_raid6_recov
async_xor              16384  3 async_pq,raid456,async_raid6_recov
async_memcpy           16384  2 raid456,async_raid6_recov
async_tx               16384  5 async_xor,async_pq,raid456,async_memcpy,async_raid6_recov
raid1                  36864  0
raid0                  20480  0
multipath              16384  0
linear                 16384  0
i915                 1417216  2
drm_kms_helper        131072  1 i915
uas                    20480  0
drm                   311296  4 i915,drm_kms_helper
cdc_ether              16384  0
usbnet                 40960  1 cdc_ether
usb_storage            65536  2 uas
i2c_algo_bit           16384  1 i915
mii                    16384  2 usbnet,r8152
video                  40960  2 int3406_thermal,i915


Here is a link to the grub.cfg: https://pastebin.com/mXgK1q6B
Grub is installed to work with UEFI.
And here is my linux config: https://pastebin.com/TCMCVD0z
Grepping for MMC:
Code:
root@sysresccd /root % grep MMC /mnt/gentoo/usr/src/linux/.config
CONFIG_PCI_MMCONFIG=y
CONFIG_MMCONF_FAM10H=y
# Supported MMC/SDIO adapters
CONFIG_MMC=y
CONFIG_MMC_BLOCK=y
CONFIG_MMC_BLOCK_MINORS=8
# CONFIG_MMC_TEST is not set
# MMC/SD/SDIO Host Controller Drivers
# CONFIG_MMC_DEBUG is not set
CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_PCI=y
CONFIG_MMC_RICOH_MMC=y
# CONFIG_MMC_SDHCI_ACPI is not set
CONFIG_MMC_SDHCI_PLTFM=y
# CONFIG_MMC_SDHCI_F_SDH30 is not set
# CONFIG_MMC_WBSD is not set
CONFIG_MMC_TIFM_SD=y
CONFIG_MMC_SDRICOH_CS=y
CONFIG_MMC_CB710=y
CONFIG_MMC_VIA_SDMMC=y
# CONFIG_MMC_VUB300 is not set
# CONFIG_MMC_USHC is not set
# CONFIG_MMC_USDHI6ROL0 is not set
CONFIG_MMC_CQHCI=y
# CONFIG_MMC_TOSHIBA_PCI is not set
# CONFIG_MMC_MTK is not set
# CONFIG_MMC_SDHCI_XENON is not set

And grepping for EXT4:
Code:
root@sysresccd /root % grep EXT4 /mnt/gentoo/usr/src/linux/.config
CONFIG_EXT4_FS=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
# CONFIG_EXT4_ENCRYPTION is not set
# CONFIG_EXT4_DEBUG is not set

And finally vfat:
Code:
root@sysresccd /root % grep VFAT /mnt/gentoo/usr/src/linux/.config
CONFIG_VFAT_FS=y


I built the kernal using Genkernel --menuconfig all. When that failed, I did a make menuconfig then a genkernel all. Irritatingly, some of the modules used by SyustemrescueCD do NOT appear in the .config
Code:
uname -a
Linux sysresccd 4.14.32-std522-amd64 #2 SMP Sat Mar 31 20:05:28 UTC 2018 x86_64 Intel(R) Atom(TM) x5-Z8350 CPU @ 1.44GHz GenuineIntel GNU/Linux


Any help will be appreciated. I really need to replace the Crap Mini running my TV.
_________________
This space for rent... Well maybe to give away.. Heck.. i'll pay you to take it.

Lost Linux Neophyte
Intel i7-8565U
Intel Atom Cherry Trail
Intel i7-4790
AMD Phenom(tm) II X4 955
Pure 64bit frustration :-)


Last edited by ShadowHawkBV on Fri Mar 01, 2019 4:46 pm; edited 1 time in total
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 43186
Location: 56N 3W

PostPosted: Mon Feb 18, 2019 7:04 pm    Post subject: Reply with quote

ShadowHawkBV,

Your dmesg output from System Rescue CD would be useful. It sees your eMMC drive, so may say how.

lspci -k shows thats its not on the PCI bus, so we know its not using
Code:
CONFIG_MMC_SDHCI_PCI=y


It may want
Code:
# CONFIG_MMC_SDHCI_ACPI is not set
but that's a guess.

lsmod:
mmc_core
mmc_block
is not enough.

You could try
Code:
zgrep MMC /proc/config.gz
on System Rescue CD if it has a /proc/config.gz
That's the running kernels .config file.

-- edit --
That grep may not be enough but you can add some context with -An (after) -Bn (before) or -Cn (context)
You need to see the whole of the MMC block, not just the lines with MMC in
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
ShadowHawkBV
Guru
Guru


Joined: 27 Mar 2004
Posts: 318

PostPosted: Mon Feb 18, 2019 9:30 pm    Post subject: Reply with quote

The messages from /var/log is: https://pastebin.com/jTAguNNV There does not appear to be a dmesg file, which is kind of strange, but I guess as a live CD, they didn't bother.

From Systemrescue's config.gz
Code:
root@sysresccd /root % zgrep -C3 MMC /proc/config.gz
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_XEN=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCIEPORTBUS=y
--
CONFIG_USB_LED_TRIG=y
CONFIG_USB_ULPI_BUS=m
# CONFIG_UWB is not set
CONFIG_MMC=m
CONFIG_MMC_BLOCK=m
CONFIG_MMC_BLOCK_MINORS=8
CONFIG_SDIO_UART=m
# CONFIG_MMC_TEST is not set

#
# MMC/SD/SDIO Host Controller Drivers
#
# CONFIG_MMC_DEBUG is not set
CONFIG_MMC_SDHCI=m
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_RICOH_MMC=y
CONFIG_MMC_SDHCI_ACPI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_WBSD=m
CONFIG_MMC_TIFM_SD=m
# CONFIG_MMC_SPI is not set
CONFIG_MMC_SDRICOH_CS=m
CONFIG_MMC_CB710=m
CONFIG_MMC_VIA_SDMMC=m
CONFIG_MMC_VUB300=m
CONFIG_MMC_USHC=m
# CONFIG_MMC_USDHI6ROL0 is not set
CONFIG_MMC_REALTEK_PCI=m
CONFIG_MMC_REALTEK_USB=m
CONFIG_MMC_TOSHIBA_PCI=m
# CONFIG_MMC_MTK is not set
CONFIG_MMC_SDHCI_XENON=m
CONFIG_MEMSTICK=m
# CONFIG_MEMSTICK_DEBUG is not set

--
# CONFIG_BMC150_MAGN_SPI is not set
# CONFIG_MAG3110 is not set
CONFIG_HID_SENSOR_MAGNETOMETER_3D=m
# CONFIG_MMC35240 is not set
CONFIG_IIO_ST_MAGN_3AXIS=m
CONFIG_IIO_ST_MAGN_I2C_3AXIS=m
CONFIG_IIO_ST_MAGN_SPI_3AXIS=m


The same thing from my .config (Not sure why I've had to manually menuconifig to get genkernel to keep the MMC's set.
Code:
root@sysresccd /root % grep -C3 MMC /mnt/gentoo/usr/src/linux/.config
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_DOMAINS=y
CONFIG_MMCONF_FAM10H=y
# CONFIG_PCI_CNB20LE_QUIRK is not set
CONFIG_PCIEPORTBUS=y
CONFIG_PCIEAER=y
--
# CONFIG_CEC_PLATFORM_DRIVERS is not set

#
# Supported MMC/SDIO adapters
#
# CONFIG_CYPRESS_FIRMWARE is not set

--
# CONFIG_USB_LED_TRIG is not set
# CONFIG_USB_ULPI_BUS is not set
# CONFIG_UWB is not set
CONFIG_MMC=y
CONFIG_MMC_BLOCK=y
CONFIG_MMC_BLOCK_MINORS=8
CONFIG_SDIO_UART=y
# CONFIG_MMC_TEST is not set

#
# MMC/SD/SDIO Host Controller Drivers
#
# CONFIG_MMC_DEBUG is not set
CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_PCI=y
CONFIG_MMC_RICOH_MMC=y
CONFIG_MMC_SDHCI_ACPI=y
CONFIG_MMC_SDHCI_PLTFM=y
CONFIG_MMC_SDHCI_F_SDH30=y
CONFIG_MMC_WBSD=y
CONFIG_MMC_TIFM_SD=y
CONFIG_MMC_SDRICOH_CS=y
CONFIG_MMC_CB710=y
CONFIG_MMC_VIA_SDMMC=y
CONFIG_MMC_VUB300=y
CONFIG_MMC_USHC=y
CONFIG_MMC_USDHI6ROL0=y
CONFIG_MMC_CQHCI=y
CONFIG_MMC_TOSHIBA_PCI=y
CONFIG_MMC_MTK=y
CONFIG_MMC_SDHCI_XENON=y
# CONFIG_MEMSTICK is not set
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y

_________________
This space for rent... Well maybe to give away.. Heck.. i'll pay you to take it.

Lost Linux Neophyte
Intel i7-8565U
Intel Atom Cherry Trail
Intel i7-4790
AMD Phenom(tm) II X4 955
Pure 64bit frustration :-)
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 43186
Location: 56N 3W

PostPosted: Mon Feb 18, 2019 11:04 pm    Post subject: Reply with quote

ShadowHawkBV,

The messages we need are long gone from /var/log/messages.

Boot your gentoo. When it fails it should drop you to the busybox shell.
Its very basic but
Code:
ls /dev
should work.

Does /dev/mmcblk0 and its partitions appear?
If not, that's a problem.

Run the
Code:
mount
command. With no parameters it should list mounted filesystems.
/dev, /proc and /sys should all be there and populated.

Does /dev/mmcblk0p4 appear. That's your root filesystem.
It should probably be mounted at /mnt/root (thats a guess)
Code:
cat init
possibly
Code:
cat /sbin/init
will show you the init script.

We are trying to see how far it got.

Code:
genkernel all
builds the kernel with a one size fits most users, using a fixed .config file. It loads this same config every time you run it.
As you discovered, with root on eMMC, this config doesn't work.
You can tell genkernel to use the existing .config or one you have saved elsewhere. I don't know how, but
Code:
man genkernel
or
Code:
genkernel --help
may tell. I'm not a genkernel user.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
ShadowHawkBV
Guru
Guru


Joined: 27 Mar 2004
Posts: 318

PostPosted: Fri Mar 01, 2019 4:46 pm    Post subject: Reply with quote

Sorry of the delay in coming back with results. I got the system to boot. Then discovered that the Ethernet card is USB based, and rebuilt. Then while trying to get the sound to work, I cleaned up what I thought was cruft and nuked the workable config in favour of one that wouldn't. Long story shorter, the EMMC uses segments of the Device Drivers//MMC/SD/SDIO, Device Drivers//Serial ATA and Parallel ATA, and Device Drivers//SCSI device support, and finally Device Drivers//USB Support.

Here is a link to a more or less working (Sound is my last issue to solve) .config: https://pastebin.com/mZJUx2Me

Thank you for the help Neddy. As always, you provide the nudges in the correct direction. If and when I get this silly thing working properly, I think I'll post a complete how-to so others can enjoy the benefits.
_________________
This space for rent... Well maybe to give away.. Heck.. i'll pay you to take it.

Lost Linux Neophyte
Intel i7-8565U
Intel Atom Cherry Trail
Intel i7-4790
AMD Phenom(tm) II X4 955
Pure 64bit frustration :-)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Installing Gentoo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum