Merge branch 'master' of git://github.com/texane/stlink
authorUwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>
Wed, 18 Jan 2012 09:52:01 +0000 (10:52 +0100)
committerUwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>
Wed, 18 Jan 2012 09:52:01 +0000 (10:52 +0100)
Conflicts:
gdbserver/Makefile

gdbserver/Makefile
src/stlink-sg.c
src/stlink-usb.c

index 4f5642450bf37f34fb0e3523594659c9fb9400c8..8cca5726d25abc341c23f786804b8fc0b36a3547 100644 (file)
@@ -6,7 +6,7 @@ LDFLAGS=-L.. -lstlink -lusb-1.0
 
 all: $(PRG)
 
-$(PRG): $(OBJS)  ../libstlink.a
+$(PRG): $(OBJS) ../libstlink.a
        $(CC) -o $@  $^ $(LDFLAGS)
 
 clean:
index e45fe48ed04e1258ab3cc8521e61fd2ecf517ce6..3d4a9b79882a9d3959732253b8d4dede9a82da27 100644 (file)
@@ -985,8 +985,6 @@ stlink_t* stlink_v1_open_inner(const int verbose) {
         return NULL;
     }
 
-    stlink_reset(sl);
-    stlink_load_device_params(sl);
     stlink_version(sl);
     if ((sl->version.st_vid != USB_ST_VID) || (sl->version.stlink_pid != USB_STLINK_PID)) {
         ugly_log(UERROR, LOG_TAG, 
@@ -1016,6 +1014,7 @@ stlink_t* stlink_v1_open_inner(const int verbose) {
             "WTF? successfully opened, but unable to read version details. BROKEN!\n");
         return NULL;
     }
+
     return sl;
 }
 
@@ -1027,6 +1026,9 @@ stlink_t* stlink_v1_open(const int verbose) {
     }
     // by now, it _must_ be fully open and in a useful mode....
        stlink_enter_swd_mode(sl);
+    /* Now we are ready to read the parameters  */
+    stlink_reset(sl);
+    stlink_load_device_params(sl);
     ILOG("Successfully opened a stlink v1 debugger\n");
     return sl;
 }
index 04f0b2cbef665fc0eb102ec6987ab375ad67fcbd..65d92ecabb2bbebc19b5fd167ba9708edc411e5b 100644 (file)
@@ -203,7 +203,7 @@ uint32_t _stlink_usb_read_debug32(stlink_t *sl, uint32_t addr) {
     size = send_recv(slu, 1, cmd, slu->cmd_len, rdata, rep_len);
     if (size == -1) {
         printf("[!] send_recv\n");
-        return;
+        return 0;
     }
     return read_uint32(rdata, 4);
 }