|
|
@@ -0,0 +1,69 @@
|
|
|
+MfgTools Howto
|
|
|
+==============
|
|
|
+
|
|
|
+1. Build your mfgtool image
|
|
|
+
|
|
|
+Make sure to enable the following Buildroot options:
|
|
|
+
|
|
|
+BR2_PACKAGE_FREESCALE_IMX=y
|
|
|
+BR2_PACKAGE_IMX_UUC=y
|
|
|
+BR2_TARGET_ROOTFS_CPIO=y
|
|
|
+BR2_TARGET_ROOTFS_CPIO_GZIP=y
|
|
|
+BR2_TARGET_ROOTFS_CPIO_UIMAGE=y
|
|
|
+
|
|
|
+Also modify your kernel configuration to have:
|
|
|
+
|
|
|
+CONFIG_USB_GADGET=y
|
|
|
+CONFIG_USB_MASS_STORAGE=y
|
|
|
+CONFIG_FSL_UTP=y
|
|
|
+CONFIG_MMC_BLOCK_MINORS=16
|
|
|
+
|
|
|
+2. Go into the output and create the necessary folders
|
|
|
+
|
|
|
+$ cd output
|
|
|
+$ mkdir -p "Profiles/Linux/OS Firmware/firmware"
|
|
|
+
|
|
|
+3. Create your XML update script named ucl2.xml
|
|
|
+
|
|
|
+You can find a sample XML at:
|
|
|
+
|
|
|
+$ wget https://storage.googleapis.com/boundarydevices.com/ucl2.xml \
|
|
|
+ -O Profiles/Linux/OS\ Firmware/ucl2.xml
|
|
|
+
|
|
|
+4. Copy the U-Boot, Kernel and initramfs images to the appropriate
|
|
|
+folder
|
|
|
+
|
|
|
+$ cp images/u-boot.imx images/zImage images/imx6q-sabrelite.dtb \
|
|
|
+ images/rootfs.cpio.uboot Profiles/Linux/OS\ Firmware/firmware/
|
|
|
+
|
|
|
+5. Copy the prebuilt binaries to be flashed
|
|
|
+
|
|
|
+Depending on your ucl2.xml file, the sample doesn't flash anything.
|
|
|
+
|
|
|
+6. Run the MfgTools client:
|
|
|
+
|
|
|
+$ ./host/usr/bin/mfgtoolcli -l mmc -s uboot_defconfig=imx \
|
|
|
+ -s dtbname=imx6q-sabrelite.dtb -s initramfs=rootfs.cpio.uboot \
|
|
|
+ -s mmc=1 -p 1
|
|
|
+
|
|
|
+For more information about the tools options, please read the
|
|
|
+"Manufacturing Tool V2 Quick Start Guide.docx" documentation contained
|
|
|
+in every mfgtools package from NXP website[1].
|
|
|
+
|
|
|
+Note: All the above commands require your Linux host user to have
|
|
|
+permissions to access the USB devices. Please make sure to have udev
|
|
|
+rules that allow the user to communicate with the BootROM IDs
|
|
|
+(Freescale USB recovery) as well as the one used for the UTP Linux
|
|
|
+image (0x066F:0x37FF). Using 'sudo' in front of the mfgtoolcli
|
|
|
+command would also grant you the necessary permission but it is *not*
|
|
|
+recommended.
|
|
|
+
|
|
|
+Also, if your U-Boot environment doesn't include mfgtools bootargs,
|
|
|
+make sure to set the following:
|
|
|
+
|
|
|
+setenv bootargs "console=${console},${baudrate} g_mass_storage.stall=0 \
|
|
|
+ g_mass_storage.removable=1 g_mass_storage.idVendor=0x066F \
|
|
|
+ g_mass_storage.idProduct=0x37FF g_mass_storage.iSerialNumber=\"\" \
|
|
|
+ g_mass_storage.file=/fat"
|
|
|
+
|
|
|
+[1] http://www.nxp.com/products/software-and-tools/software-development-tools/i.mx-software-and-tools/i.mx-6-series-software-and-development-tool-resources:IMX6_SW
|