Hi I have developed serial bootloader as per mpc5748g serial bootloader for MPC5777m using S32 ds for power pc v1.1,
When I run the code it is detecting break points inside c-array drivers, like FlashErase_c , FlashCheckStatus_c and other files which are moved to RAM location.
And When I send a application file , the tera term is sending the file at a time (Flowcontrol is not happening) Xon/Xoff I have enabled in TeraTerm serial port settings.My UART driver is able to receive only first Srecord only.
But with some work around (I increased the delay to 3sec in the tera term serial port settings after sending every line).
But I need to resume the debug session after each and every line it sends, And it is very difficult to flash large file.
I am using C55 array drivers from the MPC5777M nxp tools and software site.
Can any one help me how to solve this issue.
Hi,
are you sure that you don't access flash partition which is being programmed/erased? What about interrupts? I guess interrupt are enabled during flash operation, right? Where is the interrupt vector table? Where are interrupt handlers? Are they in RAM or in partition which is not programmed/erased?
Is "debug mode selection" in SSD_Config set as FALSE?
Regards,
Lukas
Hi lukaszadrapa thanks for your reply, I am not accessing the any partition which is being programmed/erased.
1. Regarding the interrupt vector table in file intc_SW_mode_isr_vectors_MPC5777M.c I have added the followed code just above the IntcIsrVectorTable[] array. I am following this way to move to RAM partition.
#pragma ghs section rodata=".intc_vector_table"
2. And also in vector.c I moved IVORn to RAM partition
#pragma ghs section rodata=".axv"
3. debug mode selection in SSD_Config is set to FALSE.
I am disabling the interrupts once I read/write the character using (Putchar/GetChar Functions inside serial communications.c)
PPCASM("wrteei 0"); /* disable interrupts */
and after processing the interrupts again I am enabling for reading/writing next character.
PPCASM("wrteei 1"); /* enable interrupts */
With this settings My code is stuck at Erase operation and giving IVOR1 Vector error when I suspend the debug session.
Below is the console output
**********************************************
MPC5777M Bootloader v1.0
**********************************************
1.) Erase Flash
2.) Program Flash
3.) Execute Application
Please choose 1 to 3: 1
Please wait...