RE: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-02-03 Thread Alan Stern
On Tue, 3 Feb 2015, Peter Chen wrote:

How i386 platform chooses
   which driver is suitable for device?  The ehci_pci_init may overwrite
   what ci_hdrc_host_init does if it runs later?
  
  There's nothing special about the i386 platform.  _All_ platforms that 
  support
  PCI use the same matching code to select drivers.
  
  (This is true for other buses too, not just for PCI.  For example, all 
  platforms use
  the same matching code for the USB bus.)
  
  The device core iterates through all the drivers that are registered on the 
  PCI
  bus.  When it finds a driver that matches the device ID, it calls the 
  driver's probe
  routine.  If the probe routine returns 0 then the core stops iterating; 
  otherwise
  it keeps iterating through the list of drivers.
  
  So in this case it's more or less random.  Whichever driver gets registered 
  on
  the PCI bus first is the one that will be probed first.
  But with Andy's patch, the ehci-pci driver won't interfere with the 
  ci_hdrc_host
  driver, even if ehci-pci gets probed first.  In fact,
  ehci_pci_init() will never be called, because ehci_pci_probe() will return -
  ENODEV immediately.
  
 
 It is module_init(ehci_pci_init) in ehci-pci.c, so ehci_pci_init will always 
 be called.

Oops, yes, you're right.  I was thinking of ehci_pci_setup, sorry.

ehci_pci_init will indeed get called.  But it won't overwrite anything
in ci_hdrc_host_init.  The only thing it touches is its own private
ehci_pci_hc_driver structure.

Alan Stern

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-02-02 Thread Peter Chen
 
   How i386 platform chooses
  which driver is suitable for device?  The ehci_pci_init may overwrite
  what ci_hdrc_host_init does if it runs later?
 
 There's nothing special about the i386 platform.  _All_ platforms that support
 PCI use the same matching code to select drivers.
 
 (This is true for other buses too, not just for PCI.  For example, all 
 platforms use
 the same matching code for the USB bus.)
 
 The device core iterates through all the drivers that are registered on the 
 PCI
 bus.  When it finds a driver that matches the device ID, it calls the 
 driver's probe
 routine.  If the probe routine returns 0 then the core stops iterating; 
 otherwise
 it keeps iterating through the list of drivers.
 
 So in this case it's more or less random.  Whichever driver gets registered on
 the PCI bus first is the one that will be probed first.
 But with Andy's patch, the ehci-pci driver won't interfere with the 
 ci_hdrc_host
 driver, even if ehci-pci gets probed first.  In fact,
 ehci_pci_init() will never be called, because ehci_pci_probe() will return -
 ENODEV immediately.
 

It is module_init(ehci_pci_init) in ehci-pci.c, so ehci_pci_init will always be 
called.

Peter
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-02-02 Thread Alan Stern
On Mon, 2 Feb 2015, Peter Chen wrote:

  Let's look v2 patch, it bypasses probe at ehci-pci.c, then why 
  ehci_pci_init
  is still needed to call? The chipidea driver has already done the same
  thing in ehci_pci_init.
 
  You're right; ehci_pci_init isn't needed.  But there's no way to
  eliminate it and still have a universal kernel build.
 
 
 Does the pci id can pass from platform code/table?

I don't understand the question.

  How i386 platform chooses
 which driver is suitable for device?  The ehci_pci_init may overwrite what
 ci_hdrc_host_init does if it runs later?

There's nothing special about the i386 platform.  _All_ platforms that 
support PCI use the same matching code to select drivers.

(This is true for other buses too, not just for PCI.  For example, all 
platforms use the same matching code for the USB bus.)

The device core iterates through all the drivers that are registered on
the PCI bus.  When it finds a driver that matches the device ID, it
calls the driver's probe routine.  If the probe routine returns 0 then
the core stops iterating; otherwise it keeps iterating through the list
of drivers.

So in this case it's more or less random.  Whichever driver gets
registered on the PCI bus first is the one that will be probed first.  
But with Andy's patch, the ehci-pci driver won't interfere with the
ci_hdrc_host driver, even if ehci-pci gets probed first.  In fact,
ehci_pci_init() will never be called, because ehci_pci_probe() will
return -ENODEV immediately.

Alan Stern

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-02-01 Thread Peter Chen
On Fri, Jan 30, 2015 at 10:49 PM, Alan Stern st...@rowland.harvard.edu wrote:
 On Fri, 30 Jan 2015, Peter Chen wrote:

  The chipidea driver is structured in an odd way.  It looks like the PCI
  device combines a host controller and a device controller (and maybe
  even an OTG controller) into a single device.
 

 Any problems for that?

 No, but it is odd and it requires some code to be duplicated.

  That's why the chipidea driver has to duplicate ehci-pci.c and register
  various platform devices.  If ehci-pci were allowed to bind to the
  device then the gadget controller (and OTG controller?) would be
  unusable, because ehci-pci doesn't know how to use them.
 

 If the chipidea has host function, it doesn't need any drivers at
 usb/host/ehci-*.c, the v1 patch for this thread, it just doesn't
 compile ehci-pci.c, and it should work too.

 Yes, it will work.  But if you go back to the second message in this
 thread (http://marc.info/?l=linux-usbm=142229289226237w=2) you will
 see why that patch isn't a good idea: It means that the Intel MID
 platform cannot use a universal kernel build -- that is, one where
 every driver is included.

 Let's look v2 patch, it bypasses probe at ehci-pci.c, then why ehci_pci_init
 is still needed to call? The chipidea driver has already done the same
 thing in ehci_pci_init.

 You're right; ehci_pci_init isn't needed.  But there's no way to
 eliminate it and still have a universal kernel build.


Does the pci id can pass from platform code/table? How i386 platform chooses
which driver is suitable for device?  The ehci_pci_init may overwrite what
ci_hdrc_host_init does if it runs later?


-- 
BR,
Peter Chen
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-30 Thread Alan Stern
On Fri, 30 Jan 2015, Peter Chen wrote:

  The chipidea driver is structured in an odd way.  It looks like the PCI 
  device combines a host controller and a device controller (and maybe 
  even an OTG controller) into a single device.
  
 
 Any problems for that?

No, but it is odd and it requires some code to be duplicated.

  That's why the chipidea driver has to duplicate ehci-pci.c and register
  various platform devices.  If ehci-pci were allowed to bind to the
  device then the gadget controller (and OTG controller?) would be
  unusable, because ehci-pci doesn't know how to use them.
  
 
 If the chipidea has host function, it doesn't need any drivers at
 usb/host/ehci-*.c, the v1 patch for this thread, it just doesn't
 compile ehci-pci.c, and it should work too.

Yes, it will work.  But if you go back to the second message in this 
thread (http://marc.info/?l=linux-usbm=142229289226237w=2) you will 
see why that patch isn't a good idea: It means that the Intel MID 
platform cannot use a universal kernel build -- that is, one where 
every driver is included.

 Let's look v2 patch, it bypasses probe at ehci-pci.c, then why ehci_pci_init
 is still needed to call? The chipidea driver has already done the same
 thing in ehci_pci_init.

You're right; ehci_pci_init isn't needed.  But there's no way to 
eliminate it and still have a universal kernel build.

Alan Stern

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-29 Thread Alan Stern
On Thu, 29 Jan 2015, Peter Chen wrote:

   Then, it is strange. Do we need even two glue layer drivers for pci
   device? Look at usb/chipidea/ci_hdrc_pci.c it has pci_register_driver,
   and its host driver will call ehci_init_driver, it is definitely
   duplicated with usb/host/ehci-pci.c.
  
  ehci-pci.c is a driver for a USB Host Controller, whereas ci_hdrc_pci.c 
  is a driver for a USB Device Controller.
  
 
 In fact, it is not, ci_hdrc_pci is the pci glue layer for chipidea
 driver. I am just wonder andy's v2 change is suitable or not, the
 right way should not call ehci_pci_init at all.

The chipidea driver is structured in an odd way.  It looks like the PCI 
device combines a host controller and a device controller (and maybe 
even an OTG controller) into a single device.

That's why the chipidea driver has to duplicate ehci-pci.c and register
various platform devices.  If ehci-pci were allowed to bind to the
device then the gadget controller (and OTG controller?) would be
unusable, because ehci-pci doesn't know how to use them.

Alan Stern

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-29 Thread Peter Chen
On Thu, Jan 29, 2015 at 10:44:48AM -0500, Alan Stern wrote:
 On Thu, 29 Jan 2015, Peter Chen wrote:
 
Then, it is strange. Do we need even two glue layer drivers for pci
device? Look at usb/chipidea/ci_hdrc_pci.c it has pci_register_driver,
and its host driver will call ehci_init_driver, it is definitely
duplicated with usb/host/ehci-pci.c.
   
   ehci-pci.c is a driver for a USB Host Controller, whereas ci_hdrc_pci.c 
   is a driver for a USB Device Controller.
   
  
  In fact, it is not, ci_hdrc_pci is the pci glue layer for chipidea
  driver. I am just wonder andy's v2 change is suitable or not, the
  right way should not call ehci_pci_init at all.
 
 The chipidea driver is structured in an odd way.  It looks like the PCI 
 device combines a host controller and a device controller (and maybe 
 even an OTG controller) into a single device.
 

Any problems for that?

 That's why the chipidea driver has to duplicate ehci-pci.c and register
 various platform devices.  If ehci-pci were allowed to bind to the
 device then the gadget controller (and OTG controller?) would be
 unusable, because ehci-pci doesn't know how to use them.
 

If the chipidea has host function, it doesn't need any drivers at
usb/host/ehci-*.c, the v1 patch for this thread, it just doesn't
compile ehci-pci.c, and it should work too.

Let's look v2 patch, it bypasses probe at ehci-pci.c, then why ehci_pci_init
is still needed to call? The chipidea driver has already done the same
thing in ehci_pci_init.

-- 

Best Regards,
Peter Chen
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-28 Thread Alexander Shishkin
Peter Chen peter.c...@freescale.com writes:

 On Tue, Jan 27, 2015 at 11:21:56AM -0500, Alan Stern wrote:
 On Tue, 27 Jan 2015, Peter Chen wrote:
 
 Please fix this properly.

I don't know the right way to fix this. Alan, has you any suggestion?
   
   It depends.  How did the code before the adfa79d1c06a commit avoid this
   problem?  By simply not enabling CONFIG_USB_EHCI_HCD?
   
  
  Hi Andy, Would you define pci_id at ci_hdrc_pci.c (instead of ehci-pci.c)
  at your platform code/table to fix this problem?
  I am not familiar with pci, but it works at other platforms, like ARM.
 
 You can't remove the definition of pci_id in ehci-pci.c; if you did 
 then ehci-pci wouldn't bind to PCI controllers.
 
 It may turn out that the best way to fix this is to include a quirk in 
 ehci-pci.c to prevent it from binding to the Intel MID on-board EHCI 
 controller.
 
 Alan Stern
 

 Then, it is strange. Do we need even two glue layer drivers for pci
 device? Look at usb/chipidea/ci_hdrc_pci.c it has pci_register_driver,
 and its host driver will call ehci_init_driver, it is definitely
 duplicated with usb/host/ehci-pci.c.

No, what ci_hdrc_pci does is a superset of what ehci_pci does, being a
dual role controller and all that. One register window and one interrupt
is shared between a device controller, a host controller and an otg
controller.

Regards,
--
Alex
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-28 Thread Alan Stern
On Wed, 28 Jan 2015, Peter Chen wrote:

   Hi Andy, Would you define pci_id at ci_hdrc_pci.c (instead of ehci-pci.c)
   at your platform code/table to fix this problem?
   I am not familiar with pci, but it works at other platforms, like ARM.
  
  You can't remove the definition of pci_id in ehci-pci.c; if you did 
  then ehci-pci wouldn't bind to PCI controllers.
  
  It may turn out that the best way to fix this is to include a quirk in 
  ehci-pci.c to prevent it from binding to the Intel MID on-board EHCI 
  controller.
  
  Alan Stern
  
 
 Then, it is strange. Do we need even two glue layer drivers for pci
 device? Look at usb/chipidea/ci_hdrc_pci.c it has pci_register_driver,
 and its host driver will call ehci_init_driver, it is definitely
 duplicated with usb/host/ehci-pci.c.

ehci-pci.c is a driver for a USB Host Controller, whereas ci_hdrc_pci.c 
is a driver for a USB Device Controller.

Alan Stern

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-28 Thread Peter Chen
On Wed, Jan 28, 2015 at 10:42:53AM -0500, Alan Stern wrote:
 On Wed, 28 Jan 2015, Peter Chen wrote:
 
Hi Andy, Would you define pci_id at ci_hdrc_pci.c (instead of 
ehci-pci.c)
at your platform code/table to fix this problem?
I am not familiar with pci, but it works at other platforms, like ARM.
   
   You can't remove the definition of pci_id in ehci-pci.c; if you did 
   then ehci-pci wouldn't bind to PCI controllers.
   
   It may turn out that the best way to fix this is to include a quirk in 
   ehci-pci.c to prevent it from binding to the Intel MID on-board EHCI 
   controller.
   
   Alan Stern
   
  
  Then, it is strange. Do we need even two glue layer drivers for pci
  device? Look at usb/chipidea/ci_hdrc_pci.c it has pci_register_driver,
  and its host driver will call ehci_init_driver, it is definitely
  duplicated with usb/host/ehci-pci.c.
 
 ehci-pci.c is a driver for a USB Host Controller, whereas ci_hdrc_pci.c 
 is a driver for a USB Device Controller.
 

In fact, it is not, ci_hdrc_pci is the pci glue layer for chipidea
driver. I am just wonder andy's v2 change is suitable or not, the
right way should not call ehci_pci_init at all.

-- 

Best Regards,
Peter Chen
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-27 Thread Alan Stern
On Tue, 27 Jan 2015, Peter Chen wrote:

Please fix this properly.
   
   I don't know the right way to fix this. Alan, has you any suggestion?
  
  It depends.  How did the code before the adfa79d1c06a commit avoid this
  problem?  By simply not enabling CONFIG_USB_EHCI_HCD?
  
 
 Hi Andy, Would you define pci_id at ci_hdrc_pci.c (instead of ehci-pci.c)
 at your platform code/table to fix this problem?
 I am not familiar with pci, but it works at other platforms, like ARM.

You can't remove the definition of pci_id in ehci-pci.c; if you did 
then ehci-pci wouldn't bind to PCI controllers.

It may turn out that the best way to fix this is to include a quirk in 
ehci-pci.c to prevent it from binding to the Intel MID on-board EHCI 
controller.

Alan Stern

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-27 Thread Alan Stern
On Tue, 27 Jan 2015, Andy Shevchenko wrote:

 On Tue, 2015-01-27 at 11:21 -0500, Alan Stern wrote:
  On Tue, 27 Jan 2015, Peter Chen wrote:
  
  Please fix this properly.
 
 I don't know the right way to fix this. Alan, has you any suggestion?

It depends.  How did the code before the adfa79d1c06a commit avoid this
problem?  By simply not enabling CONFIG_USB_EHCI_HCD?

   
   Hi Andy, Would you define pci_id at ci_hdrc_pci.c (instead of ehci-pci.c)
   at your platform code/table to fix this problem?
   I am not familiar with pci, but it works at other platforms, like ARM.
  
  You can't remove the definition of pci_id in ehci-pci.c; if you did 
  then ehci-pci wouldn't bind to PCI controllers.
  
  It may turn out that the best way to fix this is to include a quirk in 
  ehci-pci.c to prevent it from binding to the Intel MID on-board EHCI 
  controller.
 
 That was one of my thoughts. I would do that way.

Then go ahead and write a patch to do this.

 Regarding to the initial issue, it was along time ago, and I totally
 forgot what we do to make it working. Thus, it possible that the split
 does nothing with the problem.

If you don't know that the adfa79d1c06a commit caused the problem then 
your Changelog shouldn't claim that it did.

Alan Stern

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-27 Thread Peter Chen
On Tue, Jan 27, 2015 at 11:21:56AM -0500, Alan Stern wrote:
 On Tue, 27 Jan 2015, Peter Chen wrote:
 
 Please fix this properly.

I don't know the right way to fix this. Alan, has you any suggestion?
   
   It depends.  How did the code before the adfa79d1c06a commit avoid this
   problem?  By simply not enabling CONFIG_USB_EHCI_HCD?
   
  
  Hi Andy, Would you define pci_id at ci_hdrc_pci.c (instead of ehci-pci.c)
  at your platform code/table to fix this problem?
  I am not familiar with pci, but it works at other platforms, like ARM.
 
 You can't remove the definition of pci_id in ehci-pci.c; if you did 
 then ehci-pci wouldn't bind to PCI controllers.
 
 It may turn out that the best way to fix this is to include a quirk in 
 ehci-pci.c to prevent it from binding to the Intel MID on-board EHCI 
 controller.
 
 Alan Stern
 

Then, it is strange. Do we need even two glue layer drivers for pci
device? Look at usb/chipidea/ci_hdrc_pci.c it has pci_register_driver,
and its host driver will call ehci_init_driver, it is definitely
duplicated with usb/host/ehci-pci.c.

-- 

Best Regards,
Peter Chen
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-26 Thread Greg KH
On Mon, Jan 26, 2015 at 07:10:42PM +0200, Andy Shevchenko wrote:
 On some Intel MID platforms the ChipIdea USB controller is used. The EHCI PCI
 is in conflict with the proper driver. The patch makes a quick fix to get 
 Intel
 Medfield platforms work back.
 
 One would make a proper patch to address the issue.

Who is one?  You?  Someone else?

 Fixes: adfa79d1c06a (USB: EHCI: make ehci-pci a separate driver)
 Signed-off-by: Andy Shevchenko andriy.shevche...@linux.intel.com
 ---
  drivers/usb/host/Kconfig | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
 index fafc628..32d735a 100644
 --- a/drivers/usb/host/Kconfig
 +++ b/drivers/usb/host/Kconfig
 @@ -112,7 +112,7 @@ if USB_EHCI_HCD
  
  config USB_EHCI_PCI
   tristate
 - depends on PCI
 + depends on PCI  !X86_INTEL_MID

You just broke making a universal kernel build for your platform
possible, making distro developers very upset with you.

Please fix this properly.

greg k-h
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-26 Thread Andy Shevchenko
On Mon, 2015-01-26 at 09:21 -0800, Greg KH wrote:
 On Mon, Jan 26, 2015 at 07:10:42PM +0200, Andy Shevchenko wrote:
  On some Intel MID platforms the ChipIdea USB controller is used. The EHCI 
  PCI
  is in conflict with the proper driver. The patch makes a quick fix to get 
  Intel
  Medfield platforms work back.
  
  One would make a proper patch to address the issue.
 
 Who is one?  You?  Someone else?

Not me.

 
  Fixes: adfa79d1c06a (USB: EHCI: make ehci-pci a separate driver)
  Signed-off-by: Andy Shevchenko andriy.shevche...@linux.intel.com
  ---
   drivers/usb/host/Kconfig | 2 +-
   1 file changed, 1 insertion(+), 1 deletion(-)
  
  diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
  index fafc628..32d735a 100644
  --- a/drivers/usb/host/Kconfig
  +++ b/drivers/usb/host/Kconfig
  @@ -112,7 +112,7 @@ if USB_EHCI_HCD
   
   config USB_EHCI_PCI
  tristate
  -   depends on PCI
  +   depends on PCI  !X86_INTEL_MID
 
 You just broke making a universal kernel build for your platform
 possible, making distro developers very upset with you.

I agree, though current kernel build doesn't work on the Intel MID
anyway (I mean USB support). The mentioned commit broke it and seems
no-one cared until now.

 Please fix this properly.

I don't know the right way to fix this. Alan, has you any suggestion?

-- 
Andy Shevchenko andriy.shevche...@intel.com
Intel Finland Oy

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-26 Thread Alan Stern
On Mon, 26 Jan 2015, Andy Shevchenko wrote:

 On Mon, 2015-01-26 at 09:21 -0800, Greg KH wrote:
  On Mon, Jan 26, 2015 at 07:10:42PM +0200, Andy Shevchenko wrote:
   On some Intel MID platforms the ChipIdea USB controller is used. The EHCI 
   PCI
   is in conflict with the proper driver. The patch makes a quick fix to get 
   Intel
   Medfield platforms work back.
   
   One would make a proper patch to address the issue.
  
  Who is one?  You?  Someone else?
 
 Not me.
 
  
   Fixes: adfa79d1c06a (USB: EHCI: make ehci-pci a separate driver)
   Signed-off-by: Andy Shevchenko andriy.shevche...@linux.intel.com
   ---
drivers/usb/host/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
   
   diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
   index fafc628..32d735a 100644
   --- a/drivers/usb/host/Kconfig
   +++ b/drivers/usb/host/Kconfig
   @@ -112,7 +112,7 @@ if USB_EHCI_HCD

config USB_EHCI_PCI
 tristate
   - depends on PCI
   + depends on PCI  !X86_INTEL_MID
  
  You just broke making a universal kernel build for your platform
  possible, making distro developers very upset with you.
 
 I agree, though current kernel build doesn't work on the Intel MID
 anyway (I mean USB support). The mentioned commit broke it and seems
 no-one cared until now.
 
  Please fix this properly.
 
 I don't know the right way to fix this. Alan, has you any suggestion?

It depends.  How did the code before the adfa79d1c06a commit avoid this
problem?  By simply not enabling CONFIG_USB_EHCI_HCD?

Alan Stern

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v1] ehci-pci: disable for Intel MID platforms

2015-01-26 Thread Peter Chen
On Mon, Jan 26, 2015 at 01:23:47PM -0500, Alan Stern wrote:
 On Mon, 26 Jan 2015, Andy Shevchenko wrote:
 
  On Mon, 2015-01-26 at 09:21 -0800, Greg KH wrote:
   On Mon, Jan 26, 2015 at 07:10:42PM +0200, Andy Shevchenko wrote:
On some Intel MID platforms the ChipIdea USB controller is used. The 
EHCI PCI
is in conflict with the proper driver. The patch makes a quick fix to 
get Intel
Medfield platforms work back.

One would make a proper patch to address the issue.
   
   Who is one?  You?  Someone else?
  
  Not me.
  
   
Fixes: adfa79d1c06a (USB: EHCI: make ehci-pci a separate driver)
Signed-off-by: Andy Shevchenko andriy.shevche...@linux.intel.com
---
 drivers/usb/host/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index fafc628..32d735a 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -112,7 +112,7 @@ if USB_EHCI_HCD
 
 config USB_EHCI_PCI
tristate
-   depends on PCI
+   depends on PCI  !X86_INTEL_MID
   
   You just broke making a universal kernel build for your platform
   possible, making distro developers very upset with you.
  
  I agree, though current kernel build doesn't work on the Intel MID
  anyway (I mean USB support). The mentioned commit broke it and seems
  no-one cared until now.
  
   Please fix this properly.
  
  I don't know the right way to fix this. Alan, has you any suggestion?
 
 It depends.  How did the code before the adfa79d1c06a commit avoid this
 problem?  By simply not enabling CONFIG_USB_EHCI_HCD?
 

Hi Andy, Would you define pci_id at ci_hdrc_pci.c (instead of ehci-pci.c)
at your platform code/table to fix this problem?
I am not familiar with pci, but it works at other platforms, like ARM.

-- 

Best Regards,
Peter Chen
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html