summaryrefslogtreecommitdiffstats
path: root/src/mkii.c
diff options
context:
space:
mode:
authorPali Rohár <pali.rohar@gmail.com>2014-11-21 17:15:16 +0100
committerPali Rohár <pali.rohar@gmail.com>2014-11-21 17:15:16 +0100
commit7023b4b290cb92e15411331ae930e76e12f6834b (patch)
tree290bd44e8ca6cf9943ccadc5f5c94e68bca37a96 /src/mkii.c
parent8c305104a0da9da7f3703b648bea194314a94a5e (diff)
download0xFFFF-7023b4b290cb92e15411331ae930e76e12f6834b.tar.bz2
mkii: Check for Update and PC Suite mode
Diffstat (limited to 'src/mkii.c')
-rw-r--r--src/mkii.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mkii.c b/src/mkii.c
index 47b0c66..e3738bc 100644
--- a/src/mkii.c
+++ b/src/mkii.c
@@ -148,6 +148,13 @@ int mkii_init(struct usb_device_info * dev) {
printf("\n");
+ memset(buf, 0, sizeof(buf));
+ usb_get_string_simple(dev->udev, usb_device(dev->udev)->config[dev->flash_device->configuration].iConfiguration, buf, sizeof(buf));
+ if ( strncmp(buf, "Firmware Upgrade Configuration", sizeof("Firmware Upgrade Configuration")) == 0 )
+ dev->data |= (1 << 31);
+
+ printf("Device is in: %s mode\n", (dev->data & (1<<31)) ? "Update" : "PC Suite");
+
return 0;
}