This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2430: LSIZE Flash write protect

Part Number: CC2430

Hi All,

I am using CC2430 (128kB) version of SoC in one of the application. I want to lock the Flash and reverify using debug port that the Flash is locked.

Therefore after programing I set the LSIZE to '000' to lock all flash pages. Then I just executed write command (not erase before write) using debug port and I am still able to write into the flash. Now here I am expecting write error as flash is locked now. But I am not getting error.

Am I doing something wrong here?

I am using FlashPro-CC (XS) debugger from Elptronic.

Thanks,
Sanket

  • Hi Sanket,

    Have you read LSIZE to confirm that it is set to 0x000, and are you sure that the debugger is not executing any other commands except to write?  Clearing DBGLOCK would prevent the debugger from interfering with flash memory.

    The lock protect bits are written as a normal flash write to FWDATA (see section 13.3.2), but the Debug Interface needs to select the Flash Information Page first instead of the Flash Main Pages which is the default setting. The Information Page is selected through the Debug Configuration which is written through the Debug Interface only. Refer to section 12.4.1 and Table 36 for details on how the Flash Information Page is selected using the Debug Interface.

    Here is the datasheet and a similar E2E thread.  Note that TI will not support this device any further since it is NRND.

    Regards,
    Ryan

  • Hi Ryan,

    I confirmed by reading the lock bit status that LSIZE is '000'. For the testing I just want to lock 128kb (all) flash and want to keep debug port open (DBGLOCK = 1) to verify Flash lock operation via debug port.
    After programming and keeping LSIZE to '000' I am just executing Flash write operation (with same program). And I am able to program means write into Flash. Here I am expecting write cycle to fail as Flash is locked.