Program DCF Record into 5748G

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Program DCF Record into 5748G

Jump to solution
3,946 Views
bix010
Contributor III

Hi,

I'm trying to program a DCF record into the UTEST of my MPC5748G. I'm following the instructions found here:

HOWTO: Program DCF record into UTEST flash in S32 Design Studio for Power .  I am using this flash programming algorithm: NXP_MPC5748G_1x32x4k_UTest.pcp

However, when I click debug to program the flash, I get an error and the DCF record is not programmed into UTEST.  Has anyone encountered this?

I've copied my console output here, if it helps:

Connection from "127.0.0.1" via 127.0.0.1
Copyright 2012 P&E Microcomputer Systems,Inc.
Command Line :C:\NXP\S32DS_Power_v1.2\eclipse\plugins\com.pemicro.debug.gdbjtag.ppc_1.6.9.201706282002\win32\pegdbserver_power_console -device=MPC5748G -startserver -singlesession -serverport=7224 -gdbmiport=6224 -interface=USBMULTILINK -speed=5000 -reseÐ

CMD>RE

Initializing.
MPC574xC Device detected.
Target has been RESET and is active.
CMD>CM C:\Users\User\Documents\Work\NXP\FlashAlgorithms_Internal_NXP_QORIVVAP\NXP_MPC5748G_1x32x4k_UTest.pcp

Initializing.
MPC574xC Device detected.
Initialized.

;version 1.06, 07/19/2017, Copyright P&E Microcomputer Systems, www.pemicro.com [57xx_utest_16k]

;device NXP, MPC5748G, 1x32x4k, desc=UTest

;begin_cs device=$00400000, length=$00004000, ram=$40000000

Loading programming algorithm ...
Done.
CMD>VC
Verifying object file CRC-16 to device ranges ...
block 00400380-00400387 ...
Calculated CRC-16 does not match block. (File = $11D4, Device = $6820)

CMD>EM
Command is inactive for this .PCP file.
Error Erasing flash of device
Error occured during Flash programming.

Starting reset script (C:\NXP\S32DS_Power_v1.2\eclipse\plugins\com.pemicro.debug.gdbjtag.ppc_1.6.9.201706282002\win32\gdi\P&E\s32e200_mpc574xg.mac) ...
REM This script is compatible with MPC574xG devices.
REM Clean GPRs to remove residual data after using algorithm
REM Initialize all of the Main SRAM - 768KB
Initializing RAM from $40000000 to $400BFFFF.
REM Core 0 I-MEM 16K
Initializing RAM from $50000000 to $50003FFF.
REM Core 0 D-MEM 64K
Initializing RAM from $50800000 to $5080FFFF.
REM Core 1 I-MEM 16K
Initializing RAM from $51000000 to $51003FFF.
REM Core 1 D-MEM 64K
Initializing RAM from $51800000 to $5180FFFF.
REM Core 2 I-MEM 16K
Initializing RAM from $52000000 to $52003FFF.
REM Core 2 D-MEM 32K
Initializing RAM from $52800000 to $52807FFF.
REM overlay memory 16K
Initializing RAM from $0D000000 to $0D003FFF.
REM Overlay SRAM Emulation device only
Initializing RAM from $0C000000 to $0C0FFFFF.

Reset script (C:\NXP\S32DS_Power_v1.2\eclipse\plugins\com.pemicro.debug.gdbjtag.ppc_1.6.9.201706282002\win32\gdi\P&E\s32e200_mpc574xg.mac) completed.

MPC574xG Device detected.
PE-ERROR: Error downloading to the device.
Disconnected from "127.0.0.1" via 127.0.0.1
Target Disconnected.
Target Disconnected.

1 Solution
3,168 Views
bix010
Contributor III

Hi,

Thanks for your reply. I've checked with PE Micro and it seems like they removed the EM command from the UTEST PCP. This was to prevent confusion, since the EM command doesn't actually do anything on the UTEST area which is OTP.

However, removing this command broke compaitibilty with the S32 IDE plugin.

PE Micro is currently looking for a workaround. I don't currently have access to a lauterbach debugger, so I'll just wait for their updates.

For consideration, for UTEST programming, may want to allow for another build configuration that does not require the EM command to be run.

View solution in original post

5 Replies
2,535 Views
bingwang312
Contributor III

has this problem solved yet? I am also trying to use PEMicro OpenSDA to write Utest DCF with password onto my DEVKIT MPC5744P board, because now I do not have any other debugger except the embedded OpenSDA debugger on board.

0 Kudos
Reply
3,168 Views
jiri_kral
NXP Employee
NXP Employee

Hi, 

well - the only workaround which is working for me is use Lauterbach power debug interface. If it is suitable solution for you - here are steps how to program DCF via Lauterbach:

  • prepare srec by the same way as for PE Micro ( HOWTO: Program DCF record into UTEST flash in S32 Design Studio for Power )
  • Start T32 for PPC
  • init flash for programming by 
    DO ~~/demo/powerpc/flash/mpc5xxx.cmm PREPAREONLY
    lauterbach command
  • enable program OTP area:
    FLASH.Program 0x00400000--0x00403FFF /OTP
  • Load your DCF srecord - choose srec file from file dialog:
    data.load.auto * 
  • Write srec to DCF:
    flash.program off

Jiri

0 Kudos
Reply
3,169 Views
bix010
Contributor III

Hi,

Thanks for your reply. I've checked with PE Micro and it seems like they removed the EM command from the UTEST PCP. This was to prevent confusion, since the EM command doesn't actually do anything on the UTEST area which is OTP.

However, removing this command broke compaitibilty with the S32 IDE plugin.

PE Micro is currently looking for a workaround. I don't currently have access to a lauterbach debugger, so I'll just wait for their updates.

For consideration, for UTEST programming, may want to allow for another build configuration that does not require the EM command to be run.

3,168 Views
bix010
Contributor III

I've looked at the console output a bit more. It seems like the programming sequence when writing to flash is always as follows:

"Programming sequency is : erase, blank check, program, and verify {default} "

But the UTest .pcp file does not have a function for erase (which makes sense since the UTest is OTP).

And hence the error seems to be coming from here:

CMD>EM
Command is inactive for this .PCP file. 
Error Erasing flash of device 
Error occured during Flash programming.

How do I change the programming sequence so the "erase" step is skipped?

Thanks!

0 Kudos
Reply
3,168 Views
jiri_kral
NXP Employee
NXP Employee

Hi, 

Thanks for report. For some reason is PE micro plugin calling erase - which is not usable in DCF area. I'll rise JIRA ticket for this bug. 

I'm going to find if there is workaround for that. I'll let you know. 

Jiri

0 Kudos
Reply