PN7462: unable to program flash

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

PN7462: unable to program flash

797 Views
piergiuseppe_tu
Contributor II

Hello.

I am no longer able to program the flash of some PN7462 parts.

I know about SECROW feature, which I didn't intentionally change using the phhalSysSer_OTP_SecrowConfig call.
I would like to know the address of the SECROW word in the reserved EEPROM just to verify it isn't protected.

Furthermore, in section 3.2.1 “PN7462 family ROM primary download EEPROM config” of the "family Software User Manual" (UM10913), table 4 shows some parameters in the range 0-3 that manage access to the EEPROM and to the flash; these parameters are of course stored in the reserved part of EEPROM: I would like to know the exact (undocumented) address of these parameters, to further verify my issue.

Just to add more elements, on affected parts I'm able to read/write EEPROM and attach to the target using SWD: the only problem is programming the flash, which can only be read.

Thank you in advance.

KR,

P.

0 Kudos
2 Replies

668 Views
Jonathan_Iglesias
NXP TechSupport
NXP TechSupport

Hi  Piergiuseppe Tundo,

to know the status of the SECROW you can use the phhalSysSer_OTP_SecrowConfig  if you send the first parameter as 0 is to set configuration and if you send 1 is to get the configuration 

please check the example :

phStatus_t status;
phhalSysSer_Secrow_Config_t SecRow;
phUser_MemSet(&SecRow , 0 , sizeof(SecRow));
status = phhalSysSer_OTP_SecrowConfig (PH_SYSRV_GET_DATA, &SecRow);

BR

Jonathan

0 Kudos

668 Views
piergiuseppe_tu
Contributor II

Hi Jonathan, thank you for your interest.

I know about get feature of phhalSysSer_OTP_SecrowConfig, but:

  • unfortunately to apply such solution I'd need to write a program into flash, which isn't possible anymore;
  • to overcome previous point, I changed the default linker configuration file in order to place and run that program from EEPROM, but the get variant of phhalSysSer_OTP_SecrowConfig doesn't return.

Finally I managed to place and run in EEPROM a program to read the reserved area of EEPROM itself, and it succeeded, so now I know the content of reserved area, but I need to know how to decode that content (or at least where SECROW is encoded).

BR

Peppe

0 Kudos