diff --git a/common/dfu.c b/common/dfu.c
index 4c529f7c36f909a2797b92478653aa2bbde6899d..0e9f5f59c80a6a597eefada2c66d80c85d1bc6fa 100644
--- a/common/dfu.c
+++ b/common/dfu.c
@@ -24,7 +24,11 @@ int run_usb_dnl_gadget(int usbctrl_index, char *usb_dnl_gadget)
 	bool dfu_reset = false;
 	int ret, i = 0;
 
-	board_usb_init(usbctrl_index, USB_INIT_DEVICE);
+	ret = board_usb_init(usbctrl_index, USB_INIT_DEVICE);
+	if (ret) {
+		error("board usb init failed\n");
+		return CMD_RET_FAILURE;
+	}
 	g_dnl_clear_detach();
 	ret = g_dnl_register(usb_dnl_gadget);
 	if (ret) {