Embedded module TQMLS102xA - PTXdist Linux BSP documentation


we suggest to read the following pages before you proceed with this page

Finally, you will find the built images in platform-<platformname>/images.

Complete system images:

  • uboot-sd.img

The complete system images are intend for:

  • development system initialisation
  • deployment

Bootloader images:

  • u-boot.bin
  • u-boot-with-spl-pbl-mmcsd-2017.07.bin
  • u-boot-with-spl-pbl-ecc-mmcsd-2017.07.bin
  • u-boot-pbl.bin.bswap
  • u-boot-pbl.bin.ecc.bswap
  • u-boot-pbl.bin.ae.ecc.bswap

Linux images:

  • linuximage : Kernel (zImage)
  • linuximage-rt : Preempt-RT Kernel (zImage)

Device tree blobs:

 
* **ls1021a-mbls1021a.dtb**		         : default device tree without display
* **ls1021a-mbls1021a-dmb-ct21.dtb**		 : with parallel display (DMB S070PWS19HP-FC21)
* **ls1021a-mbls1021a-dmb-ct44.dtb**		 : with parallel display (DMB S070SWV29HG-DC44)
* **ls1021a-mbls1021a-glyn-etm0700g0edh6.dtb** : with parallel display (Glyn ETM0700G0EDH6)
* **ls1021a-mbls1021a-lvds-tm070jvhg33.dtb**	 : with LVDS display (Tianma TM070JVHG33)
* **ls1021a-mbls1021a-hdmi.dtb**		 : with HDMI display

Rootfs images:

  • root.tgz : Root file system archive (for NFS etc.)
  • root.ext2 : Root file system partition image (for system update)
  • root.ubi : ubi partition for QSPI NOR
  • root.ubifs: ubifs image for QSPI NOR

Firmware images:

  • firmware.tgz : firmware image contains all devicetree blobs and linux kernel image
  • firmware.img : firmware image archive (for firmware image creation)

To install a new firmware use SD cards. To copy the built images on the host system to a connected card type:

$ cd <BSP project>/platform-<platform_name>/images
$ sudo dd if=<label mod_name_code>MOD_NAME_CODE</label>_hd.img of=/dev/sdf bs=1M conv=fsync #Assuming the SD card is assigned to /dev/sdf

To find out what device file the SD card has, type “dmesg” after you connect the card to see the system messages. At the bottom you'll see some “Attached scsi …” messages along with something like:

[ 8197.588395]  sdf: sdf1


To update bootloader / kernel / devicetree in a running system you have to copy the images to a tftp directory and upload them to the eMMC or SD Card.

Please see How to setup TFTP Server

1. Boot from eMMC or SD and stop autoboot in U-Boot

Hit any key to stop autoboot:  0
=>

2. Set U-Boot variable mmcdev according to the drive you want to write to

=> setenv mmcdev <Nr.>

mmcdev depends on the placement of eMMC on TQMLS102xA module

Device assignment:
mmcdev 0 = SD Card (if eMMC ist not placed)
mmcdev 0 = eMMC (if eMMC ist placed)

3. Connect device via ethernet to a tftp server supplying the image
4. Provide the correct network configuration in U-Boot:

  • ⇒ setenv autoload no
  • ⇒ setenv serverip <serverip> (e.g.: setenv serverip 192.168.100.110)
  • ⇒ setenv ipaddr <ipaddr> (e.g.: setenv ipaddr 192.168.100.111)
  • ⇒ setenv netmask <netmask> (e.g.: setenv netmask 255.255.255.0)


5. Provide U-Boot the file name of the desired image on the tftp server:

  • For U-Boot update on eMMC/SD Card : ⇒ setenv uboot <filename>
  • For U-Boot update on QSPI NOR : ⇒ setenv uboot-qspi <filename>
  • For Device Tree update on eMMC/SD Card and QSPI NOR : ⇒ setenv fdt_file <filename>
  • For Kernel update on eMMC/SD Card and QSPI NOR : ⇒ setenv zimage <filename>


6. Perform Update:

  • U-Boot update on eMMC /SD Card : ⇒ run update_uboot
  • U-Boot update on QSPI NOR : ⇒ run update_uboot-qspi
  • Device Tree update on eMMC /SD Card : ⇒ run update_fdt
  • Device Tree update on QSPI NOR : ⇒ run update_fdt-qspi
  • Kernel update on eMMC /SD Card : ⇒ run update_kernel
  • Kernel update on QSPI NOR : ⇒ run update_kernel-qspi

The u-boot update scripts automatically implement the selection of the primary copy to boot.



Prerequisites

To boot the MOD_NAME from network you need a working bootloader in eMMC/SD-card or SPI-NOR (placement option on MOD_NAME) which is able to get the kernel image over tftp and to provide the kernel with commandline settings for NFS.
The dtb-file and kernel image have to be provided via tftp and the rootfs via nfs.

Configuration of U-Boot Environment

The bootloader environment needs to be modified to work with your tftp-server and your nfs-server.

  • setenv autoload no
  • setenv serverip <serverip> (e.g.: setenv serverip 192.168.100.1)
  • setenv ipaddr <ipaddr> (e.g.: setenv ipaddr 192.168.0.10)
  • setenv netmask <netmask> (e.g.: setenv netmask 255.255.255.0)
  • setenv rootpath <rootpath> (NFS share has to set in /etc/exports on the Computer that runs the NFS server first)
  • setenv fdt_file <fdt_file> (name of devicetree file to be downloaded from the tftp server)
  • setenv zimage <zimage> (name of the Linux kernel image to be downloaded from the tftp server)