Hi, Roger Quadros <rogerq@xxxxxx> writes: >>> NOP_USB_XCEIV is used not only by gadget drivers but by >>> host drivers as well e.g. EHCI_OMAP. >>> >>> commit 5a8d651a2bde ("usb: gadget: move gadget API functions to udc-core") >>> made it so that NOP_USB_XCEIV can't be built-in if USB_GADGET is 'm'. >>> But this prevents EHCI_OMAP to be built-in if USB_GADGET is 'm'. >>> >>> Fix this undesired behaviour by moving usb_gadget_vbus_connect/disconnect() >>> to usb/gadget.h so that NOP_USB_XCEIV has no build dependency >>> on USB_GADGET. >>> >>> Retain the original Kconfig behaviour i.e. NOP_USB_XCEIV is selected >>> by drivers that need it. >> >> no, this is the wrong way to fix this. NOP _has_ a dependency on the >> Gadget API if it calls Gadget API functions. Dependencies are proper. >> >> Maybe the reason for the problem is that we ended up adding far too much >> code to phy-generic.c itself. Maybe it shouldn't know about clks and >> interrupts. The original idea of that driver was to simply satisfy a >> requirement to have a valid transceiver by some platforms. Maybe we >> should fix that instead. Moving functions around to workaround a problem >> is not the way to go, sorry. >> > OK but something that was working all these years is broken by your > patch. > Do you mind fixing it please? Or at least let me know how you want to > get it fixed. diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig index 2e710a4cca52..89fd095ca33d 100644 --- a/drivers/usb/host/Kconfig +++ b/drivers/usb/host/Kconfig @@ -180,7 +180,7 @@ config USB_EHCI_MXC config USB_EHCI_HCD_OMAP tristate "EHCI support for OMAP3 and later chips" depends on ARCH_OMAP - depends on NOP_USB_XCEIV + depends on USB_PHY default y ---help--- Enables support for the on-chip EHCI controller on -- balbi
Attachment:
signature.asc
Description: PGP signature