VAR-SOM-MX6 Yocto NAND Recovery V50plus: Difference between revisions

From Variscite Wiki
Line 3: Line 3:


== Preparing a rescue SD card ==
== Preparing a rescue SD card ==
You can either use our pre-built SD image, or our script to create your SD card from Yocto.<br>
Main differences are:<br>
* The Android recovery (Android-eMMC) is only present on the pre-built SD image, ''and not on the SD card built from the Yocto script''.<br>
* The pre-built image's rootfs partition size is 3700MiB, which is also the default size when using the script, but the script also has an option to set the rootfs partition size to fill the whole free space of the used SD card. Anyway, you can always resize the partition later with an external tool such as gparted.<br>
* The script takes into account the sector size of your specific SD card when creating its partitions - but this most probably won't matter to you.<br>
Naturally, the pre-built image is more straight forward and easier to use, while the script method is easier to customize.<br>
=== Using a pre-built SD image ===
* Download mx6-som-nand-recovery-sd.vXX.img.gz (latest which is available on Variscite's FTP)
* Download mx6-som-nand-recovery-sd.vXX.img.gz (latest which is available on Variscite's FTP)
* Plug-in the SD card to your Linux HOST PC, run dmesg and see which device is added (i.e. /dev/sdX or /dev/mmcblkX)
* Plug-in the SD card to your Linux HOST PC, run dmesg and see which device is added (i.e. /dev/sdX or /dev/mmcblkX)
Line 17: Line 10:


(Replace /dev/sdX with your actual device)
(Replace /dev/sdX with your actual device)
</pre>
=== Creating the SD card from Yocto ===
* Follow the [[VAR-SOM-MX6_Yocto_Fido_R3_Build_Yocto_release]] guide and bitbake both fsl-image-qt5-minimal (used for the Yocto-NAND installation) and fsl-image-qt5 (used for the Yocto-eMMC installation and for the rootfs of the SD card itself).
* Plug-in the SD card to your Linux HOST PC, run dmesg and see which device is added (i.e. /dev/sdX or /dev/mmcblkX)
<pre>
cd ~/var-som-mx6-yocto-fido/build_x11
sudo ../sources/meta-variscite-mx6/scripts/var_mk_yocto_sdcard/var-create-yocto-sdcard.sh <options> /dev/sdX
(Replace /dev/sdX with your actual device)
</pre>
<pre>
options:
  -h            Display help message
  -s            Only show partition sizes to be written, without actually write them
  -a            Automatically set the rootfs partition size to fill the SD card
If you don't use the '-a' option, a default rootfs size of 3700MiB will be used
</pre>
</pre>



Revision as of 12:43, 22 March 2016

Variscite provides a recovery SD card image that can be used to install the pre-built U-Boot, Linux kernel and the UBI file system into the NAND-Flash This SD card image includes a script (nand-recovery.sh) that installs all the boot images and root file-system.

Preparing a rescue SD card

  • Download mx6-som-nand-recovery-sd.vXX.img.gz (latest which is available on Variscite's FTP)
  • Plug-in the SD card to your Linux HOST PC, run dmesg and see which device is added (i.e. /dev/sdX or /dev/mmcblkX)
$ gunzip mx6-som-nand-recovery-sd.XX.img.gz
$ sudo dd if=mx6-som-nand-recovery-sd.vXX.img of=/dev/sdX bs=128k

(Replace /dev/sdX with your actual device)

Recover NAND Flash

  • Power-off the board.
  • Insert the SD card into the SD/MMC slot of the carrier board (DVK)
  • Press and hold the boot-select button, and power-on the board while button is pressed
  • The board will automatically boot into Linux from SD card

Flash from GUI

Applications Fido 10 1.png

  • Click on the right arrowhead on the upper right corner to change the desktop into Utilities.

Utilities Fido 10 1.png

  • Push Android-eMMC to flash Android into eMMC.
  • Push Yocto-NAND to flash Yocto into NAND.
  • Push Yocto-eMMC to flash Yocto into eMMC.

Flash from command line

  • Login as root (no password)
  • From Linux command line, type one of flash options
$ android-emmc.sh 	- Flash Android into eMMC
$ yocto-emmc.sh		- Flash Yocto into eMMC
$ yocto-nand.sh		- Flash Yocto into NAND

SD card image file tree

/media/rootfs/opt/images/
├── Android
│   └── Emmc
│       ├── SPL
│       ├── SPL.mmc
│       ├── boot-imx6q-var-dart.img
│       ├── boot-som-mx6dl-c.img
│       ├── boot-som-mx6dl-r.img
│       ├── boot-som-mx6q-c.img
│       ├── boot-som-mx6q-r.img
│       ├── boot-som-mx6q-vsc.img
│       ├── boot-som-solo-c.img
│       ├── boot-som-solo-r.img
│       ├── boot-som-solo-vsc.img
│       ├── boot.img
│       ├── recovery-imx6q-var-dart.img
│       ├── recovery-som-mx6dl-c.img
│       ├── recovery-som-mx6dl-r.img
│       ├── recovery-som-mx6q-c.img
│       ├── recovery-som-mx6q-r.img
│       ├── recovery-som-mx6q-vsc.img
│       ├── recovery-som-solo-c.img
│       ├── recovery-som-solo-r.img
│       ├── recovery-som-solo-vsc.img
│       ├── recovery.img
│       ├── system.img
│       ├── u-boot-var-imx6-nand.img
│       └── u-boot-var-imx6-sd.img
└── Yocto
    ├── SPL
    ├── SPL.mmc
    ├── rootfs.tar.bz2
    ├── rootfs.ubi.img
    ├── u-boot.img
    ├── u-boot.img.mmc
    ├── uImage
    ├── uImage-imx6dl-var-som-solo-vsc.dtb
    ├── uImage-imx6dl-var-som-solo.dtb
    ├── uImage-imx6dl-var-som.dtb
    ├── uImage-imx6q-var-dart.dtb
    ├── uImage-imx6q-var-som-vsc.dtb
    └── uImage-imx6q-var-som.dtb

Script files located on /media/rootfs/sbin/:

nand-recovery.sh
mkmmc_yocto.sh
yocto-dart.sh
yocto-emmc.sh
yocto-nand.sh
mkmmc_android.sh
android-emmc.sh