All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
From: chunfeng yun <chunfeng.yun@mediatek.com>
To: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Mathias Nyman <mathias.nyman@intel.com>,
	Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	"Matthias Brugger" <matthias.bgg@gmail.com>,
	Felipe Balbi <balbi@ti.com>, <devicetree@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	Roger Quadros <rogerq@ti.com>, <linux-usb@vger.kernel.org>,
	<linux-mediatek@lists.infradead.org>
Subject: Re: [PATCH v2 1/5] dt-bindings: Add usb3.0 phy binding for MT65xx SoCs
Date: Wed, 15 Jul 2015 20:33:22 +0800	[thread overview]
Message-ID: <1436963602.11289.17.camel@mhfsdcap03> (raw)
In-Reply-To: <20150714074555.GR18700@pengutronix.de>

On Tue, 2015-07-14 at 09:45 +0200, Sascha Hauer wrote:
> On Tue, Jul 14, 2015 at 02:19:51PM +0800, chunfeng yun wrote:
> > hi,
> > On Fri, 2015-07-10 at 07:10 +0200, Sascha Hauer wrote:
> > > On Wed, Jul 08, 2015 at 05:41:03PM +0800, Chunfeng Yun wrote:
> > > > add a DT binding documentation of usb3.0 phy for MT65xx
> > > > SoCs from Mediatek.
> > > > 
> > > > Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
> > > > ---
> > > >  .../devicetree/bindings/usb/mt65xx-u3phy.txt       | 34 ++++++++++++++++++++++
> > > >  1 file changed, 34 insertions(+)
> > > >  create mode 100644 Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt
> > > > 
> > > > diff --git a/Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt b/Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt
> > > > new file mode 100644
> > > > index 0000000..056b2aa
> > > > --- /dev/null
> > > > +++ b/Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt
> > > > @@ -0,0 +1,34 @@
> > > > +MT65xx U3PHY
> > > > +
> > > > +The device node for Mediatek SOC usb3.0 phy
> > > > +
> > > > +Required properties:
> > > > + - compatible : Should be "mediatek,mt8173-u3phy"
> > > > + - reg        : Offset and length of registers, the first is for mac domain,
> > > > +	another for phy domain
> > > > + - power-domains: to enable usb's mtcmos
> > > > + - usb-wakeup-ctrl : to access usb wakeup control register
> > > > + - wakeup-src : 1: ip sleep wakeup mode; 2: line state wakeup mode; others
> > > > +	means don't enable wakeup source of usb
> > > > + - u2port-num : number of usb2.0 ports to support which should be 1 or 2
> > > > + - clocks     : must support all clocks that phy need
> > > > + - clock-names: should be "wakeup_deb_p0", "wakeup_deb_p1" for wakeup
> > > > +	debounce control clocks, and "u3phya_ref" for u3phya reference clock.
> > > > +
> > > > +Example:
> > > > +
> > > > +u3phy: usb-phy@11271000 {
> > > > +	compatible = "mediatek,mt8173-u3phy";
> > > > +	reg = <0 0x11271000 0 0x3000>,
> > > > +	      <0 0x11280000 0 0x20000>;
> > > 
> > > 0x11271000 is the register space the xhci controller takes. You should
> > > not expose the same register space to two different drivers.
> > > 
> > 
> > usb: usb30@11270000 {
> >    compatible = "mediatek,mt8173-xhci";
> >    reg = <0 0x11270000 0 0x1000>;
> > 
> > the size of xhci register space is 0x1000, and the range is
> > [0x11270000, 0x11271000 - 1], so the address of 0x11271000 is not
> > included.
> 
> Indeed, you are right. Nevertheless my datasheet lists these resources:
> 
> 0x11270000 - 0x1127ffff: SSUSB CSR
> 0x11280000 - 0x1128ffff: SSUSB SIF
> 0x11290000 - 0x1129ffff: SSUSB
> 
> It seems that with the current binding you are not modelling the
> hardware but something that reflects your current implementation. This
> is not a good sign. Normally I would expect device nodes that match the
> above resources, but your USB phy spans most of the SSUSB CSR register
> space and both the SSUSB SIF and SSUSB regster space. I think it would
> be good if you could give an overview over the USB hardware and explain
> why you have to violate the above resources.
> 
> Also something to consider: Is your binding suitable for adding OTG
> support later? You don't have to add OTG support to the Kernel now,
> but your binding should be suitable to add it later.
> 
> Sascha
> 

I agree with you, but timing parameter settings of super speed port are
put in [0x11272400 - 0x11272800], which is not included by xhci register
space. SSUSB SIF includes some control and status registers of each
ports and also OTG etc. It is better to put them into the node of gadget
device node which is not supported now, so put them into phy device
node.

Do you have any good idea to deal with the special case?



WARNING: multiple messages have this Message-ID (diff)
From: chunfeng yun <chunfeng.yun-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org>
To: Sascha Hauer <s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
Cc: Mathias Nyman
	<mathias.nyman-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	Matthias Brugger
	<matthias.bgg-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org>,
	devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	Roger Quadros <rogerq-l0cyMroinI0@public.gmane.org>,
	linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-mediatek-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Subject: Re: [PATCH v2 1/5] dt-bindings: Add usb3.0 phy binding for MT65xx SoCs
Date: Wed, 15 Jul 2015 20:33:22 +0800	[thread overview]
Message-ID: <1436963602.11289.17.camel@mhfsdcap03> (raw)
In-Reply-To: <20150714074555.GR18700-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>

On Tue, 2015-07-14 at 09:45 +0200, Sascha Hauer wrote:
> On Tue, Jul 14, 2015 at 02:19:51PM +0800, chunfeng yun wrote:
> > hi,
> > On Fri, 2015-07-10 at 07:10 +0200, Sascha Hauer wrote:
> > > On Wed, Jul 08, 2015 at 05:41:03PM +0800, Chunfeng Yun wrote:
> > > > add a DT binding documentation of usb3.0 phy for MT65xx
> > > > SoCs from Mediatek.
> > > > 
> > > > Signed-off-by: Chunfeng Yun <chunfeng.yun-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org>
> > > > ---
> > > >  .../devicetree/bindings/usb/mt65xx-u3phy.txt       | 34 ++++++++++++++++++++++
> > > >  1 file changed, 34 insertions(+)
> > > >  create mode 100644 Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt
> > > > 
> > > > diff --git a/Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt b/Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt
> > > > new file mode 100644
> > > > index 0000000..056b2aa
> > > > --- /dev/null
> > > > +++ b/Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt
> > > > @@ -0,0 +1,34 @@
> > > > +MT65xx U3PHY
> > > > +
> > > > +The device node for Mediatek SOC usb3.0 phy
> > > > +
> > > > +Required properties:
> > > > + - compatible : Should be "mediatek,mt8173-u3phy"
> > > > + - reg        : Offset and length of registers, the first is for mac domain,
> > > > +	another for phy domain
> > > > + - power-domains: to enable usb's mtcmos
> > > > + - usb-wakeup-ctrl : to access usb wakeup control register
> > > > + - wakeup-src : 1: ip sleep wakeup mode; 2: line state wakeup mode; others
> > > > +	means don't enable wakeup source of usb
> > > > + - u2port-num : number of usb2.0 ports to support which should be 1 or 2
> > > > + - clocks     : must support all clocks that phy need
> > > > + - clock-names: should be "wakeup_deb_p0", "wakeup_deb_p1" for wakeup
> > > > +	debounce control clocks, and "u3phya_ref" for u3phya reference clock.
> > > > +
> > > > +Example:
> > > > +
> > > > +u3phy: usb-phy@11271000 {
> > > > +	compatible = "mediatek,mt8173-u3phy";
> > > > +	reg = <0 0x11271000 0 0x3000>,
> > > > +	      <0 0x11280000 0 0x20000>;
> > > 
> > > 0x11271000 is the register space the xhci controller takes. You should
> > > not expose the same register space to two different drivers.
> > > 
> > 
> > usb: usb30@11270000 {
> >    compatible = "mediatek,mt8173-xhci";
> >    reg = <0 0x11270000 0 0x1000>;
> > 
> > the size of xhci register space is 0x1000, and the range is
> > [0x11270000, 0x11271000 - 1], so the address of 0x11271000 is not
> > included.
> 
> Indeed, you are right. Nevertheless my datasheet lists these resources:
> 
> 0x11270000 - 0x1127ffff: SSUSB CSR
> 0x11280000 - 0x1128ffff: SSUSB SIF
> 0x11290000 - 0x1129ffff: SSUSB
> 
> It seems that with the current binding you are not modelling the
> hardware but something that reflects your current implementation. This
> is not a good sign. Normally I would expect device nodes that match the
> above resources, but your USB phy spans most of the SSUSB CSR register
> space and both the SSUSB SIF and SSUSB regster space. I think it would
> be good if you could give an overview over the USB hardware and explain
> why you have to violate the above resources.
> 
> Also something to consider: Is your binding suitable for adding OTG
> support later? You don't have to add OTG support to the Kernel now,
> but your binding should be suitable to add it later.
> 
> Sascha
> 

I agree with you, but timing parameter settings of super speed port are
put in [0x11272400 - 0x11272800], which is not included by xhci register
space. SSUSB SIF includes some control and status registers of each
ports and also OTG etc. It is better to put them into the node of gadget
device node which is not supported now, so put them into phy device
node.

Do you have any good idea to deal with the special case?


--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: chunfeng.yun@mediatek.com (chunfeng yun)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 1/5] dt-bindings: Add usb3.0 phy binding for MT65xx SoCs
Date: Wed, 15 Jul 2015 20:33:22 +0800	[thread overview]
Message-ID: <1436963602.11289.17.camel@mhfsdcap03> (raw)
In-Reply-To: <20150714074555.GR18700@pengutronix.de>

On Tue, 2015-07-14 at 09:45 +0200, Sascha Hauer wrote:
> On Tue, Jul 14, 2015 at 02:19:51PM +0800, chunfeng yun wrote:
> > hi,
> > On Fri, 2015-07-10 at 07:10 +0200, Sascha Hauer wrote:
> > > On Wed, Jul 08, 2015 at 05:41:03PM +0800, Chunfeng Yun wrote:
> > > > add a DT binding documentation of usb3.0 phy for MT65xx
> > > > SoCs from Mediatek.
> > > > 
> > > > Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
> > > > ---
> > > >  .../devicetree/bindings/usb/mt65xx-u3phy.txt       | 34 ++++++++++++++++++++++
> > > >  1 file changed, 34 insertions(+)
> > > >  create mode 100644 Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt
> > > > 
> > > > diff --git a/Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt b/Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt
> > > > new file mode 100644
> > > > index 0000000..056b2aa
> > > > --- /dev/null
> > > > +++ b/Documentation/devicetree/bindings/usb/mt65xx-u3phy.txt
> > > > @@ -0,0 +1,34 @@
> > > > +MT65xx U3PHY
> > > > +
> > > > +The device node for Mediatek SOC usb3.0 phy
> > > > +
> > > > +Required properties:
> > > > + - compatible : Should be "mediatek,mt8173-u3phy"
> > > > + - reg        : Offset and length of registers, the first is for mac domain,
> > > > +	another for phy domain
> > > > + - power-domains: to enable usb's mtcmos
> > > > + - usb-wakeup-ctrl : to access usb wakeup control register
> > > > + - wakeup-src : 1: ip sleep wakeup mode; 2: line state wakeup mode; others
> > > > +	means don't enable wakeup source of usb
> > > > + - u2port-num : number of usb2.0 ports to support which should be 1 or 2
> > > > + - clocks     : must support all clocks that phy need
> > > > + - clock-names: should be "wakeup_deb_p0", "wakeup_deb_p1" for wakeup
> > > > +	debounce control clocks, and "u3phya_ref" for u3phya reference clock.
> > > > +
> > > > +Example:
> > > > +
> > > > +u3phy: usb-phy at 11271000 {
> > > > +	compatible = "mediatek,mt8173-u3phy";
> > > > +	reg = <0 0x11271000 0 0x3000>,
> > > > +	      <0 0x11280000 0 0x20000>;
> > > 
> > > 0x11271000 is the register space the xhci controller takes. You should
> > > not expose the same register space to two different drivers.
> > > 
> > 
> > usb: usb30 at 11270000 {
> >    compatible = "mediatek,mt8173-xhci";
> >    reg = <0 0x11270000 0 0x1000>;
> > 
> > the size of xhci register space is 0x1000, and the range is
> > [0x11270000, 0x11271000 - 1], so the address of 0x11271000 is not
> > included.
> 
> Indeed, you are right. Nevertheless my datasheet lists these resources:
> 
> 0x11270000 - 0x1127ffff: SSUSB CSR
> 0x11280000 - 0x1128ffff: SSUSB SIF
> 0x11290000 - 0x1129ffff: SSUSB
> 
> It seems that with the current binding you are not modelling the
> hardware but something that reflects your current implementation. This
> is not a good sign. Normally I would expect device nodes that match the
> above resources, but your USB phy spans most of the SSUSB CSR register
> space and both the SSUSB SIF and SSUSB regster space. I think it would
> be good if you could give an overview over the USB hardware and explain
> why you have to violate the above resources.
> 
> Also something to consider: Is your binding suitable for adding OTG
> support later? You don't have to add OTG support to the Kernel now,
> but your binding should be suitable to add it later.
> 
> Sascha
> 

I agree with you, but timing parameter settings of super speed port are
put in [0x11272400 - 0x11272800], which is not included by xhci register
space. SSUSB SIF includes some control and status registers of each
ports and also OTG etc. It is better to put them into the node of gadget
device node which is not supported now, so put them into phy device
node.

Do you have any good idea to deal with the special case?

  reply	other threads:[~2015-07-15 12:33 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-08  9:41 [PATCH v2 0/5] Mediatek xHCI support Chunfeng Yun
2015-07-08  9:41 ` Chunfeng Yun
2015-07-08  9:41 ` Chunfeng Yun
2015-07-08  9:41 ` [PATCH v2 1/5] dt-bindings: Add usb3.0 phy binding for MT65xx SoCs Chunfeng Yun
2015-07-08  9:41   ` Chunfeng Yun
2015-07-08  9:41   ` Chunfeng Yun
2015-07-10  5:10   ` Sascha Hauer
2015-07-10  5:10     ` Sascha Hauer
2015-07-10  5:10     ` Sascha Hauer
2015-07-14  6:19     ` chunfeng yun
2015-07-14  6:19       ` chunfeng yun
2015-07-14  6:19       ` chunfeng yun
2015-07-14  7:45       ` Sascha Hauer
2015-07-14  7:45         ` Sascha Hauer
2015-07-14  7:45         ` Sascha Hauer
2015-07-15 12:33         ` chunfeng yun [this message]
2015-07-15 12:33           ` chunfeng yun
2015-07-15 12:33           ` chunfeng yun
2015-07-08  9:41 ` [PATCH v2 2/5] dt-bindings: Add a binding for Mediatek xHCI host controller Chunfeng Yun
2015-07-08  9:41   ` Chunfeng Yun
2015-07-08  9:41   ` Chunfeng Yun
2015-07-10  8:31   ` Roger Quadros
2015-07-10  8:31     ` Roger Quadros
2015-07-10  8:31     ` Roger Quadros
2015-07-14  2:36     ` chunfeng yun
2015-07-14  2:36       ` chunfeng yun
2015-07-14  2:36       ` chunfeng yun
2015-07-14  2:50     ` chunfeng yun
2015-07-14  2:50       ` chunfeng yun
2015-07-14  2:50       ` chunfeng yun
2015-07-20 14:24     ` chunfeng yun
2015-07-20 14:24       ` chunfeng yun
2015-07-20 14:24       ` chunfeng yun
2015-07-08  9:41 ` [PATCH v2 3/5] usb: phy: add usb3.0 phy driver for mt65xx SoCs Chunfeng Yun
2015-07-08  9:41   ` Chunfeng Yun
2015-07-08  9:41   ` Chunfeng Yun
2015-07-10  6:42   ` Sascha Hauer
2015-07-10  6:42     ` Sascha Hauer
2015-07-10  6:42     ` Sascha Hauer
2015-07-20 15:41     ` chunfeng yun
2015-07-20 15:41       ` chunfeng yun
2015-07-20 15:41       ` chunfeng yun
2015-07-08  9:41 ` [PATCH v2 4/5] xhci: mediatek: support MTK xHCI host controller Chunfeng Yun
2015-07-08  9:41   ` Chunfeng Yun
2015-07-08  9:41   ` Chunfeng Yun
2015-07-13 14:52   ` John Crispin
2015-07-13 14:52     ` John Crispin
2015-07-13 14:52     ` John Crispin
2015-07-20 14:51     ` chunfeng yun
2015-07-20 14:51       ` chunfeng yun
2015-07-20 14:51       ` chunfeng yun
2015-07-08  9:41 ` [PATCH v2 5/5] arm64: dts: mediatek: add xHCI & usb phy for mt8173 Chunfeng Yun
2015-07-08  9:41   ` Chunfeng Yun
2015-07-08  9:41   ` Chunfeng Yun
2015-07-14 10:12   ` Daniel Kurtz
2015-07-14 10:12     ` Daniel Kurtz
2015-07-20 14:39     ` chunfeng yun
2015-07-20 14:39       ` chunfeng yun
2015-07-20 14:39       ` chunfeng yun
2015-07-20 14:51       ` Yingjoe Chen
2015-07-20 14:51         ` Yingjoe Chen
2015-07-20 14:51         ` Yingjoe Chen
2015-07-20 14:59         ` Daniel Kurtz
2015-07-20 14:59           ` Daniel Kurtz
2015-07-20 14:59           ` Daniel Kurtz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1436963602.11289.17.camel@mhfsdcap03 \
    --to=chunfeng.yun@mediatek.com \
    --cc=balbi@ti.com \
    --cc=devicetree@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mathias.nyman@intel.com \
    --cc=matthias.bgg@gmail.com \
    --cc=robh+dt@kernel.org \
    --cc=rogerq@ti.com \
    --cc=s.hauer@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.