Error making upgrade image for --factory-version 11

Technical questions regarding the XTC tools and programming with XMOS.
User avatar
Caleb
Experienced Member
Posts: 82
Joined: Thu Apr 04, 2013 10:14 pm
Contact:

Error making upgrade image for --factory-version 11

Post by Caleb »

We have a product that was designed using XDE Version 11.11.1 and we have distributed numerous field upgrade images that were built with the same tools over the last 8 years.
In order to solve a long outstanding issue with the old codebase, I re-designed the software using current tools (XTC 14.3.3) and the most recent UAC2 reference codebase. This is a XS2-L2A device.

I'm attempting to build a DFU upgrade image that is compatible with the factory image on the customers' units.
xflash --upgrade 1 app.xe --factory-version 11 -o upgrade.bin
makes this error message:
Error: F03118 Tools 12 compatible routing id's and routing tables must be specified in upgrade XN

I also tried using the --factory option to specify a factory image that was built with XDW 11.11.1:
xflash --upgrade 1 app.xe --factory fi.xe -o upgrade.bin
makes this error message:
target-xn-v0-b83b8d07: Error: XN11192 Incomplete network configuration (no direction specified for link "4" on node "0")

These errors are cryptic to me. Can I get some guidance for a successful upgrade build?

I've successfully used the --factory-version switch in the past (for a different product) to build an upgrade with XTC13 tools that is compatible with XTC12-built factory image. That was for a L1 device.
It seems that there is a problem with the --factory-image switch, perhaps related to booting the multi-tile device?

thanks


User avatar
CousinItt
Respected Member
Posts: 360
Joined: Wed May 31, 2017 6:55 pm

Post by CousinItt »

Can't help much with the -upgrade option. Perhaps someone else can.

It looks like xflash is inspecting a prior XN file configuration embedded with the older image, and you'll have to provide a new XN file to get it to work. For a single-device system it should be possible to use the default XN file provided in the XTC targets folder - perhaps with some modification depending on your design.
User avatar
Caleb
Experienced Member
Posts: 82
Joined: Thu Apr 04, 2013 10:14 pm
Contact:

Post by Caleb »

You may have some knowledge that can help.
In the original project that was built with v11 tools and the latest MC audio reference code base at that time, I used that default .xn file that was used to target the same XS2-L2A device that is on the original MC audio development board from XMOS.
When I built the new project (latest tools and latest MC audio reference code base), I used the default .xn file that is still included for that same development kit.

I compared the two .xn files and they are nearly identical. Of course what used to be "stdcore" is now "tile".

The only differences:
For the second core: Node Id='1', all of the Link parameters are the same between the two .xn files. except that the new .xn file has an additional 2wire link that is flagged "XSCOPE"
I tried commenting-out the XSCOPE link but that didn't make a difference.

There's one other thing - the new .xn file has an additional parameter for the boot flash: Type= "AT25F041A"

So I couldn't find what is different between the .xn files that would be relevant.
I also just tried specifying the old project's .xn file with --target-file. I still get the same error: FS03118...

CousinItt wrote: Thu Jan 16, 2020 11:51 am Can't help much with the -upgrade option. Perhaps someone else can.

It looks like xflash is inspecting a prior XN file configuration embedded with the older image, and you'll have to provide a new XN file to get it to work. For a single-device system it should be possible to use the default XN file provided in the XTC targets folder - perhaps with some modification depending on your design.
User avatar
CousinItt
Respected Member
Posts: 360
Joined: Wed May 31, 2017 6:55 pm

Post by CousinItt »

Are you talking about the file xk-audio-216-mc.xn? If not, please upload it. I can't see how the error you've described could appear with that file, since it doesn't mention link 4 of node 0.

Have you tried specifying the new XN file with --target-file?

See here for more info on XN files https://www.xcore.com/viewtopic.php?t=4837, reference documents particularly.
User avatar
Caleb
Experienced Member
Posts: 82
Joined: Thu Apr 04, 2013 10:14 pm
Contact:

Post by Caleb »

CousinItt wrote: Fri Jan 17, 2020 1:31 pm Are you talking about the file xk-audio-216-mc.xn? If not, please upload it. I can't see how the error you've described could appear with that file, since it doesn't mention link 4 of node 0.
No, this is for a 2-tile L1 device: XS1-L2A-QF124
The .xn file for the old MC eval kit is xr-usb-audio-2.0-mc.xn (attached)
My .xn file is exactly the same except that I have fewer ports and some different port names.

CousinItt wrote: Fri Jan 17, 2020 1:31 pm Have you tried specifying the new XN file with --target-file?
That causes xflash to respond:
Warning: F03130 --target/--target-file options ignored when an XE file is given
Error: F03118 Tools 12 compatible routing id's and routing tables must be specif
ied in upgrade XN
CousinItt wrote: Fri Jan 17, 2020 1:31 pm See here for more info on XN files https://www.xcore.com/viewtopic.php?t=4837, reference documents particularly.
Thanks. I took a quick look at this and I'll look at this closer. I'm not working with multiple XMOS IC devices, just a single IC with 2 L1 tiles.

thanks again for you ideas.
Attachments
xr-usb-audio-2.0-mc.xn
(3.18 KiB) Downloaded 147 times
xr-usb-audio-2.0-mc.xn
(3.18 KiB) Downloaded 147 times
User avatar
Caleb
Experienced Member
Posts: 82
Joined: Thu Apr 04, 2013 10:14 pm
Contact:

Post by Caleb »

I found this document:
https://www.xmos.com/download/XFLASH-ve ... (1.0).pdf/
This provides instructions for running xntools.exe to modify your .xn file (that is composed for tools 13.2 and higher) to use pre 13.2 rounting info so that it is possible to build an upgrade image that from 13.2 and higher tools that will boot from tools 12 and under.
I tried to follow these instructions. The resulting upgrade image still does not load. After this upgrade image is applied, the device will not boot at all. It should at least revert to the factory image but it does not.
This seems to be only an issue of the tools formatting the upgrade image so that the version 11 bootloader knows how to boot it.

In desperation, I'm trying to figure any way to make an upgrade image the my v11 tools will boot - even if I have to hand-modify the header. I found this post that documents the header:
https://www.xcore.com/viewtopic.php?t=5041

Can anyone tell if it's just a matter of altering the header and fixing-up the CRC? This header info doesn't indicate anything about links.
User avatar
mon2
XCore Legend
Posts: 1913
Joined: Thu Jun 10, 2010 11:43 am
Contact:

Post by mon2 »

Hi Caleb. As I am not aware of the low level details on this subject and do not have Ken Jennings' (Jeopardy) email, thought to ask XMOS (UK) for help.

Their reply,
He should use :

xntools --add-routing-11 board.xn

xflash --upgrade 1 program.xe --factory-version 11 -o image.bin
Hope this helps.
User avatar
Caleb
Experienced Member
Posts: 82
Joined: Thu Apr 04, 2013 10:14 pm
Contact:

Post by Caleb »

Hi Mon2,
I'm grateful for you reply and effort on this. The instructions that you got from XMOS (UK) are exactly what is found in the document that I posted in my previous message. I could have detailed the steps.
Unfortunately, this generates an upgrade image does not load correctly and also causes the v.11 bootloader to fail to revert to the factory image. I deduce that this procedure generates an upgrade image that passes the bootloader's test for a valid upgrade image. And so the bootloader proceeds to load it but it does not load correctly.

Is it possible that you can put me in direct contact with whoever knows this system? Maybe your contact could look at my upgrade image and see what is wrong?
thanks
mon2 wrote: Wed Jan 29, 2020 1:09 pm Hi Caleb. As I am not aware of the low level details on this subject and do not have Ken Jennings' (Jeopardy) email, thought to ask XMOS (UK) for help.

Their reply,
He should use :

xntools --add-routing-11 board.xn

xflash --upgrade 1 program.xe --factory-version 11 -o image.bin
Hope this helps.
User avatar
mon2
XCore Legend
Posts: 1913
Joined: Thu Jun 10, 2010 11:43 am
Contact:

Post by mon2 »

Hi Caleb.

HQ asked that it will be best if you can work through Steven Guan (XMOS USA FAE).

Let me forward you his email via private message so he does not get spammed.
User avatar
mon2
XCore Legend
Posts: 1913
Joined: Thu Jun 10, 2010 11:43 am
Contact:

Post by mon2 »

Hi Caleb. Can you try the following and post your results?

Code: Select all

xflash --factory-version 12 --upgrade 1 app.xe -o upgrade.bin
DFU_upgrade.png
(123.49 KiB) Not downloaded yet
DFU_upgrade.png
(123.49 KiB) Not downloaded yet
Post Reply