added packet fuzzing
[goodfet] / client / GoodFETXSCALE.py
index f71b52e..f9b0c33 100644 (file)
@@ -17,7 +17,7 @@ NOK   = 0x7E
 OK    = 0x7F
 
 # XSCALE JTAG verbs
 OK    = 0x7F
 
 # XSCALE JTAG verbs
-GET_CHIP_ID         = 0xF1
+# verbs start at 0xF0
 
 from GoodFETJTAG import GoodFETJTAG
 from intelhex import IntelHex
 
 from GoodFETJTAG import GoodFETJTAG
 from intelhex import IntelHex
@@ -28,37 +28,23 @@ class GoodFETXSCALE(GoodFETJTAG):
 
     XSCALEAPP=0x15;
     APP=XSCALEAPP;
 
     XSCALEAPP=0x15;
     APP=XSCALEAPP;
+
     def setup(self):
         """Move the FET into the JTAG ARM application."""
     def setup(self):
         """Move the FET into the JTAG ARM application."""
-        print "Initializing XScale..."
-        self.writecmd(self.APP, SETUP, 0, self.data)
+        sys.stdout.write("Initializing XScale...")
+        self.writecmd(self.APP, SETUP)
+        self._check_return(SETUP)
 
     def start(self):
         """Start debugging."""
 
     def start(self):
         """Start debugging."""
-        print "Staring debug..."
-        self.writecmd(self.APP, START, 0, self.data)
+        sys.stdout.write("Staring session...")
+        self.writecmd(self.APP, START)
+        self._check_return(START)
 
     def stop(self):
         """Stop debugging."""
 
     def stop(self):
         """Stop debugging."""
-        print "Stopping debug..."
-        self.writecmd(self.APP, STOP, 0, self.data)
-
-    def get_id(self):
-        """Get the Chip ID."""
-        
-        # send the get chip ID command
-        self.writecmd(self.APP, GET_CHIP_ID, 0, [])
-
-        # get the response
-        ident = struct.unpack("<L", "".join(self.data[0:4]))[0]
-
-        version = ident >> 28
-        part_number = (ident >> 12) & 0x10
-        manufacturer = ident & 0xFFF
-
-        print "XScale ID --\n\tmfg: %x\n\tpart: %x\n\tver: %x\n\t(%x)" % (version, part_number, manufacturer, ident)
+        sys.stdout.write("Stopping session...")
+        self.writecmd(self.APP, STOP)
+        self._check_return(STOP)
 
 
-        return ident
-