Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1364584 > unrolled thread

Re: [RFC PATCH 0/4] Implement USB device/host switch for Vybrid

Started byPeter Chen <hzpeterchen@gmail.com>
First post2016-03-25 08:50 +0100
Last post2016-03-30 10:30 +0200
Articles 5 — 4 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [RFC PATCH 0/4] Implement USB device/host switch for Vybrid Peter Chen <hzpeterchen@gmail.com> - 2016-03-25 08:50 +0100
    Re: [RFC PATCH 0/4] Implement USB device/host switch for Vybrid Stefan Agner <stefan@agner.ch> - 2016-03-28 17:40 +0200
      RE: [RFC PATCH 0/4] Implement USB device/host switch for Vybrid Peter Chen <peter.chen@nxp.com> - 2016-03-29 02:30 +0200
        Re: [RFC PATCH 0/4] Implement USB device/host switch for Vybrid maitysanchayan@gmail.com - 2016-03-30 08:40 +0200
          RE: [RFC PATCH 0/4] Implement USB device/host switch for Vybrid Peter Chen <peter.chen@nxp.com> - 2016-03-30 10:30 +0200

#1364584 — Re: [RFC PATCH 0/4] Implement USB device/host switch for Vybrid

FromPeter Chen <hzpeterchen@gmail.com>
Date2016-03-25 08:50 +0100
SubjectRe: [RFC PATCH 0/4] Implement USB device/host switch for Vybrid
Message-ID<rguFj-6W6-1@gated-at.bofh.it>
On Tue, Mar 15, 2016 at 02:08:26PM +0530, Sanchayan Maity wrote:
> Hello Peter,
> 
> The existing usage of extcon in Chipidea driver relies on OTG
> registers. In case of SoC with dual role device but not a true
> OTG controller, this does not work. Such SoC's should specify
> the existing CI_HDRC_DUAL_ROLE_NOT_OTG flag and do the role
> switch without checking any of the OTG registers in my opinion.
> This is the case for Vybrid which uses a Chipidea IP but does
> not have a true 5 pin OTG implemented.

Sorry to reply you late due to my new born baby.

Are you sure Vybrid is NOT OTG core? Afaik, it is uses the same
IP base with other Freescale SoCs, just the IP core is 2.40a.
When working at device mode, can you read vbus status through
OTGSC? And if there is an ID pin (input pin) for Vybrid? I mean
SoC, not the board.

-- 
Best Regards,
Peter Chen

[toc] | [next] | [standalone]


#1365548

FromStefan Agner <stefan@agner.ch>
Date2016-03-28 17:40 +0200
Message-ID<rhHqO-yH-7@gated-at.bofh.it>
In reply to#1364584
On 2016-03-25 00:40, Peter Chen wrote:
> On Tue, Mar 15, 2016 at 02:08:26PM +0530, Sanchayan Maity wrote:
>> Hello Peter,
>>
>> The existing usage of extcon in Chipidea driver relies on OTG
>> registers. In case of SoC with dual role device but not a true
>> OTG controller, this does not work. Such SoC's should specify
>> the existing CI_HDRC_DUAL_ROLE_NOT_OTG flag and do the role
>> switch without checking any of the OTG registers in my opinion.
>> This is the case for Vybrid which uses a Chipidea IP but does
>> not have a true 5 pin OTG implemented.
> 
> Sorry to reply you late due to my new born baby.
> 
> Are you sure Vybrid is NOT OTG core? Afaik, it is uses the same
> IP base with other Freescale SoCs, just the IP core is 2.40a.
> When working at device mode, can you read vbus status through
> OTGSC? And if there is an ID pin (input pin) for Vybrid? I mean
> SoC, not the board.

I think the IP is actually OTG capable, the registers are there, but the
signals seem not to be available on the SoC package. That is also what
the RM says...

Quotes from the RM:

"OTG controller should be treated as
Dual role controller that allows the
controller to act as either a Host or a
device with no support for HNP/SRP."

And later, in Chapter 11.1:

"The USB is not a true OTG. It can be configured by software to function
either as
peripheral or as host. The ID pin, which is unique for OTG operation, is
not present in
this implementation. There are no five pin interface. The user will get
four pin host/
device interface."

--
Stefan

[toc] | [prev] | [next] | [standalone]


#1365734

FromPeter Chen <peter.chen@nxp.com>
Date2016-03-29 02:30 +0200
Message-ID<rhPHJ-6uL-21@gated-at.bofh.it>
In reply to#1365548
 
> 
> On 2016-03-25 00:40, Peter Chen wrote:
> > On Tue, Mar 15, 2016 at 02:08:26PM +0530, Sanchayan Maity wrote:
> >> Hello Peter,
> >>
> >> The existing usage of extcon in Chipidea driver relies on OTG
> >> registers. In case of SoC with dual role device but not a true OTG
> >> controller, this does not work. Such SoC's should specify the
> >> existing CI_HDRC_DUAL_ROLE_NOT_OTG flag and do the role switch
> >> without checking any of the OTG registers in my opinion.
> >> This is the case for Vybrid which uses a Chipidea IP but does not
> >> have a true 5 pin OTG implemented.
> >
> > Sorry to reply you late due to my new born baby.
> >
> > Are you sure Vybrid is NOT OTG core? Afaik, it is uses the same IP
> > base with other Freescale SoCs, just the IP core is 2.40a.
> > When working at device mode, can you read vbus status through OTGSC?
> > And if there is an ID pin (input pin) for Vybrid? I mean SoC, not the
> > board.
> 
> I think the IP is actually OTG capable, the registers are there, but the signals
> seem not to be available on the SoC package. That is also what the RM says...
> 
> Quotes from the RM:
> 
> "OTG controller should be treated as
> Dual role controller that allows the
> controller to act as either a Host or a
> device with no support for HNP/SRP."
> 
> And later, in Chapter 11.1:
> 
> "The USB is not a true OTG. It can be configured by software to function either
> as peripheral or as host. The ID pin, which is unique for OTG operation, is not
> present in this implementation. There are no five pin interface. The user will
> get four pin host/ device interface."
> 

Get it, thanks. I am doing a patch for covering this case and vbus always-on case.

Peter

[toc] | [prev] | [next] | [standalone]


#1366908

Frommaitysanchayan@gmail.com
Date2016-03-30 08:40 +0200
Message-ID<rihXk-1pR-7@gated-at.bofh.it>
In reply to#1365734
Hello Peter,

On 16-03-29 00:24:46, Peter Chen wrote:
>  
> > 
> > On 2016-03-25 00:40, Peter Chen wrote:
> > > On Tue, Mar 15, 2016 at 02:08:26PM +0530, Sanchayan Maity wrote:
> > >> Hello Peter,
> > >>
> > >> The existing usage of extcon in Chipidea driver relies on OTG
> > >> registers. In case of SoC with dual role device but not a true OTG
> > >> controller, this does not work. Such SoC's should specify the
> > >> existing CI_HDRC_DUAL_ROLE_NOT_OTG flag and do the role switch
> > >> without checking any of the OTG registers in my opinion.
> > >> This is the case for Vybrid which uses a Chipidea IP but does not
> > >> have a true 5 pin OTG implemented.
> > >
> > > Sorry to reply you late due to my new born baby.
> > >
> > > Are you sure Vybrid is NOT OTG core? Afaik, it is uses the same IP
> > > base with other Freescale SoCs, just the IP core is 2.40a.
> > > When working at device mode, can you read vbus status through OTGSC?
> > > And if there is an ID pin (input pin) for Vybrid? I mean SoC, not the
> > > board.
> > 
> > I think the IP is actually OTG capable, the registers are there, but the signals
> > seem not to be available on the SoC package. That is also what the RM says...
> > 
> > Quotes from the RM:
> > 
> > "OTG controller should be treated as
> > Dual role controller that allows the
> > controller to act as either a Host or a
> > device with no support for HNP/SRP."
> > 
> > And later, in Chapter 11.1:
> > 
> > "The USB is not a true OTG. It can be configured by software to function either
> > as peripheral or as host. The ID pin, which is unique for OTG operation, is not
> > present in this implementation. There are no five pin interface. The user will
> > get four pin host/ device interface."
> > 
> 
> Get it, thanks. I am doing a patch for covering this case and vbus always-on case.

If I may ask at this point, how would your implementation be covering this case
for Vybrid?

- Sanchayan.

[toc] | [prev] | [next] | [standalone]


#1366998

FromPeter Chen <peter.chen@nxp.com>
Date2016-03-30 10:30 +0200
Message-ID<rijFM-2CP-9@gated-at.bofh.it>
In reply to#1366908
 
> 
> On 16-03-29 00:24:46, Peter Chen wrote:
> >
> > >
> > > On 2016-03-25 00:40, Peter Chen wrote:
> > > > On Tue, Mar 15, 2016 at 02:08:26PM +0530, Sanchayan Maity wrote:
> > > >> Hello Peter,
> > > >>
> > > >> The existing usage of extcon in Chipidea driver relies on OTG
> > > >> registers. In case of SoC with dual role device but not a true
> > > >> OTG controller, this does not work. Such SoC's should specify the
> > > >> existing CI_HDRC_DUAL_ROLE_NOT_OTG flag and do the role switch
> > > >> without checking any of the OTG registers in my opinion.
> > > >> This is the case for Vybrid which uses a Chipidea IP but does not
> > > >> have a true 5 pin OTG implemented.
> > > >
> > > > Sorry to reply you late due to my new born baby.
> > > >
> > > > Are you sure Vybrid is NOT OTG core? Afaik, it is uses the same IP
> > > > base with other Freescale SoCs, just the IP core is 2.40a.
> > > > When working at device mode, can you read vbus status through OTGSC?
> > > > And if there is an ID pin (input pin) for Vybrid? I mean SoC, not
> > > > the board.
> > >
> > > I think the IP is actually OTG capable, the registers are there, but
> > > the signals seem not to be available on the SoC package. That is also what
> the RM says...
> > >
> > > Quotes from the RM:
> > >
> > > "OTG controller should be treated as Dual role controller that
> > > allows the controller to act as either a Host or a device with no
> > > support for HNP/SRP."
> > >
> > > And later, in Chapter 11.1:
> > >
> > > "The USB is not a true OTG. It can be configured by software to
> > > function either as peripheral or as host. The ID pin, which is
> > > unique for OTG operation, is not present in this implementation.
> > > There are no five pin interface. The user will get four pin host/ device
> interface."
> > >
> >
> > Get it, thanks. I am doing a patch for covering this case and vbus always-on
> case.
> 
> If I may ask at this point, how would your implementation be covering this case
> for Vybrid?
> 

Yes, if the vbus and id status are from the extcon, it will not read register OTGSC.

Peter

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web