Re: [PATCH v7 10/14] usb: otg: add hcd companion support
From: Roger Quadros
Date: Wed May 04 2016 - 09:47:42 EST
On 04/05/16 16:17, Rob Herring wrote:
> On Mon, May 02, 2016 at 03:18:53PM +0300, Roger Quadros wrote:
>> From: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx>
>>
>> Since some host controller (e.g. EHCI) needs a companion host controller
>> (e.g. OHCI), this patch adds such a configuration to use it in the OTG
>> core.
>>
>> Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx>
>> Signed-off-by: Roger Quadros <rogerq@xxxxxx>
>> ---
>> Documentation/devicetree/bindings/usb/generic.txt | 3 +++
>> drivers/usb/common/usb-otg.c | 32 ++++++++++++++++-------
>> include/linux/usb/otg.h | 7 ++++-
>> 3 files changed, 32 insertions(+), 10 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/usb/generic.txt b/Documentation/devicetree/bindings/usb/generic.txt
>> index f6866c1..1db1c33 100644
>> --- a/Documentation/devicetree/bindings/usb/generic.txt
>> +++ b/Documentation/devicetree/bindings/usb/generic.txt
>> @@ -27,6 +27,9 @@ Optional properties:
>> - otg-controller: phandle to otg controller. Host or gadget controllers can
>> contain this property to link it to a particular OTG
>> controller.
>> + - hcd-needs-companion: must be present if otg controller is dealing with
>> + EHCI host controller that needs a companion OHCI host
>> + controller.
>
> Don't you need to have a link to the companion controller node?
primary and companion controllers are totally independent of each other
e.g. EHCI and OHCI. They are enabled by separate Kconfig options and
the system can operate with either or both of them enabled.
At the OTG layer we don't have information as to whether we should be waiting
for both of them to register or not and hence need this "hcd-needs-companion" flag.
>
>>
>> This is an attribute to a USB controller such as:
>>
--
cheers,
-roger