Jumping between programs without USB re-enumeration | Cypress Semiconductor
Jumping between programs without USB re-enumeration
Summary: 1 Reply, Latest post by kalev on 19 Sep 2012 02:31 AM PDT
Verified Answers: 0
18 Sep 2012 06:54 AM PDT#1
I need to jump between programs without USB re-enumeration in any combination: from boot loader to application, from application to boot loader, from application to application, from boot loader to boot loader. Additionally, every program is built with different FX3 API version.
Unfortunately currently supported jump variants are too limited. For example it's not supported jumping from initial application (loaded from I2C flash at power on) to secondary boot loader (loaded by application).
I detected that there is some memory area at address 0x40002000 used for passing parameters between boot loader and application. API functions verify and update this data before/after performing the jump. Could you make this data structure public so the designers could build/modify it according the programs they jump from/to.
BTW, what is the intention of CyU3PUsbSetBooterSwitch function. I see that CyU3PUsbJumpBackToBooter performs a jump only if CyU3PUsbSetBooterSwitch has been called before. But why it's separated from CyU3PUsbJumpBackToBooter and not included/hidden in it.