[SOLVED] Cypress Code protection with Segger programmer

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • [SOLVED] Cypress Code protection with Segger programmer

    Hi,
    in our project we are using the Cypress micro CY8C4024LQI-S411 (4000S Family).
    In our production line we use the Segger Flash programmer (Jlink software) for programming the boards.
    We would like to protect the code from reading after programming (chip protection).

    We know that this is possible by following some steps using Cypress software (PSoc Creator and PSoc Programmer).
    Is it possible to do the same using the Segger Flash Programmer?
    Thank you very much for your help

    Francesco
  • Hello Francesco,

    Yes, you can use exit steps in J-Flash software.
    More information can be found in the J-Flash user guide UM08003.

    Best regards,
    Nino
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • Hi Nino,

    thank you very much for your reply.

    Following your indication we tried to implement the Read Protection sequence in Exit Steps.

    The board is programmed correctly but the .hex file is still readable (the chip protection seems not have effects).

    Please could you tell us if the sequence is correct? (See image in attachment)ExitSteps.zip



    For protection register we refer to the following documentation:

    cypress.com/file/230701/downloadPag. 216 20.5.8



    From the following we understood how to configure Clock API (as requested in the previous document) before setting protection register:

    github.com/ghent360/PSOC4_swd_…/FX2LP/ProgrammingSteps.c

    line 157



    In the end we found register addresses (CPUSS_SYSREQ and CPUSS_SYSARG) from the following:

    github.com/ghent360/PSOC4_swd_…/FX2LP/ProgrammingSteps.h



    We “translated” all the previous information in Exit Sequence Steps but, as said, at the end no Code Read protection is Achieved.



    Please, could you help us or just say if our procedure is correct?

    Thank you in advance and receive our Best Regards


    P.S.: In production phase we will convert all the instructions in a batch file using JLink from command line.
  • Hello Francesco,

    We currently have no eval board with that particular target device to verify your steps.
    Which steps exactly are necessary should be described in the particular target device reference manual.
    If not we suggest getting in contact with Cypress support for verification of the sequence.

    EDIT: We received your your inquiry per e-mail as well. To make sure all information comes through only one communications channel this thread will be closed now.

    Best regards,
    Nino
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.