Commit 9a80e714 authored by Hans de Goede's avatar Hans de Goede Committed by Marek Vasut

usb: kbd: Do not deregister usbkbd twice when using dm

The dm usb_kbd_remove function() will deregister the usb keyboard for
us on a "usb reset" / "usb stop" so there is no need to manually call
usb_kbd_deregister() in the dm case.

This commit removes usb_kbd_deregister() in the dm case fixing the
following "usb reset" errors:

usb_kbd_remove: warning, ret=-6
device_remove: Device 'usb_kbd' failed to remove, but children are gone
Signed-off-by: default avatarHans de Goede <>
parent cfb3f1cd
......@@ -541,7 +541,7 @@ static int do_usbboot(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
static int do_usb_stop_keyboard(int force)
#if !defined CONFIG_DM_USB && defined CONFIG_USB_KEYBOARD
if (usb_kbd_deregister(force) != 0) {
printf("USB not stopped: usbkbd still using USB\n");
return 1;
......@@ -566,7 +566,6 @@ int drv_usb_kbd_init(void)
/* No USB Keyboard found */
return -1;
/* Deregister the keyboard. */
int usb_kbd_deregister(int force)
......@@ -599,6 +598,8 @@ int usb_kbd_deregister(int force)
static int usb_kbd_probe(struct udevice *dev)
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment