imx233/bl: usb mode has priority over hold

Change-Id: I0d124eaed0ebf1ca18c022684a96dfbf7d740c7e
diff --git a/bootloader/imx233.c b/bootloader/imx233.c
index 2238728..75834c3 100644
--- a/bootloader/imx233.c
+++ b/bootloader/imx233.c
@@ -156,23 +156,6 @@
     backlight_init();
 
     button_init();
-    /* dummy read, might be necessary to init things */
-#ifdef HAVE_BUTTON_DATA
-    int data;
-    button_read_device(&data);
-#else
-    button_read_device();
-#endif
-
-#ifdef HAS_BUTTON_HOLD
-    if(button_hold())
-    {
-        printf("Hold switch on");
-        printf("Shutting down...");
-        sleep(HZ);
-        power_off();
-    }
-#endif
 
     printf("%s: %s", MSG(240, "Ver", "Boot version"), RBVERSION);
     printf("%s: %x ", MSG(240, "Arg", "Boot arg"), arg);
@@ -202,6 +185,24 @@
     if(usb_detect() == USB_INSERTED)
         usb_mode(HZ);
 
+    /* dummy read, might be necessary to init things */
+#ifdef HAVE_BUTTON_DATA
+    int data;
+    button_read_device(&data);
+#else
+    button_read_device();
+#endif
+
+#ifdef HAS_BUTTON_HOLD
+    if(button_hold())
+    {
+        printf("Hold switch on");
+        printf("Shutting down...");
+        sleep(HZ);
+        power_off();
+    }
+#endif
+
     printf("Loading firmware");
 
     loadbuffer = (unsigned char*)loadaddress;