X-Git-Url: http://git.rot13.org/?p=goodfet;a=blobdiff_plain;f=firmware%2Finclude%2Fjtag430.h;h=6cff0b79c466c3df1fe6abad0162eeb56983f428;hp=7d38bc7b5801639f511195e7cb874467d310abe9;hb=a031b4a563978102c664466d1e91a9c3ab0553dd;hpb=386bb6b2c16f5d729a49e8eb8f42bbfad6a42d10 diff --git a/firmware/include/jtag430.h b/firmware/include/jtag430.h index 7d38bc7..6cff0b7 100644 --- a/firmware/include/jtag430.h +++ b/firmware/include/jtag430.h @@ -3,9 +3,14 @@ \brief JTAG handler functions. */ +#ifndef JTAG430_H +#define JTAG430_H +#include "app.h" #include "jtag.h" +#define JTAG430 0x16 + extern unsigned int drwidth; #define MSP430MODE 0 @@ -15,8 +20,10 @@ extern unsigned int jtag430mode; // JTAG430 Commands -//! Start JTAG, unique to the '430. +//! Start JTAG, unique to the '430. Deprecated. void jtag430_start(); +//! Same thing, but also for '430X2. +unsigned char jtag430x2_start(); //! Reset the TAP state machine, check the fuse. void jtag430_resettap(); @@ -38,6 +45,8 @@ void jtag430_setinstrfetch(); void jtag430_setpc(unsigned int adr); //! Write data to address. void jtag430_writeflash(unsigned int adr, unsigned int data); +//! Shift an address width of data +uint32_t jtag430_shift_addr( uint32_t addr ); //16-bit MSP430 JTAG commands, bit-swapped @@ -96,3 +105,7 @@ void jtag430_por(); #define JTAG430_ERASEINFO 0xE8 #define JTAG430_COREIP_ID 0xF0 #define JTAG430_DEVICE_ID 0xF1 + +extern app_t const jtag430_app; + +#endif // JTAG430_H