Message ID | 20200109191020.1282319-2-joerg.krause@embedded.rocks |
---|---|
State | Superseded |
Headers | show |
Series | [v2,1/2] package/imx-uuu: new host package | expand |
Hi Jorge, On Thu, Jan 09, 2020 at 08:10:20PM +0100, Jörg Krause wrote: > As suggested in [1] the package mfgtools is dropped. > > NXP did replaced the old mfgtools with the version number 0.2 > enterily with the uuu (Universal Update Utility) which is somehow > named mfgtools 3.0 although the version scheme for the uuu tool is > 1.xx.yyy. > > As the old mfgtools scripts are not compatible with the new uuu > tool and as imx-uuu goes hand-in-hand with imx-uuc, which we ship > for the target, the mfgtools package is dropped. I know I'm the one who pushed for that commit to happen but now want to mitigate the claim above. True uuu depends on imx-uuc and mfgtools (1st of its name) too. BUT by looking at imx-uuc, the two use cases are separated into 2 different files: - uu.c: daemon that uses utp protocol to communicate with host - ufb.c: daemon that uses fastboot protocol to communicate with host So I think it should be safe to have both host clients co-existing for now. Maybe uu.c will be removed at some point in the future but I guess NXP will leave it there for a while. Regards, Gary
Hi Gary, On Mon, 2020-02-10 at 17:26 +0100, Gary Bisson wrote: > Hi Jorge, > > On Thu, Jan 09, 2020 at 08:10:20PM +0100, Jörg Krause wrote: > > As suggested in [1] the package mfgtools is dropped. > > > > NXP did replaced the old mfgtools with the version number 0.2 > > enterily with the uuu (Universal Update Utility) which is somehow > > named mfgtools 3.0 although the version scheme for the uuu tool is > > 1.xx.yyy. > > > > As the old mfgtools scripts are not compatible with the new uuu > > tool and as imx-uuu goes hand-in-hand with imx-uuc, which we ship > > for the target, the mfgtools package is dropped. > > I know I'm the one who pushed for that commit to happen but now want to > mitigate the claim above. Thanks for your feedback and sorry for my late reply. > True uuu depends on imx-uuc and mfgtools (1st of its name) too. BUT by > looking at imx-uuc, the two use cases are separated into 2 different > files: > - uu.c: daemon that uses utp protocol to communicate with host > - ufb.c: daemon that uses fastboot protocol to communicate with host In fact, I am using mfgtools without imx-uuc, but with U-Boot. > So I think it should be safe to have both host clients co-existing for > now. Maybe uu.c will be removed at some point in the future but I guess > NXP will leave it there for a while. So, lets just update mfgtools to latest version (1.3.154), right? Best regards Jörg Krause
Hi Jorg, On Mon, Apr 13, 2020 at 10:24:06PM +0200, Jörg Krause wrote: > Hi Gary, > > On Mon, 2020-02-10 at 17:26 +0100, Gary Bisson wrote: > > Hi Jorge, > > > > On Thu, Jan 09, 2020 at 08:10:20PM +0100, Jörg Krause wrote: > > > As suggested in [1] the package mfgtools is dropped. > > > > > > NXP did replaced the old mfgtools with the version number 0.2 > > > enterily with the uuu (Universal Update Utility) which is somehow > > > named mfgtools 3.0 although the version scheme for the uuu tool is > > > 1.xx.yyy. > > > > > > As the old mfgtools scripts are not compatible with the new uuu > > > tool and as imx-uuu goes hand-in-hand with imx-uuc, which we ship > > > for the target, the mfgtools package is dropped. > > > > I know I'm the one who pushed for that commit to happen but now want to > > mitigate the claim above. > > Thanks for your feedback and sorry for my late reply. > > > True uuu depends on imx-uuc and mfgtools (1st of its name) too. BUT by > > looking at imx-uuc, the two use cases are separated into 2 different > > files: > > - uu.c: daemon that uses utp protocol to communicate with host > > - ufb.c: daemon that uses fastboot protocol to communicate with host > > In fact, I am using mfgtools without imx-uuc, but with U-Boot. > > > So I think it should be safe to have both host clients co-existing for > > now. Maybe uu.c will be removed at some point in the future but I guess > > NXP will leave it there for a while. > > So, lets just update mfgtools to latest version (1.3.154), right? No, mfgtools 1.x.y really is 'uuu', not mfgtools any more. So since 'mfgtools' doesn't have any more build issues, I'd say we keep it as-is for people that use it. So the idea is _not_ to drop it. Then just have your uuu addition patch, so basically both tools co-exist in Buildroot (as they serve different purposes). Regards, Gary
Hi Gary, On Tue, 2020-04-14 at 08:46 +0200, Gary Bisson wrote: > Hi Jorg, > > On Mon, Apr 13, 2020 at 10:24:06PM +0200, Jörg Krause wrote: > > Hi Gary, > > > > On Mon, 2020-02-10 at 17:26 +0100, Gary Bisson wrote: > > > Hi Jorge, > > > > > > On Thu, Jan 09, 2020 at 08:10:20PM +0100, Jörg Krause wrote: > > > > As suggested in [1] the package mfgtools is dropped. > > > > > > > > NXP did replaced the old mfgtools with the version number 0.2 > > > > enterily with the uuu (Universal Update Utility) which is somehow > > > > named mfgtools 3.0 although the version scheme for the uuu tool is > > > > 1.xx.yyy. > > > > > > > > As the old mfgtools scripts are not compatible with the new uuu > > > > tool and as imx-uuu goes hand-in-hand with imx-uuc, which we ship > > > > for the target, the mfgtools package is dropped. > > > > > > I know I'm the one who pushed for that commit to happen but now want to > > > mitigate the claim above. > > > > Thanks for your feedback and sorry for my late reply. > > > > > True uuu depends on imx-uuc and mfgtools (1st of its name) too. BUT by > > > looking at imx-uuc, the two use cases are separated into 2 different > > > files: > > > - uu.c: daemon that uses utp protocol to communicate with host > > > - ufb.c: daemon that uses fastboot protocol to communicate with host > > > > In fact, I am using mfgtools without imx-uuc, but with U-Boot. > > > > > So I think it should be safe to have both host clients co-existing for > > > now. Maybe uu.c will be removed at some point in the future but I guess > > > NXP will leave it there for a while. > > > > So, lets just update mfgtools to latest version (1.3.154), right? > > No, mfgtools 1.x.y really is 'uuu', not mfgtools any more. It is very confusing, how NXP deals with this. From my understanding, mfgtools is the top level name for the image deploying tools. In mfgtools 2 there was a seperate Windows and Linux build of the 'MfgToolLib', the linux command line utility was 'mfgtoolcli'. The linux branch ended with v0.02, the windows branch with 0.06 -> 2.8.0. Both branches are abandoned and replaced by libuuu and the command line utility uuu. This new library and tool are introduced of an evolving mfgtools 3.0. So, indeed there are two different tools, the old and abandoned mfgtools 2 and the new mfgtools 3 (a.k.a uuu). Note, that for the mfgtools 2 the tag v0.02 was only labeld as "Pre- release" on Github. > So since 'mfgtools' doesn't have any more build issues, I'd say we keep > it as-is for people that use it. So the idea is _not_ to drop it. > > Then just have your uuu addition patch, so basically both tools > co-exist in Buildroot (as they serve different purposes). If we really want to keep the mfgtools 2 package, we have to decide how to name the new package: a) imx-uuu b) mfgtools3 c) mfgtools_uuu d) something else I'm voting for b) mfgtools3, as the github project name is still 'mfgtools' and the project is described as "uuu (Universal Update Utility), mfgtools 3.0". Best regards Jörg Krause
Hi Jorg, On Tue, Apr 14, 2020 at 09:47:48AM +0200, Jörg Krause wrote: > Hi Gary, > > On Tue, 2020-04-14 at 08:46 +0200, Gary Bisson wrote: > > Hi Jorg, > > > > On Mon, Apr 13, 2020 at 10:24:06PM +0200, Jörg Krause wrote: > > > Hi Gary, > > > > > > On Mon, 2020-02-10 at 17:26 +0100, Gary Bisson wrote: > > > > Hi Jorge, > > > > > > > > On Thu, Jan 09, 2020 at 08:10:20PM +0100, Jörg Krause wrote: > > > > > As suggested in [1] the package mfgtools is dropped. > > > > > > > > > > NXP did replaced the old mfgtools with the version number 0.2 > > > > > enterily with the uuu (Universal Update Utility) which is somehow > > > > > named mfgtools 3.0 although the version scheme for the uuu tool is > > > > > 1.xx.yyy. > > > > > > > > > > As the old mfgtools scripts are not compatible with the new uuu > > > > > tool and as imx-uuu goes hand-in-hand with imx-uuc, which we ship > > > > > for the target, the mfgtools package is dropped. > > > > > > > > I know I'm the one who pushed for that commit to happen but now want to > > > > mitigate the claim above. > > > > > > Thanks for your feedback and sorry for my late reply. > > > > > > > True uuu depends on imx-uuc and mfgtools (1st of its name) too. BUT by > > > > looking at imx-uuc, the two use cases are separated into 2 different > > > > files: > > > > - uu.c: daemon that uses utp protocol to communicate with host > > > > - ufb.c: daemon that uses fastboot protocol to communicate with host > > > > > > In fact, I am using mfgtools without imx-uuc, but with U-Boot. > > > > > > > So I think it should be safe to have both host clients co-existing for > > > > now. Maybe uu.c will be removed at some point in the future but I guess > > > > NXP will leave it there for a while. > > > > > > So, lets just update mfgtools to latest version (1.3.154), right? > > > > No, mfgtools 1.x.y really is 'uuu', not mfgtools any more. > > It is very confusing, how NXP deals with this. From my understanding, > mfgtools is the top level name for the image deploying tools. It is confusing yes. And NXP doesn't really deal with it, they just said "here's a new tool, let's forget about the old one". > In mfgtools 2 there was a seperate Windows and Linux build of the > 'MfgToolLib', the linux command line utility was 'mfgtoolcli'. The > linux branch ended with v0.02, the windows branch with 0.06 -> 2.8.0. Yes the versioning is also confusing. Buildroot automated email keeps reminding me that mfgtools isn't at its latest release whereas it is, new 'versions' are just for a different tool really. > Both branches are abandoned and replaced by libuuu and the command line utility uuu. > This new library and tool are introduced of an evolving mfgtools 3.0. > > So, indeed there are two different tools, the old and abandoned > mfgtools 2 and the new mfgtools 3 (a.k.a uuu). > > Note, that for the mfgtools 2 the tag v0.02 was only labeld as "Pre- > release" on Github. Yes, but Yann's thoughts were that since it was in Buildroot for a long time, people might have scripts relying on mfgtools, and therefore might be useful to keep it around [1]. Then at the time I made the point about imx-uuc which wasn't valid. Now that the build is fixed, I agree that we should keep mfgtools as-is. > > So since 'mfgtools' doesn't have any more build issues, I'd say we keep > > it as-is for people that use it. So the idea is _not_ to drop it. > > > > Then just have your uuu addition patch, so basically both tools > > co-exist in Buildroot (as they serve different purposes). > > If we really want to keep the mfgtools 2 package, we have to decide how > to name the new package: > > a) imx-uuu > b) mfgtools3 > c) mfgtools_uuu > d) something else > > I'm voting for b) mfgtools3, as the github project name is still > 'mfgtools' and the project is described as "uuu (Universal Update > Utility), mfgtools 3.0". I'd personnaly prefer a name with uuu in it as mfgtools is only mentioned for legacy reasons from NXP. But then in every doc they only say uuu [2]. So from a user perspective, I'd look for 'uuu' in menuconfig. I wish NXP would have switched to another repository... Regards, Gary [1] http://lists.busybox.net/pipermail/buildroot/2019-June/252440.html [2] https://github.com/NXPmicro/mfgtools/releases/download/uuu_1.3.154/UUU.pdf
diff --git a/Config.in.legacy b/Config.in.legacy index 1801ec06da..e355b0c2c8 100644 --- a/Config.in.legacy +++ b/Config.in.legacy @@ -146,6 +146,13 @@ endif comment "Legacy options removed in 2020.02" +config BR2_PACKAGE_HOST_MFGTOOLS + bool "host mfgtools was removed" + select BR2_LEGACY + help + mfgtools is not maintained anymore. Switch to imx-uuc + instead. + config BR2_PACKAGE_WIREGUARD bool "wireguard package renamed" depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 diff --git a/DEVELOPERS b/DEVELOPERS index e0125bad72..3df819cce4 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -967,7 +967,6 @@ F: configs/nitrogen* F: package/freescale-imx/ F: package/gstreamer1/gst1-imx/ F: package/libimxvpuapi/ -F: package/mfgtools/ F: package/sshpass/ F: package/x11r7/xdriver_xf86-video-imx-viv/ diff --git a/package/Config.in.host b/package/Config.in.host index de0cdbae49..687cd59002 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -41,7 +41,6 @@ menu "Host utilities" source "package/lpc3250loader/Config.in.host" source "package/lttng-babeltrace/Config.in.host" source "package/mender-artifact/Config.in.host" - source "package/mfgtools/Config.in.host" source "package/mkpasswd/Config.in.host" source "package/mtd/Config.in.host" source "package/mtools/Config.in.host" diff --git a/package/mfgtools/Config.in.host b/package/mfgtools/Config.in.host deleted file mode 100644 index 6f2f3a3268..0000000000 --- a/package/mfgtools/Config.in.host +++ /dev/null @@ -1,10 +0,0 @@ -config BR2_PACKAGE_HOST_MFGTOOLS - bool "host mfgtools" - depends on BR2_arm - help - This package contains the Freescale manufacturing tool. - It is designed to program firmware to i.MX boards during - production. The communication is done over USB using the - Freescale UTP protocol. - - https://github.com/codeauroraforum/mfgtools diff --git a/package/mfgtools/mfgtools.hash b/package/mfgtools/mfgtools.hash deleted file mode 100644 index 0b215f5295..0000000000 --- a/package/mfgtools/mfgtools.hash +++ /dev/null @@ -1,4 +0,0 @@ -# locally computed -sha256 055d71227d18883d6e8bc9e854c076015f9a7749820a94272e19071bf0b25c89 mfgtools-0.02.tar.gz -sha256 2655559a6bb1179eae514f5c7166f4ede4f2453efa9cf4dc3c045cab5d57dede LICENSE -sha256 0963b6e5086bf454265b0f57821a02b681d1211e40ad74c310231cb4d94815c9 README.txt diff --git a/package/mfgtools/mfgtools.mk b/package/mfgtools/mfgtools.mk deleted file mode 100644 index 48ce5dda28..0000000000 --- a/package/mfgtools/mfgtools.mk +++ /dev/null @@ -1,34 +0,0 @@ -################################################################################ -# -# mfgtools -# -################################################################################ - -MFGTOOLS_VERSION = 0.02 -MFGTOOLS_SITE = $(call github,codeauroraforum,mfgtools,v$(MFGTOOLS_VERSION)) -MFGTOOLS_SUBDIR = MfgToolLib -MFGTOOLS_LICENSE = BSD-3-Clause or CPOL -MFGTOOLS_LICENSE_FILES = LICENSE README.txt -HOST_MFGTOOLS_DEPENDENCIES = host-libusb - -HOST_MFGTOOLS_CFLAGS = \ - $(HOST_CFLAGS) $(HOST_LDFLAGS) -std=c++11 -lpthread \ - -L$(@D)/MfgToolLib -lMfgToolLib -I$(@D)/MfgToolLib \ - -lusb-1.0 -I$(HOST_DIR)/include/libusb-1.0 \ - -fpermissive -Wno-write-strings - -define HOST_MFGTOOLS_CLI_BUILD - $(HOST_CONFIGURE_OPTS) $(MAKE) CC="$(HOSTCXX)" \ - CFLAGS="$(HOST_MFGTOOLS_CFLAGS)" -C $(@D)/TestPrgm -endef - -HOST_MFGTOOLS_POST_BUILD_HOOKS += HOST_MFGTOOLS_CLI_BUILD - -define HOST_MFGTOOLS_INSTALL_CMDS - $(INSTALL) -D -m 755 $(@D)/MfgToolLib/libMfgToolLib.so \ - $(HOST_DIR)/lib/libMfgToolLib.so - $(INSTALL) -D -m 755 $(@D)/TestPrgm/mfgtoolcli \ - $(HOST_DIR)/bin/mfgtoolcli -endef - -$(eval $(host-cmake-package)) diff --git a/package/mfgtools/readme.txt b/package/mfgtools/readme.txt deleted file mode 100644 index 320e6ec493..0000000000 --- a/package/mfgtools/readme.txt +++ /dev/null @@ -1,69 +0,0 @@ -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/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
As suggested in [1] the package mfgtools is dropped. NXP did replaced the old mfgtools with the version number 0.2 enterily with the uuu (Universal Update Utility) which is somehow named mfgtools 3.0 although the version scheme for the uuu tool is 1.xx.yyy. As the old mfgtools scripts are not compatible with the new uuu tool and as imx-uuu goes hand-in-hand with imx-uuc, which we ship for the target, the mfgtools package is dropped. Users should switch to use imx-uuu instead. [1] http://patchwork.ozlabs.org/patch/1112411/ Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks> --- v2: * add missing link to patchwork --- Config.in.legacy | 7 ++++ DEVELOPERS | 1 - package/Config.in.host | 1 - package/mfgtools/Config.in.host | 10 ----- package/mfgtools/mfgtools.hash | 4 -- package/mfgtools/mfgtools.mk | 34 ---------------- package/mfgtools/readme.txt | 69 --------------------------------- 7 files changed, 7 insertions(+), 119 deletions(-) delete mode 100644 package/mfgtools/Config.in.host delete mode 100644 package/mfgtools/mfgtools.hash delete mode 100644 package/mfgtools/mfgtools.mk delete mode 100644 package/mfgtools/readme.txt