Deployment
See @mb_name@ DIP switch settings for selecting the boot medium on the @mb_name@.
Finally, you will find the built images in platform-<platformname>/images.
To update bootloader / kernel in a running system you have to copy the images in your tftp directory and download them to the eMMC.
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=@mod_name_code@_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
Installation from bootable SD card
This procedure overwrites the MBR and all partitions on the eMMC with images from the SD card.
The U-Boot environment is preserved.
See @mb_name@ DIP switch settings for selecting the boot medium on the MBa28.
Default boot mode of TQMa28 is eMMC boot:
LCD_DATA[4..0] = {0,1,0,0,1}
- When U-Boot on eMMC is not available: set boot mode to SD card: LCD_DATA[4..0] = {0,1,0,1,0}
(On MBa28, set DIP Switches S4.4 and S5.1 to ON, the others to OFF.) - Plug in card, power on device and stop autoboot
- Type command: run install_firmware
- Set boot mode back to eMMC
Install script usage
Current U-Boot versions provide a script that copies the MBR and partition contents from the SD card to the eMMC. This script is called via “run install_firmware” command at the U-Boot prompt. Due to memory limitations the root partition must be copied in a loop, each run copies the maximum memory amount available. To tell the script the size of your rootfs partition you have to use the rootblks16 variable.
This variable holds the hexadecimal number of 512-byte blocks your rootfs partition has in size.
setenv rootblks16 0x40000
This sets a 128MB partition.
Updating existing firmware from bootable SD card
Please note: At this state there is no way to extract the image sizes from the SD card.
Without them calculation of required sectors to store the images is not possible.
Therefore using this update method will grab and overwrite whole uboot/dtb/kernel partitions respectively.
- Boot from eMMC
- Plug in card, power on device and stop autoboot
- To update U-Boot type:
run upd_uboot_sd - To update device tree type:
run upd_fdt_sd - To update Kernel type:
run upd_kernel_sd
Updating existing firmware over ethernet
Updating U-Boot via ethernet does not create a secondary copy as expected by the MX28 as a fall-back level.
- Boot from eMMC and stop autoboot
- Connect device via ethernet to a tftp server supplying the image
- Provide the correct network configuration:
setenv serverip 0.0.0.0
setenv netmask 255.255.255.0
setenv ipaddr 0.0.0.0 - Provide U-Boot the file name of the desired image on the server:
For U-Boot: setenv uboot filename
For device tree: setenv dtb filename
For Kernel: setenv kernel filename - Perform Update:
For U-Boot: run upd_uboot_net
For device tree: run upd_fdt_net
For Kernel: run upd_kernel_net
The u-boot update scripts automatically implement the selection of the primary copy to boot.
Using Freescale's MFG Tool
Starting with REV0106 the TQ-ARM-BSP offers the creation of profiles for Freescale Manufacturing Tool.
Currently these profiles can be created for platforms
.
This is enabled by default but can be switched using
$ ptxdist platformconfig
in the menu new image creation options –> [ ] Create profile for Freescale MFGTool
The profile is built during images stage and named TQ_ARM_BSP-Update-<platform>.zip in the images/ directory.
To use it simply extract the zip into the Profiles/ subdirectory in the MfgTool folder.
When starting MfgTool you will see the profile appear in the selection box:
In the Options - Configuration menu each profile has the option to flash
- the Boot EEPROM and the complete e-MMC (eMMC+EEPROM) - only for TQMa28 modules REV0200
- the Boot EEPROM only (EEPROM only) - only for TQMa28 modules REV0200
- the complete firmware (eMMC only) (default)
- the device tree only (DTB only)
- the kernel only (Kernel only)
- and for debugging purposes load the U-Boot into RAM (U-Boot→RAM)
- To download you need the target hardware to be connected via USB0 to the PC running MfgTool.
- The boot mode must be set to USB recovery mode.
- Power up.
- The MfgTool should show a HID-compliant device.
Otherwise the target is either not connected or not in USB recovery mode. - Hit 'Start' and wait until Finished.
Using different boot media
NFS
To boot the @mod_name@ from network you need a working bootloader in eMMC or SD-card which is able to get the kernel image over tftp and to provide the kernel with commandline settigns for NFS. You have to provide the images via tftp and nfs and to configure the bootloader (cf. U-Boot variables boot_nfs
, addnfs
, kernel
, dtb
, serverip
, rootpath
) to work with your tftp-server and your nfs-server.
TQ-Systems GmbH provides the Board Support Packages (BSP) free of charge. The software included in the shipment has been configured individually for the starter kits. The software is only intended to evaluate the module. The use of the Board Support Packages (BSP) is only allowed within the scope of functionality described by TQ-Systems GmbH. TQ-Systems GmbH does not accept any liability for all further changes of the Board Support Package and for any damage resulting from its use.