[fix] stlink_usb_read_mem32 len command field
authorFabien Le Mentec <texane@gmail.com>
Sun, 16 Oct 2011 21:28:29 +0000 (16:28 -0500)
committerFabien Le Mentec <texane@gmail.com>
Sun, 16 Oct 2011 21:28:29 +0000 (16:28 -0500)
src/stlink-usb.c

index 2ed5320e971f920542bac6f1df05520d231c4850..533a632ea081ca461e14aa4dd3aa0dc02219be91 100644 (file)
@@ -398,10 +398,8 @@ void _stlink_usb_read_mem32(stlink_t *sl, uint32_t addr, uint16_t len) {
     buf[0] = STLINK_DEBUG_COMMAND;
     buf[1] = STLINK_DEBUG_READMEM_32BIT;
     write_uint32(buf + 2, addr);
-    /* windows usb logs show only one byte is used for length ... */
-    // Presumably, this is because usb transfers can't be 16 bits worth of bytes long...
-    assert (len < 256);
     buf[6] = (uint8_t) len;
+    buf[7] = (uint8_t) (len >> 8);
 
     size = send_recv(slu, buf, STLINK_CMD_SIZE, buf, sizeof (sl->q_buf));
     if (size == -1) {