Re: [PATCH] xhci-pci: Make xhci-pci-renesas a proper modular driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jul 25, 2024 at 02:38:18AM +0200, Ben Hutchings wrote:
> If CONFIG_USB_XHCI_PCI_RENESAS is enabled, xhci-pci conditionally
> calls into the xhci-pci-renesas module, which means both modules must
> be loaded to use any xHCI PCI controller.
> 
> The MODULE_FIRMWARE declaration in the base xhci-pci module causes
> initramfs-tools to check for and warn about missing firmware for the
> Renesas xHCI controllers, when any xHCI PCI controller is present.
> And because of the previous oddity, simply moving this declaration to
> xhci-pci-renesas wouldn't help.
> 
> To fix this, reverse the relationship between the modules:
> 
> - Remove the quirk for the Renesas xHCIs, and the driver_data
>   structure used only for them
> - In xhci-pci:
>   - Rename xhci_pci_probe() to xhci_pci_common_probe()
>   - Export xhci_pci_common_probe() and xhci_pci_remove()
>   - Use a new probe function that rejects the Renesas xHCIs and then
>     calls the common probe function
> - In xhci-pci-renesas:
>   - Stop exporting renesas_xhci_check_request_fw()
>   - Add a probe function that calls renesas_xhci_check_request_fw()
>     followed by xhci_pci_common_probe()
>   - Add and register a new pci_driver matching only the Renesas xHCIs
>     and using its own probe function, but with other operations the
>     same as in xhci-pci
> - Make CONFIG_USB_XHCI_PCI_RENESAS depend on CONFIG_USB_XHCI_PCI,
>   not the other way around
> 
> Finally, move the MODULE_FIRMWARE declaration to xhci-pci-renesas.

Thanks for doing this, this has long bugged me, and "simple" fixes
didn't seem to do it, but this looks nice.  I'll queue it up after -rc1
is out.

greg k-h




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux