Hi @RAMK
There are these SSD flash drivers used in the application note:
https://www.nxp.com/webapp/Download?colCode=C55_NVM_SSD
The drivers support all MPC57xx including MPC5777C.
The only difference is that the flash blocks are different in comparison with MPC5748G. You can check files in this folder:
c:\Program Files (x86)\Freescale\Standard Software Driver v1.1.0\MPC57xx\Demos\Demo_code\MPC5777C\
Next point is that MPC5777C is the only one from MPC57xx family where you can select between BOOKE and VLE instructions. All other MPC57xx are VLE only devices. The driver contains both versions, one for BOOKE, second for VLE, so make sure you are using the right one.
Now regarding the errors - functions FlashErase and FlashProgram are forced to RAM memory to avoid Read-While-Write issues. You can see in the files:
//const unsigned long FlashErase_C[] =
//place to RAM memory:
unsigned long FlashErase_C[] =
Default drivers use "const". I simply removed the const, so the function is automatically copied to RAM by startup files. Easiest way...
Now it looks like the distance from flash to RAM is out of relative jump range. I can remember that CodeWarrior had an option like "Tune relocations" to solve this problem. I can see that you use GHS and I'm, not really sure how to configure this. Maybe you can ask GHS directly.
Regards,
Lukas