X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/e654346b7952ec0a024189c30b657195bf35f7e4..298e1a2d0da6ad10a5db57f1529496306e47e009:/client/flash.c?ds=sidebyside diff --git a/client/flash.c b/client/flash.c index 3a0a1cda..7622e8a5 100644 --- a/client/flash.c +++ b/client/flash.c @@ -11,9 +11,11 @@ #include #include #include +#include +#include #include "proxmark3.h" -#include "sleep.h" -//#include "proxusb.h" +#include "util.h" +#include "util_posix.h" #include "flash.h" #include "elf.h" #include "proxendian.h" @@ -276,7 +278,6 @@ static int get_proxmark_state(uint32_t *state) { UsbCommand c; c.cmd = CMD_DEVICE_INFO; -// SendCommand_(&c); SendCommand(&c); UsbCommand resp; ReceiveCommand(&resp); @@ -297,7 +298,7 @@ static int get_proxmark_state(uint32_t *state) *state = resp.arg[0]; break; default: - fprintf(stderr, "Error: Couldn't get proxmark state, bad response type: 0x%04"llx"\n", resp.cmd); + fprintf(stderr, "Error: Couldn't get proxmark state, bad response type: 0x%04" PRIx64 "\n", resp.cmd); return -1; break; } @@ -359,7 +360,7 @@ static int wait_for_ack(void) UsbCommand ack; ReceiveCommand(&ack); if (ack.cmd != CMD_ACK) { - printf("Error: Unexpected reply 0x%04"llx" (expected ACK)\n", ack.cmd); + printf("Error: Unexpected reply 0x%04" PRIx64 " (expected ACK)\n", ack.cmd); return -1; } return 0; @@ -391,7 +392,6 @@ int flash_start_flashing(int enable_bl_writes,char *serial_port_name) c.arg[2] = 0; } SendCommand(&c); -// SendCommand_(&c); return wait_for_ack(); } else { fprintf(stderr, "Note: Your bootloader does not understand the new START_FLASH command\n"); @@ -408,22 +408,8 @@ static int write_block(uint32_t address, uint8_t *data, uint32_t length) memset(block_buf, 0xFF, BLOCK_SIZE); memcpy(block_buf, data, length); UsbCommand c; -/* - c.cmd = {CMD_SETUP_WRITE}; - for (int i = 0; i < 240; i += 48) { - memcpy(c.d.asBytes, block_buf + i, 48); - c.arg[0] = i / 4; - SendCommand(&c); -// SendCommand_(&c); - if (wait_for_ack() < 0) { - return -1; - } - } -*/ c.cmd = CMD_FINISH_WRITE; c.arg[0] = address; -// memcpy(c.d.asBytes, block_buf+240, 16); -// SendCommand_(&c); memcpy(c.d.asBytes, block_buf, length); SendCommand(&c); return wait_for_ack(); @@ -486,7 +472,6 @@ void flash_free(flash_file_t *ctx) // just reset the unit int flash_stop_flashing(void) { UsbCommand c = {CMD_HARDWARE_RESET}; -// SendCommand_(&c); SendCommand(&c); msleep(100); return 0;