Webserver not working on F100x1024 AC?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
User10076
Level 2
Level 2
Hello,

I'm trying to port the original Webserver DAVE project to a new chip which is used on the relax kit development board, but with not much succes.
I'm using Device Migration tool inside DAVE 3 to 'migrate' from F144x1024 AB chip used in the default project to F100x1024 AC which is used on the relax kit.
The migration is successful, but I end up in a 'Build Failed' project.
Some info from the migration report document:

Migration Log & Status : Migration completed

Device Migration... Started
Device Migration... Started
Migrating from 'XMC4500-F144x1024-AB' to 'XMC4500-F100x1024-AC '
Copying startup files...done
Copying linker file...done
Updating project settings...done
Device Migration... Completed
Getting solution from solver.. Successful
Code generation.. Successful

Build.. failed 😞

Pre Migration Report
Migrating from 'XMC4500-F144x1024-AB' to 'XMC4500-F100x1024-AC '
Checking compatibility for the selected target: XMC4500-F100x1024-AC
Checking Apps for device support... done
Checking for Mapped peripherals... done
Checking for Mapped port/pins... done
Getting solution from solver for device... done

Post Migration Report
Code Generation
Resource URI Type Message
Webserver_XMC4500_RelaxKit Info Errors:0 Warnings:0

Now for the fun part:

Build Resource URI Type Message
Webserver_XMC4500_RelaxKit Error Webserver_XMC4500_RelaxKit:make: *** [Webserver_XMC4500_RelaxKit.elf] Error 1:
startup_XMC4500.s Error startup_XMC4500.s:undefined reference to `__ram_code_load'
startup_XMC4500.s Error startup_XMC4500.s:undefined reference to `__ram_code_start'
startup_XMC4500.s Error startup_XMC4500.s:undefined reference to `__ram_code_size'
Webserver_XMC4500_RelaxKit Info Errors:4 Warnings:0

The problem is with the following lines:
/* RAM_CODE COPY */
/* R0 = Start address, R1 = Destination address, R2 = Size */
LDR R0, =__ram_code_load
LDR R1, =__ram_code_start
LDR R2, =__ram_code_size
BL __COPY_FLASH2RAM
I'm not sure if these lines are the 'true' problem because they seem to be auto generated, so I'm not really sure what's going on with the compiler/linker etc.

If i comment these 3 lines the project build with no errors and it seems to work, but I'm not sure if this is a good long term solution.

Any help/opinions are deeply appreciated! 🙂

Thank you,
Petru S
0 Likes
1 Reply
User10076
Level 2
Level 2
Hello,

I think I've managed to get this problem sorted. As it turns out those error messages are the consequence of the problem and not the problem itself.
I think the problem lies in the linker script (*.ld file) which comes with the default Web server Relax Kit project.
My workaround is to delete "TestEasy.ld" from the default project before migration and replace it with a script file from a new project created for the XMC4500 F100x1024 AC, rename the new script file in "TestEasy.ld" and add it to the default Webserver Project.
Migrate the project to XMC4500 F100x1024 AC and this time the migration is successful.
If you have any other solution please post it here so everyone could find it faster.

Any help/opinions are deeply appreciated!

Thank you,
Petru S
0 Likes