Bootable eMMC

From linux-sunxi.org
Jump to: navigation, search

Contents

Introduction

First of all, any eMMC can be also used as a regular SD card. Which means that it can be treated as a single large block device representing its full capacity. And the first stage bootloader (U-Boot SPL or Allwinner's boot0) is expected to be stored in a special hardcoded place between the MBR and the first partition, which does not play very nice with GPT partitioning. But if you are happy with this particular setup, then just go to the Bootable SD card page for further information and instructions.

eMMC supports separate boot partitions for storing the bootloader. They are not sharing the same block device with the data.

At least Allwinner H3 is expected to support eMMC boot paritions because the manual says "Supports eMMC boot operation and alternative boot operation". The JEDEC eMMC spec mentions "boot operation" and "alternative boot operation".

Information for devboard designers

TBD

The BROM implementation details

TBD

Software development and trying something here and now

MBOX icon important.png This is a very preliminary collection of work-in-progress notes, don't expect anything usable yet.

Disabling eMMC boot partitions write protection in Linux (for more details, check https://www.kernel.org/doc/Documentation/mmc/mmc-dev-parts.txt):

   echo 0 > /sys/block/mmcblk1boot0/force_ro
   echo 0 > /sys/block/mmcblk1boot1/force_ro

Just trying to write the SPL into boot partitions does not seem to work. So we need to inspect the BROM code to check what exactly it is doing.

See also

Personal tools
Namespaces

Variants
Actions
Navigation
Tools