20778
Comment: First boot
|
← Revision 69 as of 2020-06-07 09:57:28 ⇥
5944
Restored to state before my contribution, because of license issues. My changes are moved to separate page [[InstallingDebianOn/Freescale/i.MX53 Quick Start board/debootstrap]]
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
## page was renamed from InstallingDebianOn/Freescale/QuickStart | |
Line 16: | Line 15: |
<<TableOfContents()>> |
|
Line 20: | Line 17: |
Freescale [[https://www.nxp.com/design/development-boards/i-mx-evaluation-and-development-boards/i-mx53-quick-start-board:IMX53QSB|QuickStart]] board is a development board. It is ARM architecture. The SoC is Freescale i.MX53. | Freescale [[http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=IMX53QSB|QuickStart]] board is a development board. It is ARM architecture. The SoC is Freescale i.MX53. |
Line 22: | Line 19: |
== Hardware == | == System as sold == |
Line 24: | Line 21: |
* CPU: MCIMX535DVV1B (armhf, with TrustZone) * RAM: 1GB DDR3 * Ethernet (J2B): SMSC LAN8720A Ethernet Transceiver, with auto‐negotiation * The SD Card Slot (J5) with support SDIO cards (WiFi, Bluetooth, etc) * SATA 7‐pin Data Connector (J7): it is not possible to boot from a SATA disk by default * Audio Input/Output (J6/J18): SGTL5000 * LVDS Connector (J9): 30‐pin (Hirose, DF19G‐30P‐1H(56)) * MMA8450QT Accelerometer * PMIC DA9053 or MC34708 — depending on board revision * 3.2V Secondary Voltage Regulator: Richtek, RT8010 * Optional Li‐ION Battery Connector (J14): 3‐Pin Header * Optional Back‐Up Coin Cell posts (JP1, JP2): 2‐Pin for RTC Operation: Sanyo ML1220‐VM1 or equivalent `/proc/cpuinfo`: {{{ processor : 0 model name : ARMv7 Processor rev 5 (v7l) BogoMIPS : 66.66 Features : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x2 CPU part : 0xc08 CPU revision : 5 Hardware : Freescale i.MX53 (Device Tree Support) Revision : 0000 Serial : 0000000000000000 }}} == Board revisions == Freescale kit name is "IMX53QSB" and another names are "IMX53Loco" and "MX53 LOCO". Actually there are two boards: === MCIMX53-START === Older version: PCB with yellow lines, PMIC Dialog DA9053. Has 6 revisions: A, B, C, D, E, F. The Device tree file is `imx53-qsb.dtb` === MCIMX53-START-R === The new one, with PMIC MC34708 Also you can see revision letter on Ethernet socket, it looks like "700-27104 REV C". The Device tree file is `imx53-qsrb.dtb` == Install Debian with debootstrap == {{{{#!wiki comment Work in progress. This part of documentation is not finished yet. }}}} To install, you need: * any Debian/Ubuntu computer * SD card reader * SD card, size at least 2GB * RS232 cable recommended, but not mandatory You have to install `qemu-user-static` if your computer architecture is not armhf. {{{#!highlight shell sudo apt update sudo apt install qemu-user-static debootstrap }}} === Disk partitions === Use `gparted`, `cfdisk`, [[Parted]] of `fdisk` (see [[Partition]] for more info about utils). Create partitions on your SD card: * use MBR, "MS-DOS Partition Table" (theoretically it is possible to use GPT, see [[https://www.barebox.org/doc/latest/boards/imx.html#using-gpt-on-i-mx|Using GPT on i.MX]]) * keep at least 1MB unused space at the beginning of SD card (most modern partition editors do it automatically) * ext2 for boot, for example 200MB (u-boot can boot from ext4 too) * ext4 for root, for all available space * swap, if you wish ==== Check free space before partitions ==== You need at least 500 KB free space before first partition. It is better to check this before next steps: {{{ % sudo fdisk -l /dev/sdX Disk /dev/sdb: 7,52 GiB, 8064598016 bytes, 15751168 sectors Disk model: Card Reader Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x8a275704 Device Boot Start End Sectors Size Id Type /dev/sdb1 * 2048 2099199 2097152 1G 83 Linux /dev/sdb2 2099200 12584959 10485760 5G 83 Linux }}} Here, first partition starts on 2048*512 = 1048576, ~1MB, it is OK to write `u-boot` in this free space. Or, check first partition align by `parted`: {{{ % sudo parted /dev/sdb align-check optimal 1 1 aligned }}} Or, check `sudo sfdisk --list-free`. ==== Create filesystem and mount ==== In commands below, replace `/dev/sdX` with your path to SD-card device. Use `lsblk` to view full list. {{{#!highlight shell sudo mkfs.ext2 -L MX53_BOOT /dev/sdX1 sudo mkfs.ext4 -T small -L MX53_ROOT /dev/sdX2 sudo mkdir -p /mnt/debinst sudo mount LABEL="MX53_ROOT" /mnt/debinst sudo mkdir -p /mnt/debinst/boot sudo mount LABEL="MX53_BOOT" /mnt/debinst/boot }}} === Setup u-boot === Here is two option: install u-boot image precompiled by Debian or compile your own. ==== Precompiled by Debian ==== No support for GPT. In commands below, replace `/dev/sdX` with your path to SD-card device. Use `lsblk` to view full list. {{{#!highlight shell wget "http://ftp.us.debian.org/debian/dists/buster/main/installer-armhf/current/images/u-boot/MX53LOCO/u-boot.imx.gz" zcat u-boot.imx.gz > u-boot.imx sudo dd if=u-boot.imx of=/dev/sdX seek=2 bs=512 }}} Check partition table is not corrupted by `u-boot` image and wrong partition align: {{{ % sudo sfdisk --verify /dev/sdb /dev/sdb: Remaining 8409088 unallocated 512-byte sectors. }}} Here no errors found. Just for information, RS232 console output of `u-boot` from latest step (to see version and variables): {{{ U-Boot 2019.01+dfsg-7 (May 14 2019 - 02:07:44 +0000) CPU: Freescale i.MX53 rev2.1 at 800 MHz Reset cause: POR Board: MX53 LOCO I2C: ready DRAM: 1 GiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 Loading Environment from MMC... *** Warning - bad CRC, using default environment In: serial Out: serial Err: serial Net: FEC Hit any key to stop autoboot: 0 => printenv baudrate=115200 boot_fdt=try bootcmd=mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi bootdelay=2 bootscript=echo Running bootscript from mmc ...; source ethact=FEC ethaddr=00:04:9f:02:3e:73 ethprime=FEC0 fdt_addr=0x71000000 fdt_file=imx53-qsrb.dtb image=zImage ip_dyn=yes loadaddr=0x72000000 loadbootscript=load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script}; loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file} loadimage=load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image} mmcargs=setenv bootargs console=ttymxc0,${baudrate} root=${mmcroot} mmcboot=echo Booting from mmc ...; run mmcargs; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if run loadfdt; then bootz ${loadaddr} - ${fdt_addr}; else if test ${boot_fdt} = try; then bootz; else echo WARN: Cannot load the DT; fi; fi; else bootz; fi; mmcdev=0 mmcpart=1 mmcroot=/dev/mmcblk0p2 rw rootwait netargs=setenv bootargs console=ttymxc0,${baudrate} root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp netboot=echo Booting from net ...; run netargs; if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; ${get_cmd} ${image}; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if ${get_cmd} ${fdt_addr} ${fdt_file}; then bootz ${loadaddr} - ${fdt_addr}; else if test ${boot_fdt} = try; then bootz; else echo ERROR: Cannot load the DT; exit; fi; fi; else bootz; fi; script=boot.scr Environment size: 1518/8188 bytes }}} ==== Compile your u-boot image ==== {{{{#!wiki comment This chapter is not written. }}}} === Run debootstrap === {{{{#!wiki comment TODO: try wrapper `qemu-debootstrap`. }}}} See official Debian guide [[https://www.debian.org/releases/stable/armhf/apds03.en.html|Installing Debian GNU/Linux from a Unix/Linux System]] for more information. Run debootstrap (replace `ftp.us.debian.org` with your nearest Debian mirror): {{{#!highlight shell sudo debootstrap --arch armhf --foreign buster /mnt/debinst http://ftp.us.debian.org/debian }}} It will use about 190MB of space. === Run chroot === {{{#!highlight shell sudo cp -p /usr/bin/qemu-arm-static /mnt/debinst/usr/bin/ sudo chroot /mnt/debinst qemu-arm-static /bin/bash env -i bash # Cleanup all environment variables export TERM=xterm-color export HOME=/root export LANG=C.UTF-8 }}} === Finish debootstrap === Commands for chroot (execution is slow, because of architecture emulation by `qemu`): {{{#!highlight shell /debootstrap/debootstrap --second-stage }}} === System setup === More details about steps below see in [[https://www.debian.org/releases/stable/armhf/apds03.en.html|Installing Debian GNU/Linux from a Unix/Linux System]]. Commands for chroot: {{{#!highlight shell apt install ncurses-term # to avoid `dpkg` warnings about Dialog update-alternatives --config editor editor /etc/fstab # /dev/mmcblk0p2 / auto errors=remount-ro 0 1 # /dev/mmcblk0p1 /boot auto ro,nosuid,nodev 0 2 editor /etc/adjtime dpkg-reconfigure tzdata editor /etc/network/interfaces editor /etc/resolv.conf echo imx53 > /etc/hostname apt install locales dpkg-reconfigure locales apt install console-setup dpkg-reconfigure keyboard-configuration apt search linux-image apt install linux-image-armmp u-boot-imx apt install init }}} === User account setup === Commands for chroot: {{{#!highlight shell apt install ssh passwd useradd -m -G users,audio,adm,sudo newuser passwd newuser }}} === Configure flash-kernel === Commands for chroot: {{{#!highlight shell apt install flash-kernel }}} flash-kernel uses `/proc/device-tree/model`, but it is wrong in chroot, so fill {{{#!highlight shell echo "Freescale i.MX53 Quick Start-R Board" > /etc/flash-kernel/machine # To substitute instead of `/proc/device-tree/model` which not accessible under chroot after debootstrap }}} Also, add manually to `/usr/share/flash-kernel/db/all.db`: {{{ Machine: Freescale i.MX53 Quick Start-R Board Machine: Freescale MX53 LOCO Board Kernel-Flavors: armmp mx5 DTB-Id: imx53-qsrb.dtb Boot-DTB-Path: /boot/board.dtb U-Boot-Kernel-Address: 0x70008000 U-Boot-Initrd-Address: 0x72000000 Boot-Kernel-Path: /boot/uImage Boot-Initrd-Path: /boot/uInitrd Required-Packages: u-boot-tools Bootloader-Sets-Incorrect-Root: no U-Boot-Script-Name: bootscr.mx5-my Boot-Script-Path: /boot/boot.scr }}} {{{#!highlight shell cp -p /etc/flash-kernel/bootscript/bootscr.uboot-generic /etc/flash-kernel/bootscript/bootscr.mx5-my }}} Add to the beginning of `/etc/flash-kernel/bootscript/bootscr.mx5-my`: {{{ setenv distro_bootpart ${mmcpart} setenv boot_targets mmc setenv fdtfile ${fdt_file} setenv bootpart ${mmcpart} setenv devnum ${mmcdev} setenv console ttymxc0 setenv devtype mmc setenv fdt_addr_r ${fdt_addr} setenv ramdisk_addr_r ${loadaddr} setenv kernel_addr_r 0x70008000 setenv prefix / }}} Edit file `/etc/default/flash-kernel`: {{{ LINUX_KERNEL_CMDLINE="root=/dev/mmcblk0p2 ro rootfstype=ext4 rootwait fixrtc" }}} Run flash-kernel: {{{#!highlight shell flash-kernel }}} Check files in `/boot/`: {{{ # ls -lAF /boot/ total 51020 -rw-r--r-- 1 root root 3138658 Apr 29 12:38 System.map-4.19.0-9-armmp -rw-r--r-- 1 root root 21932 Jun 6 21:14 board.dtb -rw-r--r-- 1 root root 3267 Jun 6 21:14 boot.scr -rw-r--r-- 1 root root 209315 Apr 29 12:38 config-4.19.0-9-armmp lrwxrwxrwx 1 root root 36 Jun 6 21:13 dtb -> dtbs/4.19.0-9-armmp/./imx53-qsrb.dtb lrwxrwxrwx 1 root root 36 Jun 6 21:13 dtb-4.19.0-9-armmp -> dtbs/4.19.0-9-armmp/./imx53-qsrb.dtb drwxr-xr-x 3 root root 4096 Jun 6 21:13 dtbs/ -rw-r--r-- 1 root root 20112393 Jun 6 19:07 initrd.img-4.19.0-9-armmp drwx------ 2 root root 16384 Jun 6 16:22 lost+found/ -rw-r--r-- 1 root root 4260416 Jun 6 21:14 uImage -rw-r--r-- 1 root root 20112457 Jun 6 21:14 uInitrd -rw-r--r-- 1 root root 4260352 Apr 29 12:38 vmlinuz-4.19.0-9-armmp }}} === Prepare to boot === Exit from chroot: {{{#!highlight shell exit }}} Umount partitions: {{{#!highlight shell sudo umount /mnt/debinst/boot /mnt/debinst sudo sync }}} === First boot === Insert SD card and power on the board. RS232 output: {{{ U-Boot 2019.01+dfsg-7 (May 14 2019 - 02:07:44 +0000) CPU: Freescale i.MX53 rev2.1 at 800 MHz Reset cause: POR Board: MX53 LOCO I2C: ready DRAM: 1 GiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 Loading Environment from MMC... *** Warning - bad CRC, using default environment In: serial Out: serial Err: serial Net: FEC Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc0 is current device 3267 bytes read in 83 ms (38.1 KiB/s) Running bootscript from mmc ... ## Executing script at 72000000 4260352 bytes read in 390 ms (10.4 MiB/s) 21932 bytes read in 89 ms (240.2 KiB/s) 20111945 bytes read in 1583 ms (12.1 MiB/s) Booting Debian 4.19.0-9-armmp from mmc 0:1... Kernel image @ 0x70008000 [ 0x000000 - 0x410200 ] ## Flattened Device Tree blob at 71000000 Booting using the fdt blob at 0x71000000 Loading Ramdisk to 8e23a000, end 8f568249 ... OK Loading Device Tree to 8e231000, end 8e2395ab ... OK Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 4.19.0-9-armmp (debian-kernel@lists.debian.org) (gcc version 8.3.0 (Debian 8.3.0-6)) #1 SMP Debian 4.19.118-2 (2020-04-29) [ 0.000000] CPU: ARMv7 Processor [412fc085] revision 5 (ARMv7), cr=10c5387d [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache [ 0.000000] OF: fdt: Machine model: Freescale i.MX53 Quick Start-R Board [ 0.000000] Memory policy: Data cache writeback [ 0.000000] efi: Getting EFI parameters from FDT: [ 0.000000] efi: UEFI not found. [ 0.000000] cma: Reserved 16 MiB at 0xcf000000 [ 0.000000] CPU: All CPU(s) started in SVC mode. [ 0.000000] random: get_random_bytes called from start_kernel+0xa0/0x504 with crng_init=0 [ 0.000000] percpu: Embedded 17 pages/cpu s39756 r8192 d21684 u69632 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 260992 [ 0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p2 ro rootfstype=ext4 rootwait fixrtc [ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes) [ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes) [ 0.000000] Memory: 985968K/1048576K available (9216K kernel code, 1111K rwdata, 2588K rodata, 2048K init, 311K bss, 46224K reserved, 16384K cma-reserved, 507904K highmem) [ 0.000000] Virtual kernel memory layout: [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB) [ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB) [ 0.000000] vmalloc : 0xe0800000 - 0xff800000 ( 496 MB) [ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB) [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB) [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB) [ 0.000000] .text : 0x(ptrval) - 0x(ptrval) (10208 kB) [ 0.000000] .init : 0x(ptrval) - 0x(ptrval) (2048 kB) [ 0.000000] .data : 0x(ptrval) - 0x(ptrval) (1112 kB) [ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 312 kB) … Debian GNU/Linux 10 imx53 ttymxc0 imx53 login: }}} === Next steps === Possible ways to do: * try readonly mode, to reduce SD card wear out |
It comes without any OS on it. On Freescale's website you can download the BSP which is based on Ubuntu. |
Line 465: | Line 25: |
By installing `linaro-image-tools` and running the `linaro-fetch-image-ui` we can easily create an Ubuntu image for this hardware. Thus if we want to install Debian, the easiest way is to create a Debian binary rootfs with the a hwpack for Debian and then use `linaro-media-create` to create the final image for this hardware. | By installing `linaro-image-tools` and running the `linaro-fetch-image-ui` we can easily create an Ubuntu image for this hardware. Thus if we want to install Debian, the easist way is to create a Debian binary rootfs with the a hwpack for Debian and then use `linaro-media-create` to create the final image for this hardware. |
Line 467: | Line 27: |
== Installation steps (by `linaro-image-tools`) == | = Installation steps (by `linaro-image-tools`) = |
Line 469: | Line 29: |
=== Environment === | == Environment == |
Line 473: | Line 33: |
=== Prepare Debian binary rootfs === | == Prepare Debian binary rootfs == |
Line 481: | Line 41: |
3. Execute | 3. Execute |
Line 518: | Line 78: |
Line 521: | Line 81: |
=== Make a hwpack === | == Make a hwpack == |
Line 565: | Line 125: |
=== Build the image === | == Build the image == |
Line 572: | Line 132: |
Line 576: | Line 136: |
=== Boot === | == Boot == |
Line 584: | Line 144: |
2. execute "setenv mmcpart 2" | 2. execute "setenv mmcpart 2" |
Line 590: | Line 150: |
CategoryDebianOn | CategoryDebianOn CategoryDebianOn |
DebianOn is an effort to document how to install, configure and use Debian on some specific hardware. Therefore potential buyers would know if that hardware is supported and owners would know how get the best out of that hardware. The purpose is not to duplicate the Debian Official Documentation, but to document how to install Debian on some specific hardware. If you need help to get Debian running on your hardware, please have a look at our user support channels where you may find specific channels (mailing list, IRC channel) dedicated to certain types of hardware. |
Models covered
Freescale QuickStart
Overall Status
Freescale QuickStart board is a development board. It is ARM architecture. The SoC is Freescale i.MX53.
System as sold
It comes without any OS on it. On Freescale's website you can download the BSP which is based on Ubuntu.
Linaro support
By installing linaro-image-tools and running the linaro-fetch-image-ui we can easily create an Ubuntu image for this hardware. Thus if we want to install Debian, the easist way is to create a Debian binary rootfs with the a hwpack for Debian and then use linaro-media-create to create the final image for this hardware.
Installation steps (by `linaro-image-tools`)
Environment
Please use Debian Stable or Debian Jessie or later version because we need newer linaro-image-tools and live-build.
Prepare Debian binary rootfs
In this section we create a Debian Stable armhf rootfs.
We use live-build to create Debian binary rootfs. The first step is make an empty directory, for example, "/tmp/live_cd"
Enter the created directory by "cd /tmp/live_cd"
- Execute
lb config --apt-indices none --architectures armhf --binary-images tar --binary-filesystem ext3 --bootloader "" --cache false --chroot-filesystem none --debian-installer-gui false --distribution stable --parent-distribution stable --parent-debian-installer-distribution stable --gzip-options '--best --rsyncable' --initramfs none --linux-flavours none --linux-packages none --bootstrap-qemu-arch armhf --bootstrap-qemu-static /usr/bin/qemu-arm-static
Create ./config/hooks/0001_set_user_linaro.hook.chroot as an executable shell script:
#!/bin/sh echo "I: create linaro user" adduser --gecos linaro --disabled-login linaro echo "I: set linaro user password" echo "linaro:linaro" | chpasswd DEFGROUPS="sudo,adm,dialout,cdrom,audio,dip,video,plugdev,bluetooth" echo "I: add linaro to ($DEFGROUPS) groups" usermod -a -G ${DEFGROUPS} linaro
Create config/package-lists/default0.list.chroot
aptitude u-boot-tools initramfs-tools sudo bluez
Run "chmod a+rx ./config/hooks/*"
Re-run "lb config"
Run "sudo lb build"
And we should have a live-image-armhf.tar.tar generated now and must use xz to convert it to live-image-armhf.tar.tar.xz.
Run "xz -9e live-image-armhf.tar.tar"
Make a hwpack
In this section we create a hwpack that contains Debian mx5 kernel and mx53loco u-boot.
create a config file "/tmp/linaro-debian-mx5" as following:
[hwpack] format=2.0 name=linaro-debian-mx5 architectures=armhf origin=Linaro maintainer=Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org> support=unsupported packages=linux-image-armmp u-boot-imx mmc_id=0:2 u_boot_package=u-boot-imx u_boot_file=usr/lib/u-boot/mx53loco/u-boot.imx u_boot_in_boot_part=Yes u_boot_dd=2 serial_tty=ttymxc0 kernel_addr=0x70000000 initrd_addr=0x72000000 load_addr=0x70008000 partition_layout=reserved_bootfs_rootfs kernel_file=boot/vmlinuz-*-armmp initrd_file=boot/initrd.img-*-armmp dtb_file=usr/lib/linux-image-*-armmp/imx53-qsb.dtb dtb_addr=0x74000000 boot_script=boot.scr extra_serial_options=console=tty0 console=ttymxc0,115200n8 loader_start=1 [debian] sources-entry=http://ftp.us.debian.org/debian/ stable main
Run "linaro-hwpack-create /tmp/linaro-debian-mx5 1"
Note that there are 2 kinds of QuickStart. One is with Dialog's PMIC. Another is with Freescale's MC34708 (newer one). If you bought the new one, please change "dtb_file=usr/lib/linux-image-*-armmp/imx53-qsb.dtb" to "dtb_file=usr/lib/linux-image-*-armmp/imx53-qsrb.dtb"
Now we have a good hwpack for Debian image
"hwpack_linaro-debian-mx5_1_armhf_unsupported.tar.gz"
Build the image
We can use linaro-media-create to build the Debian image.
linaro-media-create --image-file /tmp/linaro-debian.img --dev mx53loco --hwpack /tmp/live_cd/hwpack_linaro-debian-mx5_1_armhf_unsupported.tar.gz --binary /tmp/live_cd/live-image-armhf.tar.tar.xz
And now we got an image file called linaro-debian.img. Just use dd to write it to a microSD card.
Boot
Just insert the microSD card into QuickStart board and boot.
In the first time, we need to press return key quickly to enter the u-boot shell to change an environment variable. The default mmcpart variable is set to 1. We have to change it to 2.
When you see "Hit any key to stop autoboot: 3..2..1..0", press enter quickly.
- execute "setenv mmcpart 2"
- execute "saveenv"
- execute "reset" to reboot.
After several seconds we'll get a login prompt from the serial console. And then we use root to login. The root password is "linaro".