Commit f9de0dd2 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

USB: HCD: remove logic about which hcd is loaded

It turns out that warning about which USB host controller is loaded
before another one doesn't really matter.  All that really is needed is
the PCI softdep module loading logic, which has been present in the
kernel ever since commit 05c92da0 ("usb: ohci/uhci - add soft
dependencies on ehci_pci")

So remove the warning messages, they are not useful, not needed, and
only confuse people.  As can be seen in the discussion at
https://lore.kernel.org/r/20251230080014.3934590-1-chenhuacai@loongson.cn



Cc: Huacai Chen <chenhuacai@loongson.cn>
Suggested-by: default avatarAlan Stern <stern@rowland.harvard.edu>
Reviewed-by: default avatarHuacai Chen <chenhuacai@loongson.cn>
Link: https://patch.msgid.link/2026010739-diffuser-shelter-e31c@gregkh


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 86767625
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -77,10 +77,6 @@

/*-------------------------------------------------------------------------*/

/* Keep track of which host controller drivers are loaded */
unsigned long usb_hcds_loaded;
EXPORT_SYMBOL_GPL(usb_hcds_loaded);

/* host controllers we manage */
DEFINE_IDR (usb_bus_idr);
EXPORT_SYMBOL_GPL (usb_bus_idr);
+0 −6
Original line number Diff line number Diff line
@@ -5625,11 +5625,6 @@ int __init fotg210_hcd_init(void)
	if (usb_disabled())
		return -ENODEV;

	set_bit(USB_EHCI_LOADED, &usb_hcds_loaded);
	if (test_bit(USB_UHCI_LOADED, &usb_hcds_loaded) ||
			test_bit(USB_OHCI_LOADED, &usb_hcds_loaded))
		pr_warn("Warning! fotg210_hcd should always be loaded before uhci_hcd and ohci_hcd, not after\n");

	pr_debug("%s: block sizes: qh %zd qtd %zd itd %zd\n",
			hcd_name, sizeof(struct fotg210_qh),
			sizeof(struct fotg210_qtd),
@@ -5643,5 +5638,4 @@ int __init fotg210_hcd_init(void)
void __exit fotg210_hcd_cleanup(void)
{
	debugfs_remove(fotg210_debug_root);
	clear_bit(USB_EHCI_LOADED, &usb_hcds_loaded);
}
+0 −8
Original line number Diff line number Diff line
@@ -1354,12 +1354,6 @@ static int __init ehci_hcd_init(void)
	if (usb_disabled())
		return -ENODEV;

	set_bit(USB_EHCI_LOADED, &usb_hcds_loaded);
	if (test_bit(USB_UHCI_LOADED, &usb_hcds_loaded) ||
			test_bit(USB_OHCI_LOADED, &usb_hcds_loaded))
		printk(KERN_WARNING "Warning! ehci_hcd should always be loaded"
				" before uhci_hcd and ohci_hcd, not after\n");

	pr_debug("%s: block sizes: qh %zd qtd %zd itd %zd sitd %zd\n",
		 hcd_name,
		 sizeof(struct ehci_qh), sizeof(struct ehci_qtd),
@@ -1390,7 +1384,6 @@ static int __init ehci_hcd_init(void)
	debugfs_remove(ehci_debug_root);
	ehci_debug_root = NULL;
#endif
	clear_bit(USB_EHCI_LOADED, &usb_hcds_loaded);
	return retval;
}
module_init(ehci_hcd_init);
@@ -1404,6 +1397,5 @@ static void __exit ehci_hcd_cleanup(void)
#ifdef CONFIG_DYNAMIC_DEBUG
	debugfs_remove(ehci_debug_root);
#endif
	clear_bit(USB_EHCI_LOADED, &usb_hcds_loaded);
}
module_exit(ehci_hcd_cleanup);
+0 −3
Original line number Diff line number Diff line
@@ -1282,7 +1282,6 @@ static int __init ohci_hcd_mod_init(void)

	pr_debug ("%s: block sizes: ed %zd td %zd\n", hcd_name,
		sizeof (struct ed), sizeof (struct td));
	set_bit(USB_OHCI_LOADED, &usb_hcds_loaded);

	ohci_debug_root = debugfs_create_dir("ohci", usb_debug_root);

@@ -1332,7 +1331,6 @@ static int __init ohci_hcd_mod_init(void)
	debugfs_remove(ohci_debug_root);
	ohci_debug_root = NULL;

	clear_bit(USB_OHCI_LOADED, &usb_hcds_loaded);
	return retval;
}
module_init(ohci_hcd_mod_init);
@@ -1352,7 +1350,6 @@ static void __exit ohci_hcd_mod_exit(void)
	ps3_ohci_driver_unregister(&PS3_SYSTEM_BUS_DRIVER);
#endif
	debugfs_remove(ohci_debug_root);
	clear_bit(USB_OHCI_LOADED, &usb_hcds_loaded);
}
module_exit(ohci_hcd_mod_exit);
+0 −5
Original line number Diff line number Diff line
@@ -867,8 +867,6 @@ static int __init uhci_hcd_init(void)
	if (usb_disabled())
		return -ENODEV;

	set_bit(USB_UHCI_LOADED, &usb_hcds_loaded);

#ifdef CONFIG_DYNAMIC_DEBUG
	errbuf = kmalloc(ERRBUF_LEN, GFP_KERNEL);
	if (!errbuf)
@@ -912,8 +910,6 @@ static int __init uhci_hcd_init(void)

errbuf_failed:
#endif

	clear_bit(USB_UHCI_LOADED, &usb_hcds_loaded);
	return retval;
}

@@ -930,7 +926,6 @@ static void __exit uhci_hcd_cleanup(void)
#ifdef CONFIG_DYNAMIC_DEBUG
	kfree(errbuf);
#endif
	clear_bit(USB_UHCI_LOADED, &usb_hcds_loaded);
}

module_init(uhci_hcd_init);
Loading