Other Parts Discussed in Thread: HALCOGEN
I have this working on an RM46 XL2 LaunchPad, and had it working on a production board using the RM44L920, but I changed something (no idea what; though I moved to CCS v10 from v9) and the RM44 version is no longer writing value 0x5A5A5A5A to location 0xF020F000.
The BootLoader (BL) loads onto the production board via JTAG with no issues, and the CAN update appears to go through just fine. Since the 0xF020F000 memory location is not being modified at the end of the update, the chip goes back into the BL. I can modify the RUN address in the host updater code and run my application until a reset or power cycle occurs, but that's not terribly useful.
I added a line to send the result of Fapi_UpdateStatusProgram() via CAN, and it returns 0, indicating that there were no errors with the write.
The only memory location that has 0x5A5A5A5A in it after a CAN update on the RM44 board is 0xF0404F44, but I think that's just coincidence. 0xF020F000 still shows 0xFFFFFFFF.
All of the source/include files are shared between the RM44 and RM46 versions of the BootLoader except bl_link.cmd, where the differences are in the RAM/FLASH sizes. I've checked the HALCoGen projects against each other and made sure the RM44 version matched the RM46 version in the Flash section.
The zip file contains the linker command files, renamed to indicate which variant they go with, the bl_link.h header file, and a doc with images showing the correct flash write result for the RM46 and the only memory location containing 0x5A5A5A5A for the RM44.
Any thoughts on what I could be missing would be greatly appreciated. It's probably some dumb little thing I'm missing in HALCoGen or the project settings to prevent writing to that location.
Thanks!
- Tom