Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

Nor Flash

tczpkami
Level 1
10 sign-ins 5 sign-ins First reply posted
Level 1

What is the procedure of restoring the memory to the factory state when SPI Status Register 1 = 0x41
This can be done through the SafeBoot recovery option.
I want to set the default value of SR / CR

Attached is part of the report from Infineon.
I would like to use the JTAG interface to fix this problem.

//

#DEFINE ERASE WD=0x06 CE_HI WD=0xDC ADDR_CYCLE4=SA ADDR_CYCLE3=SA ADDR_CYCLE2=SA ADDR_CYCLE1=SA CE_HI WD=0x05 read_status=0bX00XXXX0 CE_HI
#PROGRAM WD=0x06 CE_HI WD=0x12 ADDR_CYCLE4=PA ADDR_CYCLE3=PA ADDR_CYCLE2=PA ADDR_CYCLE1=PA PAGE_SIZE*WD=pd CE_HI WD=0x05 read_status=0bX00XXXX0 CE_HI
#DEFINE PROGRAM WD=0x06 CE_HI WD=0x12 ADDR_CYCLE4=PA ADDR_CYCLE3=PA ADDR_CYCLE2=PA ADDR_CYCLE1=PA WD=pd CE_HI WD=0x05 read_status=0bX00XXXX0 CE_HI
#DEFINE UNLOCK WD=0x06 CE_HI WD=0x01 WD=0x00 CE_HI WD=0x05 read_status=0b00000000 CE_HI
#DEFINE LOCK WD=0x06 CE_HI WD=0x01 WD=0x1C CE_HI WD=0x05 read_status=0b00011100 CE_HI
#READ_PAGE WD=0x13 ADDR_CYCLE4=PA ADDR_CYCLE3=PA ADDR_CYCLE2=PA ADDR_CYCLE1=PA PAGE_SIZE*RD=pd CE_HI
#DEFINE READ_ID WD=0x9F RD=MAN_ID RD=DEV_ID CE_HI
#MAN_ID=0x34
#DEV_ID=0x2A
#PROGRAM_TIME 340 750

kamyk
0 Likes
1 Solution
BushraH_91
Moderator
Moderator First comment on blog 500 replies posted 250 replies posted
Moderator

Hello,

Here is the suggested flow to recover from register corruption failure:

  1. Pre-requisitions:
  • Interface Protocol = Single SPI (1S-1S-1S)
  • Address Bytes = 4 Byte Address Mode Only
  • Frequency of Operation = Maximum
  • Register Read Latency = 2 Clock Cycles
  • Output Impedance = 45Ω
  1. SafeBoot recovery flow:
    1. Read Status Register 1, if SR1=0x61, it is flash initialization failure, hardware reset the board to fix the issue. If SR1=0x41, continue the following steps
    2. Clear Status Register (command 0x30)
    3. Write Enable (command 0x06)
    4. Write Any Register (command 0x71 + die1 register 4-byte address + desired register configuration value) (if multiple non-volatile registers need to be configured, repeat this step with respective register 4-byte address and desired registers values)
    5. Write Any Register (command 0x71 + die2 register 4-byte address + desired register configuration value) (if multiple non-volatile registers need to be configured, repeat this step with respective register 4-byte address and desired registers values)
    6. Change host controller interface to the same as register configurations.

Thank you

Regards,

Bushra

View solution in original post

0 Likes
3 Replies
BushraH_91
Moderator
Moderator First comment on blog 500 replies posted 250 replies posted
Moderator

Hello,

Thank you for contacting Cypress Technical Support, an Infineon Technologies Company. We are currently reviewing the case and will get back to you as soon as we find the resolution.

Regards,

Bushra

0 Likes
BushraH_91
Moderator
Moderator First comment on blog 500 replies posted 250 replies posted
Moderator

Hello,

Here is the suggested flow to recover from register corruption failure:

  1. Pre-requisitions:
  • Interface Protocol = Single SPI (1S-1S-1S)
  • Address Bytes = 4 Byte Address Mode Only
  • Frequency of Operation = Maximum
  • Register Read Latency = 2 Clock Cycles
  • Output Impedance = 45Ω
  1. SafeBoot recovery flow:
    1. Read Status Register 1, if SR1=0x61, it is flash initialization failure, hardware reset the board to fix the issue. If SR1=0x41, continue the following steps
    2. Clear Status Register (command 0x30)
    3. Write Enable (command 0x06)
    4. Write Any Register (command 0x71 + die1 register 4-byte address + desired register configuration value) (if multiple non-volatile registers need to be configured, repeat this step with respective register 4-byte address and desired registers values)
    5. Write Any Register (command 0x71 + die2 register 4-byte address + desired register configuration value) (if multiple non-volatile registers need to be configured, repeat this step with respective register 4-byte address and desired registers values)
    6. Change host controller interface to the same as register configurations.

Thank you

Regards,

Bushra

0 Likes
BushraH_91
Moderator
Moderator First comment on blog 500 replies posted 250 replies posted
Moderator

Hello,

This is a follow up email. Is your issue resolved?

Thank you

Regards,

Bushra

0 Likes