AM62A7: AM62A7 series about FLASH interface problems

Part Number: AM62A7
Other Parts Discussed in Thread: SYSCONFIG

Tool/software:

As shown, when we perform a flash operation, the MCU TASK is blocked until the flash operation completes. We need an interface for flash asynchronous operations.

thank you

As shown in Figure 2, the flash switch interface I'm using now has no return value, and I need to provide an interface that does.

thank you

  • Hi,

    In figure 1, how are you seeing those logs? Have you added them manually?

    As shown in Figure 2, the flash switch interface I'm using now has no return value, and I need to provide an interface that does.

    It does not have any return value as it just closes the Flash. Can you elaborate what you mean by "provide an interface that does"?

    Regards,
    Vaibhav

  • Hi.

    In figure 1,I added these logs manually.

    In figure 2, Because we need to close and open the operation of FLASH to determine whether the operation is OK. So we want both the closed and open functions to have a return value that determines the result of the operation.

    thanks.

  • Hi,

    In figure 1,I added these logs manually.

    Thanks for mentioning these.

    In figure 2, Because we need to close and open the operation of FLASH to determine whether the operation is OK. So we want both the closed and open functions to have a return value that determines the result of the operation.

    So when you have a Flash and OSPI configured in SysConfig, the configurations are done when you call Board_driversOpen().

    So inside Board_driversOpen() we call a series of API which takes care of the Flash Part Initialization and proper logs and populated along with corner cases being checked for.

    So there are lots of checks inside, but some of the major ones being:

    1. when the device and manufacture id is read.
    2. when the phy tuning is done.

    So the return value is taken care of and problems which arise during flash initialization is taken care of.

    Hope this helps.

    Regards,

    Vaibhav

  • So we don't need a return value to determine if the open/close operation was successful?

    After OSPI is configured in SysConfig, can Board_driversOpen() be used to ensure that it is 100% open?

    And please give me the problem - your solution.

    thank you

  • Hi:

    Question 2, shown in the figure above. I need you to add the return value of success or failure to these two closed driver functions.

    thank you

  • Hi,

    The subject matter expert is currently out of office. Please expect delayed responses.

    Regards,

    Tushar

  • Hi TI Experts,

    May I know if you could help on the above question please?

    Thanks,

    Kevin

  • Hi,

    I am back. Thanks for your patience.

    So we don't need a return value to determine if the open/close operation was successful?

    The reason we do not need it on the top level API like the open and close for Board drivers is because any sort of error which happens deep inside the opening or closing of the flash driver is taken care with assert statements and returns failure if anything goes wrong.

    So it should be a proper sequence, firstly Drivers_open() and then Board_driversOpen().

    So to answer your question, YES only  Board_driversOpen()  can be used to determine if the OSPI has been opened correctly or not.

    Regards,

    Vaibhav