xhci: Don't defer primary roothub registration if there is only one roothub
The support for xHCI controllers with only one roothub, and the code to defer primary roothub registation until second roothub got merged to usb-next for 5.19 at the same time. commit873f323618
("xhci: prepare for operation w/o shared hcd") commitb7a4f9b5d0
("xhci: Set HCD flag to defer primary roothub registration") These got merged in such a way that the flag to defer primary roothub registration is set even for xHC controllers with just one roothub. Fix this by setting the defer flag in a codepath taken only if we have two roothubs Fixes:873f323618
("xhci: prepare for operation w/o shared hcd") Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com> Link: https://lore.kernel.org/r/20220516094850.19788-2-mathias.nyman@linux.intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
376d6b02cb
commit
1bd8bb7d2d
|
@ -696,8 +696,6 @@ int xhci_run(struct usb_hcd *hcd)
|
|||
xhci_dbg_trace(xhci, trace_xhci_dbg_init,
|
||||
"Finished %s for main hcd", __func__);
|
||||
|
||||
set_bit(HCD_FLAG_DEFER_RH_REGISTER, &hcd->flags);
|
||||
|
||||
xhci_create_dbc_dev(xhci);
|
||||
|
||||
xhci_debugfs_init(xhci);
|
||||
|
@ -705,6 +703,8 @@ int xhci_run(struct usb_hcd *hcd)
|
|||
if (xhci_has_one_roothub(xhci))
|
||||
return xhci_run_finished(xhci);
|
||||
|
||||
set_bit(HCD_FLAG_DEFER_RH_REGISTER, &hcd->flags);
|
||||
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(xhci_run);
|
||||
|
|
Loading…
Reference in New Issue