Difference between revisions of "Standalone boot (SDVX)"

From DAVE Developer's Wiki
Jump to: navigation, search
(Storing root file system into NAND flash (only Lite))
Line 1: Line 1:
 +
{{InfoBoxTop}}
 +
{{Applies To SDVX}}
 +
{{InfoBoxBottom}}
 +
 
== History ==
 
== History ==
  
Line 4: Line 8:
 
!Version
 
!Version
 
!Date
 
!Date
!XUELK version
+
!SDVX version
 
!Hardware Part Nr
 
!Hardware Part Nr
 
!Notes
 
!Notes
Line 10: Line 14:
 
|1.0.0
 
|1.0.0
 
|September 2018
 
|September 2018
|[[AXEL_ULite_and_SBC_Lynx_Embedded_Linux_Kit_(SDVX)#SDVX_1.0.0|SDVX 1.0.0]]
+
|[[SDV04_Embedded_Linux_Kit_(SDVX)#SDVX_1.0.0|SDVX 1.0.0]]
|XUBE0000I1R
+
|SDV040000C0R
 
|
 
|
 
|-
 
|-
Line 52: Line 56:
 
== ... into eMMC ==
 
== ... into eMMC ==
 
We assume that the following environment variables are present in u-boot:  
 
We assume that the following environment variables are present in u-boot:  
<pre class="mw-collapsible mw-collapsed">
+
<pre>
 
mmc_loadfdt=fatload mmc 0:1 ${fdtaddr} imx6ul-lynx.dtb
 
mmc_loadfdt=fatload mmc 0:1 ${fdtaddr} imx6ul-lynx.dtb
 
mmc_loadk=fatload mmc 0:1 ${loadaddr} uImage
 
mmc_loadk=fatload mmc 0:1 ${loadaddr} uImage

Revision as of 16:35, 17 September 2018

Info Box
SDVX.png Applies to SDVX

History[edit | edit source]

Version Date SDVX version Hardware Part Nr Notes
1.0.0 September 2018 SDVX 1.0.0 SDV040000C0R

Introduction[edit | edit source]

This document was written and tested with the software/hardware combination described in the history table above. However, it contains general concepts that can be adapted on any DAVE Embedded Systems' Linux platform.

We'll explain how to program and configure an SDVX to boot in standalone mode, without the need of a system microSD card or an NFS server, with two options:

  • booting with NAND only
    • In this configuration the whole system will boot without the need of a NOR flash storage, all images and the root file system will be fetched from NAND flash.
  • booting with eMMC only
    • In this configuration the whole system will boot without the need of a NOR flash storage, all images and the root file system will be fetched from NAND flash.

Storing root file system into NAND flash (only Lite)[edit | edit source]

This is a common step for both booting options.

  • Boot the system via SD or NFS as described in the e Quick start guide
  • By default, the NAND is already partitioned to allow booting from NAND-only (see next section) and, thus, some partitions are reserved for U-boot and kernel images. Here we won't modify this default configuration. The MTD partitions can be dumped with /proc/mtd (the partition's name should be self-explanatory)
root@sdvx-lite:~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00800000 00020000 "nand-uboot"
mtd1: 00100000 00020000 "nand-env1"
mtd2: 00100000 00020000 "nand-env2"
mtd3: 00100000 00020000 "nand-fdt"
mtd4: 00100000 00020000 "nand-spare"
mtd5: 00800000 00020000 "nand-kernel"
mtd6: 00400000 00020000 "nand-splash"
mtd7: 1e800000 00020000 "nand-ubi"

Storing boot images ...[edit | edit source]

... into NOR flash[edit | edit source]

U-Boot[edit | edit source]

Linux kernel image and device tree[edit | edit source]

... into NAND flash[edit | edit source]

U-Boot[edit | edit source]

Linux kernel image and device tree[edit | edit source]

... into eMMC[edit | edit source]

We assume that the following environment variables are present in u-boot:

mmc_loadfdt=fatload mmc 0:1 ${fdtaddr} imx6ul-lynx.dtb
mmc_loadk=fatload mmc 0:1 ${loadaddr} uImage
mmc_loadsplash=fatload mmc ${mmcdev}:1 ${loadaddr} ${splashfile}; cp.b ${loadaddr} ${splashimage} ${filesize}
mmc_update=setexpr blocks ${filesize} / 0x200; setexpr blocks ${blocks} + 1; mmc write ${loadaddr} 2 ${blocks}
mmcargs=setenv bootargs root=${mmcroot}
  • Update the bootfile and fdtfile environment variables to fit the filename as found inside the TFTP server.
  • Program kernel and device tree on the MMC with the following U-Boot command