issp_extern.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. #include "issp_revision.h"
  2. #ifdef PROJECT_REV_304
  3. /* Copyright 2006-2007, Cypress Semiconductor Corporation.
  4. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
  5. CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
  6. INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  7. MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  8. DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
  9. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  10. CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
  11. OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
  12. BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
  13. LIABILITY, WHETHER IN CONRTACT, STRICT LIABILITY, OR TORT (INCLUDING
  14. NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  15. SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  16. Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND,EXPRESS OR IMPLIED,
  17. WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  18. WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  19. Cypress reserves the right to make changes without further notice to the
  20. materials described herein. Cypress does not assume any liability arising
  21. out of the application or use of any product or circuit described herein.
  22. Cypress does not authorize its products for use as critical components in
  23. life-support systems where a malfunction or failure may reasonably be
  24. expected to result in significant injury to the user. The inclusion of
  25. Cypress� product in a life-support systems application implies that the
  26. manufacturer assumes all risk of such use and in doing so indemnifies
  27. Cypress against all charges.
  28. Use may be limited by and subject to the applicable Cypress software
  29. license agreement.
  30. */
  31. #ifndef INC_ISSP_EXTERN
  32. #define INC_ISSP_EXTERN
  33. #include "issp_directives.h"
  34. #include "cypress_touchkey.h"
  35. extern signed char fXRESInitializeTargetForISSP(void);
  36. extern signed char fPowerCycleInitializeTargetForISSP(void);
  37. extern signed char fEraseTarget(void);
  38. extern unsigned int iLoadTarget(void);
  39. extern void ReStartTarget(void);
  40. extern signed char fVerifySiliconID(void);
  41. extern signed char fAccTargetBankChecksum(unsigned int *);
  42. extern void SetBankNumber(unsigned char);
  43. extern signed char fProgramTargetBlock(unsigned char, unsigned char);
  44. extern signed char fVerifyTargetBlock(unsigned char, unsigned char);
  45. extern signed char fVerifySetup(unsigned char, unsigned char);
  46. extern signed char fReadByteLoop(void); /*PTJ: read bytes after VERIFY-SETUP*/
  47. extern signed char fSecureTargetFlash(void);
  48. extern signed char fReadStatus(void); /*PTJ: READ-STATUS*/
  49. extern signed char fReadCalRegisters(void);
  50. extern signed char fReadWriteSetup(void); /*PTJ: READ-WRITE-SETUP*/
  51. extern signed char fReadSecurity(void); /*PTJ: READ-SECURITY*/
  52. extern signed char fSyncDisable(void); /*PTJ: SYNC-DISABLE rev 307*/
  53. extern signed char fSyncEnable(void); /*PTJ: SYNC-ENABLE rev 307*/
  54. extern void InitTargetTestData(void);
  55. extern void LoadArrayWithSecurityData(unsigned char, unsigned char,
  56. unsigned char);
  57. extern void LoadProgramData(unsigned char, unsigned char);
  58. extern signed char fLoadSecurityData(unsigned char);
  59. extern void Delay(unsigned char);
  60. extern unsigned char fSDATACheck(void);
  61. extern void SCLKHigh(void);
  62. extern void SCLKLow(void);
  63. #ifndef RESET_MODE /*only needed when power cycle mode*/
  64. extern void SetSCLKHiZ(void);
  65. #endif
  66. extern void SetSCLKStrong(void);
  67. extern void SetSDATAHigh(void);
  68. extern void SetSDATALow(void);
  69. extern void SetSDATAHiZ(void);
  70. extern void SetSDATAStrong(void);
  71. extern void AssertXRES(void);
  72. extern void DeassertXRES(void);
  73. extern void SetXRESStrong(void);
  74. extern void ApplyTargetVDD(void);
  75. extern void RemoveTargetVDD(void);
  76. extern void SetTargetVDDStrong(void);
  77. extern unsigned char fIsError;
  78. #ifdef USE_TP
  79. extern void InitTP(void);
  80. extern void SetTPHigh(void);
  81. extern void SetTPLow(void);
  82. extern void ToggleTP(void);
  83. #endif
  84. extern int ISSP_main(struct touchkey_i2c *tkey_i2c);
  85. #endif /*(INC_ISSP_EXTERN)*/
  86. #endif /*(PROJECT_REV_)*/