updated command line 802.15.4 checksum calculator and added serClose to GoodFET to...
[goodfet] / firmware / include / jtag430.h
index 9196e3c..6cff0b7 100644 (file)
@@ -1,16 +1,16 @@
-/*! \file jtag.h
+/*! \file jtag430.h
   \author Travis Goodspeed
   \brief JTAG handler functions.
   \author Travis Goodspeed
   \brief JTAG handler functions.
-
-FIXME: Remove these when proven compiling
-#include <signal.h>
-#include <io.h>
-#include <iomacros.h>
 */
 
 */
 
+#ifndef JTAG430_H
+#define JTAG430_H
 
 
+#include "app.h"
 #include "jtag.h"
 
 #include "jtag.h"
 
+#define JTAG430 0x16
+
 extern unsigned int drwidth;
 
 #define MSP430MODE 0
 extern unsigned int drwidth;
 
 #define MSP430MODE 0
@@ -20,8 +20,10 @@ extern unsigned int jtag430mode;
 
 // JTAG430 Commands
 
 
 // JTAG430 Commands
 
-//! Start JTAG, unique to the '430.
+//! Start JTAG, unique to the '430.  Deprecated.
 void jtag430_start();
 void jtag430_start();
+//! Same thing, but also for '430X2.
+unsigned char jtag430x2_start();
 //! Reset the TAP state machine, check the fuse.
 void jtag430_resettap();
 
 //! Reset the TAP state machine, check the fuse.
 void jtag430_resettap();
 
@@ -43,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);
 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
 
 
 //16-bit MSP430 JTAG commands, bit-swapped
@@ -87,6 +91,9 @@ void jtag430_por();
 #define JTAG430_RELEASECPU 0xA1
 #define JTAG430_SETINSTRFETCH 0xC1
 #define JTAG430_SETPC 0xC2
 #define JTAG430_RELEASECPU 0xA1
 #define JTAG430_SETINSTRFETCH 0xC1
 #define JTAG430_SETPC 0xC2
+#define JTAG430_SETREG 0xD2
+#define JTAG430_GETREG 0xD3
+
 #define JTAG430_WRITEMEM 0xE0
 #define JTAG430_WRITEFLASH 0xE1
 #define JTAG430_READMEM 0xE2
 #define JTAG430_WRITEMEM 0xE0
 #define JTAG430_WRITEFLASH 0xE1
 #define JTAG430_READMEM 0xE2
@@ -95,5 +102,10 @@ void jtag430_por();
 #define JTAG430_VERIFYMEM 0xE5
 #define JTAG430_BLOWFUSE 0xE6
 #define JTAG430_ISFUSEBLOWN 0xE7
 #define JTAG430_VERIFYMEM 0xE5
 #define JTAG430_BLOWFUSE 0xE6
 #define JTAG430_ISFUSEBLOWN 0xE7
+#define JTAG430_ERASEINFO 0xE8
 #define JTAG430_COREIP_ID 0xF0
 #define JTAG430_DEVICE_ID 0xF1
 #define JTAG430_COREIP_ID 0xF0
 #define JTAG430_DEVICE_ID 0xF1
+
+extern app_t const jtag430_app;
+
+#endif // JTAG430_H