eMMC doesn't show at boot menu in BIOS

GavinLu
GavinLu New Member Posts: 8

Hi there,

I just got an Up Board (with 4GB RAM and 64GB eMMC), and tried to install a hypervisor there. I entered the BIOS but can't find eMMC entry in boot option list, although eMMC is detected in BIOS.

What should I do to make it boot from eMMC?

Thanks,

Gavin



Tagged:

Comments

  • GavinLu
    GavinLu New Member Posts: 8

    Btw, I tried to change SCC eMMC Support mode from ACPI to PCI, but it didn't work.

  • eduncan911
    eduncan911 Administrator, Moderator Posts: 157 admin
    edited October 2018

    @GavinLu said:
    Hi there,

    I just got an Up Board (with 4GB RAM and 64GB eMMC), and tried to install a hypervisor there. I entered the BIOS but can't find eMMC entry in boot option list, although eMMC is detected in BIOS.

    What should I do to make it boot from eMMC?

    Thanks,

    Gavin

    Hello Gavin and welcome.

    Disk drives usually show up on MBR/Legacy BIOS type installs.

    The UP devices all use UEFI instead, which usually requires an OS installation to make an UEFI entry to boot from (that usually uses a bootmgr). These entries is what shows up as a Boot Option in your first screenshot.

    It's true, some advanced UEFI bios code is smart enough to inspect partitions for EFI stubs and bootloaders and add them. The UP devices are just basic though.

    Go ahead and load up your hypervisor of choice and make sure to select UEFI bootloaders as Legacy/MBR does not work on UP devices (nor will they show). If you previously installed and used MBR, you'll need to format and re-install again as you can't easily switch from MBR to UEFI as the partition types and locations are usually different.

    Just to let you know, I run Xen Hypervisor (not XenServer) on several of my UP Boards and UP Squareds - it works well. I installed it under Arch Linux as my dom0, as I like to have the latest linux kernel and security fixes along with the smallest possible footprint. Under Arch Linux, I use Systemd-boot (previously known as Gummiboot) which is an excellent lightweight UEFI-only bootloader. As a matter of fact, it's far easier than any ESXi and XenServer install I've ever done and very compatible on the UP Boards with no issues. Just a bit of advice, if using Xen keep your memory footprint down on Dom0 - don't install anything you don't have to, and you should be able to run it under like 256 MB of ram - freeing the rest for your other DomUs.

    I've even contributed to the Arch Xen wiki with clearer instructions on the UEFI installs when using my UP Squared: https://wiki.archlinux.org/index.php/Xen

    Eric Duncan - UP Evangelist - My thoughts are of my own free will

    Answered? Please remember to mark the posted answered to highlight it for future visitors!

  • GavinLu
    GavinLu New Member Posts: 8

    I installed ESXi 6.7 there. Let me try to trickle the bootloader as you suggested, thanks.

  • eduncan911
    eduncan911 Administrator, Moderator Posts: 157 admin
    edited October 2018

    To be clear, here are the list of operating systems supported by UP:

    https://wiki.up-community.org/Operating_Systems

    I have added my results in the past for other OSes at the bottom (need to update Arch and Xen on there).

    OS support basically comes down to two things:

    • Intel eMMC 5.0 storage controller, released in 2012 (yeah, that old)
    • 1 Gbps Realtek RTL8111G network controllers (both the UP Board and UP Squared use the same)

    The UP Core also has an Intel WiFi/BT module as well.

    The ApolloLake and CherryTrail Intel chipsets have also been out for several years as well.

    In my experience, most newer OSes have these in the last 3 years or so.

    It is the older and slower-to-release kernels that have problems with the eMMC 5.0 Intel controller. Even though it was released in 2012, BSD-based OS (FreeBSD, pfSense) and CentOS-based OS (e.g. XenServer) have improper and buggy implementations of this controller (I linked to the FreeBSD bug for it elsewhere). And therefore, will not install onto the built in storage. For the UP^2, you have the options of using either a SATA or mSATA drive to install onto. However, the UP Board has neither. You're looking at a USB drive install.

    This is not an UP problem as the 6-year old controller is native to the Intel chipsets; however, it is an upstream problem with the OS as it's a well known chipset and old storage controller by now. User's who want this must make their voices known in those communities to fix their implementations. Newer Linux kernels and Windows 10 has support them for many years now.

    Which brings me to ESXi... We all know how picky vSphere is with their approved hardware list - which is an Enterprise product. However, their free ESXi product has even less support and usually runs even further behind in hardware support.

    I would be very interested in your results, as well as others here if you can get an UEFI version of ESXi installed and working. However, I think you may be in for an uphill battle.

    Let us know!

    Eric Duncan - UP Evangelist - My thoughts are of my own free will

    Answered? Please remember to mark the posted answered to highlight it for future visitors!

  • GavinLu
    GavinLu New Member Posts: 8

    Thanks for the background information. I could say I mostly installed ESXi 6.7 successfully on Up Board, with an exception that ESXi can't find eMMC disk and I can't find it on boot menu, so I had to install that to a 16GB USB Thumb disk from a 2GB USB thumb disk with a custom ISO image from standard ESXi 6.7.

  • GavinLu
    GavinLu New Member Posts: 8

    I just doubled checked, ESXi doesn't support eMMC controller driver, and it leverages some home grown boot loader based on EFI.

  • eduncan911
    eduncan911 Administrator, Moderator Posts: 157 admin
    edited October 2018

    @GavinLu said:
    I just doubled checked, ESXi doesn't support eMMC controller driver, and it leverages some home grown boot loader based on EFI.

    Thanks for the update!

    Yep, same results with FreeBSD and pfSense (which uses an older FreeBSD version) the last I checked. Except, FreeBSD actually tried to implement a driver - it has bugs in it though as there's an open issue on their tracker (no one can use it). I installed them to a small SSD drive connected to the SATA port on the UP Squared to get around it, much like your USB install.

    Eric Duncan - UP Evangelist - My thoughts are of my own free will

    Answered? Please remember to mark the posted answered to highlight it for future visitors!

  • Peter Berbec
    Peter Berbec New Member Posts: 8

    Sorry for the zombie bump, but i was looking into this as well.

    BSD can't load, as @GavinLu said. But it turns out esxi can! https://forum.up-community.org/discussion/comment/2665/#Comment_2665

    So if you install esxi and make one pfsense VM, you should be good.

    I'm now thinking of an up squared for a client.

Tagged