VAR-SOM-MX7 Debian Jessie R1
Overview
This page describes how to assemble and install Debian Jessie distribution on Variscite board VAR-SOM-MX7.
These instructions were tested with Debian 8.4 x64 (jessie) and Ubuntu 14.04/16.04 x64! When using other distributions, there may be problems.
Create build environment
Installing required packages
Debian jessie x64
If your system does not have "sudo", set the "sudo" using the link: [1]
On your Debian building machine:
$ sudo apt-get install -y binfmt-support qemu qemu-user-static debootstrap kpartx $ sudo apt-get install -y lvm2 dosfstools gpart binutils git lib32ncurses5-dev python-m2crypto $ sudo apt-get install -y gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev $ sudo apt-get install -y autoconf libtool libglib2.0-dev libarchive-dev $ sudo apt-get install -y python-git xterm sed cvs subversion coreutils texi2html bc $ sudo apt-get install -y docbook-utils python-pysqlite2 help2man make gcc g++ desktop-file-utils libgl1-mesa-dev $ sudo apt-get install -y libglu1-mesa-dev mercurial automake groff curl lzop asciidoc u-boot-tools mtd-utils
Ubuntu 14.04/16.04 x64
On your Ubuntu building machine:
$ sudo apt-get install -y binfmt-support qemu qemu-user-static debootstrap kpartx $ sudo apt-get install -y lvm2 dosfstools gpart binutils git lib32ncurses5-dev python-m2crypto $ sudo apt-get install -y gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev $ sudo apt-get install -y autoconf libtool libglib2.0-dev libarchive-dev $ sudo apt-get install -y python-git xterm sed cvs subversion coreutils texi2html bc $ sudo apt-get install -y docbook-utils python-pysqlite2 help2man make gcc g++ desktop-file-utils libgl1-mesa-dev $ sudo apt-get install -y libglu1-mesa-dev mercurial automake groff curl lzop asciidoc u-boot-tools mtd-utils
Deploy source
Download archive contains the build script and support files for building Debian (Jessie) for this board:
$ cd ~ $ git clone https://github.com/varigit/debian-var.git -b debian_jessie_mx7_var01 var_som_mx7_debian
Create environment (Internet connection should be available):
$ cd ~/var_som_mx7_debian $ ./make_var_som_mx7_debian.sh -c deploy
This environment prepared to build.
Make Debian
Build all
Internet connection should be available
$ cd ~/var_som_mx7_debian $ sudo ./make_var_som_mx7_debian.sh -c all | tee 2.log
Build by parts
Build rootfs
Internet connection should be available
$ cd ~/var_som_mx7_debian $ sudo ./make_var_som_mx7_debian.sh -c rootfs
Build kernel, dtb files and kernel modules
$ cd ~/var_som_mx7_debian $ sudo ./make_var_som_mx7_debian.sh -c kernel $ sudo ./make_var_som_mx7_debian.sh -c modules
Build bootloader
$ cd ~/var_som_mx7_debian $ sudo ./make_var_som_mx7_debian.sh -c bootloader
Pack rootfs
For the create archive root file system (rootfs.tar.bz2) and image ubi (rootfs.ubi.img) run the following commands:
$ cd ~/var_som_mx7_debian $ sudo ./make_var_som_mx7_debian.sh -c rtar $ sudo ./make_var_som_mx7_debian.sh -c rubi
Create boot SD card
- Follow the steps for make rootfs, kernel, bootloader;
- Insert the SD card to card reader connected to a host system;
- Run the following commands (Caution! All data on the card will be destroyed):
$ cd ~/var_som_mx7_debian $ sudo ./make_var_som_mx7_debian.sh -c sdcard -d /dev/sdX
where '/dev/sdX' path to the block SD device in your system.
Successful process log
I: Flashing U-Boot 35+0 records in 35+0 records out 35840 bytes (36 kB) copied, 0.0773679 s, 463 kB/s 237+1 records in 237+1 records out 243104 bytes (243 kB) copied, 0.720032 s, 338 kB/s I: Flashing "BOOT-VARSOM" partition I: Flashing "rootfs" partition I: Copying Debian images to /opt/images/Debian I: Copying NAND U-Boot to /opt/images/Debian I: Copying MMC U-Boot to /opt/images/Debian I: Copying scripts to /opt/images/Debian I: Sync sdcard... I: Done make sdcard! I: I: Command: "sdcard" end. Exit code: 0 I:
Boot board with a bootable SD-Card
A typical use-case, is to boot from SD-Card, program eMMC or NAND flash, and re-boot from eMMC/NAND.
Setting board dip-switches
Booting your system requires switching the relevant dip-switches to "Boot from SD-Card". See table below.
- "00" - Boot from SD
- "01" - Boot from NAND
- "10" - Boot from eMMC
- "11" - N/A
Be aware that your SOM has either eMMC or NAND but never both !
To boot board with SD-Card, Follow the steps below:
- Power-off the board.
- Insert the SD card into the SD/MMC slot of the carrier board (DVK)
- Switch the relevant dip-switch to "Boot from SD"
- Power-up board
- The board will automatically boot into Linux from SD
Build Results
The resulted images are located in ~/var_mx7_var_som_debian/output/.
Image Name |
How to use |
---|---|
rootfs.tar.bz2 | Used to create sdcard and rootfs.ubi.img |
rootfs.ubi.img | Use for flash to nand |
zImage | Linux kernel image |
u-boot.img.nand | U-Boot built for NAND Flash. |
u-boot.img.emmc | u-boot built for SD-Card boot, or eMMC boot in case of DART-MX6UL. |
Device Tree Name |
Boot Device |
imx7d-var-som-emmc.dtb | Boot from SD or internal eMMC |
imx7d-var-som-nand.dtb | Boot from internal NAND |
Linux console access
User name |
User password |
User descriptor |
---|---|---|
root | root | system administrator |
user | user | local user |
xuser | used for X session access |
Flash images to NAND and eMMC
To flash images to NAND, boot from SD card and run the following command root:
# debian-nand.sh
To flash images to eMMC, boot from SD card and run the following command as root:
# debian-emmc.sh
Both the above commands are located in /usr/bin folder of uSD card used to boot Debian.