All of lore.kernel.org
 help / color / mirror / Atom feed
From: Miquel Raynal <miquel.raynal@bootlin.com>
To: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Mark Rutland <mark.rutland@arm.com>, Andrew Lunn <andrew@lunn.ch>,
	Jason Cooper <jason@lakedaemon.net>,
	Mathias Nyman <mathias.nyman@intel.com>,
	devicetree@vger.kernel.org,
	Antoine Tenart <antoine.tenart@bootlin.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Gregory Clement <gregory.clement@bootlin.com>,
	linux-usb@vger.kernel.org, Kishon Vijay Abraham I <kishon@ti.com>,
	Nadav Haklai <nadavh@marvell.com>,
	Rob Herring <robh+dt@kernel.org>,
	Alan Stern <stern@rowland.harvard.edu>,
	Maxime Chevallier <maxime.chevallier@bootlin.com>,
	linux-arm-kernel@lists.infradead.org,
	Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Subject: Re: [PATCH v3 06/10] dt-bindings: phy: mvebu-utmi: add UTMI PHY bindings
Date: Tue, 22 Jan 2019 20:16:35 +0100	[thread overview]
Message-ID: <20190122201635.4a6c28d0@xps13> (raw)
In-Reply-To: <20190122183833.40077d7a@windsurf>

Hi Thomas,

Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote on Tue, 22 Jan
2019 18:38:33 +0100:

> Hello,
> 
> On Mon, 21 Jan 2019 12:23:32 +0100, Miquel Raynal wrote:
> 
> > +- compatible: Should be one of:
> > +	      * "marvell,a3700-utmi-host-phy" for the PHY connected to
> > +	        the USB2 host-only controller.
> > +	      * "marvell,a3700-utmi-otg-phy" for the PHY connected to
> > +	        the USB3 and USB2 OTG capable controller.  
> 
> Do we really need different compatible strings for those ? I assume the
> IP block is exactly the same for the two PHYs, right ? If so, we should
> use the same compatible string.

For what I understand, the PHYs are different. At least this is how
they are described in the specification. I can list at least two
differences visible in the register set:
* one has OTG registers, the other does not.
* one has charger detection capabilities (and registers), the other
  does not.

> 
> Didn't we discuss that we can lookup from the PHY whether the USB
> controller it is connected to is in host mode or otg mode ?

Yes, but having two different PHYs meant having two different
compatibles, hence there was no need in the driver to use this
lookup approach. Anyway this is an implementation detail and it is
always possible to go back. 

> 
> > +Example:
> > +
> > +	usb2_utmi_host_phy: phy@5f000 {
> > +		compatible = "marvell,armada-3700-utmi-host-phy";
> > +		reg = <0x5f000 0x800>;
> > +		marvell,usb-misc-reg = <&usb2_syscon>;
> > +		#phy-cells = <0>;
> > +	};
> > +
> > +	usb2_syscon: system-controller@5f800 {
> > +		compatible = "marvell,usb2-host-miscellaneous", "syscon";
> > +		reg = <0x5f800 0x800>;
> > +	};  
> 
> Those registers are contiguous to the register range of the PHY itself.
> What was the criteria used to decide that we need two separate DT nodes
> for these ?

Because this area contains a bunch of registers, most of them are
there to manage the PHY, but others are related to the USB controller
(ie. a software reset). I know the current USB controller driver does
not access this area but what if one day we decide to do it?


Thanks,
Miquèl

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Miquel Raynal <miquel.raynal@bootlin.com>
To: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Gregory Clement <gregory.clement@bootlin.com>,
	Jason Cooper <jason@lakedaemon.net>, Andrew Lunn <andrew@lunn.ch>,
	Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>,
	Kishon Vijay Abraham I <kishon@ti.com>,
	Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Mathias Nyman <mathias.nyman@intel.com>,
	Alan Stern <stern@rowland.harvard.edu>,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-usb@vger.kernel.org,
	Antoine Tenart <antoine.tenart@bootlin.com>,
	Maxime Chevallier <maxime.chevallier@bootlin.com>,
	Nadav Haklai <nadavh@marvell.com>
Subject: [v3,06/10] dt-bindings: phy: mvebu-utmi: add UTMI PHY bindings
Date: Tue, 22 Jan 2019 20:16:35 +0100	[thread overview]
Message-ID: <20190122201635.4a6c28d0@xps13> (raw)

Hi Thomas,

Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote on Tue, 22 Jan
2019 18:38:33 +0100:

> Hello,
> 
> On Mon, 21 Jan 2019 12:23:32 +0100, Miquel Raynal wrote:
> 
> > +- compatible: Should be one of:
> > +	      * "marvell,a3700-utmi-host-phy" for the PHY connected to
> > +	        the USB2 host-only controller.
> > +	      * "marvell,a3700-utmi-otg-phy" for the PHY connected to
> > +	        the USB3 and USB2 OTG capable controller.  
> 
> Do we really need different compatible strings for those ? I assume the
> IP block is exactly the same for the two PHYs, right ? If so, we should
> use the same compatible string.

For what I understand, the PHYs are different. At least this is how
they are described in the specification. I can list at least two
differences visible in the register set:
* one has OTG registers, the other does not.
* one has charger detection capabilities (and registers), the other
  does not.

> 
> Didn't we discuss that we can lookup from the PHY whether the USB
> controller it is connected to is in host mode or otg mode ?

Yes, but having two different PHYs meant having two different
compatibles, hence there was no need in the driver to use this
lookup approach. Anyway this is an implementation detail and it is
always possible to go back. 

> 
> > +Example:
> > +
> > +	usb2_utmi_host_phy: phy@5f000 {
> > +		compatible = "marvell,armada-3700-utmi-host-phy";
> > +		reg = <0x5f000 0x800>;
> > +		marvell,usb-misc-reg = <&usb2_syscon>;
> > +		#phy-cells = <0>;
> > +	};
> > +
> > +	usb2_syscon: system-controller@5f800 {
> > +		compatible = "marvell,usb2-host-miscellaneous", "syscon";
> > +		reg = <0x5f800 0x800>;
> > +	};  
> 
> Those registers are contiguous to the register range of the PHY itself.
> What was the criteria used to decide that we need two separate DT nodes
> for these ?

Because this area contains a bunch of registers, most of them are
there to manage the PHY, but others are related to the USB controller
(ie. a software reset). I know the current USB controller driver does
not access this area but what if one day we decide to do it?


Thanks,
Miquèl

  reply	other threads:[~2019-01-22 19:16 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-21 11:23 [PATCH v3 00/10] A3700 USB S2RAM support Miquel Raynal
2019-01-21 11:23 ` [PATCH v3 01/10] usb: core: comply to PHY framework Miquel Raynal
2019-01-21 11:23   ` Miquel Raynal
2019-01-21 11:23   ` [v3,01/10] " Miquel Raynal
2019-01-21 11:23 ` [PATCH v3 02/10] usb: host: xhci: mvebu: add reset on resume quirk Miquel Raynal
2019-01-21 11:23   ` Miquel Raynal
2019-01-21 11:23   ` [v3,02/10] " Miquel Raynal
2019-01-21 11:23 ` [PATCH v3 03/10] usb: ehci-orion: avoid double PHY initialization Miquel Raynal
2019-01-21 11:23   ` Miquel Raynal
2019-01-21 11:23   ` [v3,03/10] " Miquel Raynal
2019-01-23 20:01   ` [PATCH v3 03/10] " Alan Stern
2019-01-23 20:01     ` Alan Stern
2019-01-23 20:01     ` [v3,03/10] " Alan Stern
2019-01-21 11:23 ` [PATCH v3 04/10] usb: ehci-orion: add S2RAM support Miquel Raynal
2019-01-21 11:23   ` Miquel Raynal
2019-01-21 11:23   ` [v3,04/10] " Miquel Raynal
2019-01-23 19:58   ` [PATCH v3 04/10] " Alan Stern
2019-01-23 19:58     ` Alan Stern
2019-01-23 19:58     ` [v3,04/10] " Alan Stern
2019-01-25 10:35     ` [PATCH v3 04/10] " Miquel Raynal
2019-01-25 10:35       ` [v3,04/10] " Miquel Raynal
2019-01-21 11:23 ` [PATCH v3 05/10] phy: add A3700 UTMI PHY driver Miquel Raynal
2019-01-21 11:23   ` [v3,05/10] " Miquel Raynal
2019-01-21 11:23 ` [PATCH v3 06/10] dt-bindings: phy: mvebu-utmi: add UTMI PHY bindings Miquel Raynal
2019-01-21 11:23   ` Miquel Raynal
2019-01-21 11:23   ` [v3,06/10] " Miquel Raynal
2019-01-21 15:44   ` [PATCH v3 06/10] " Rob Herring
2019-01-21 15:44     ` Rob Herring
2019-01-21 15:44     ` [v3,06/10] " Rob Herring
2019-01-21 15:47     ` [PATCH v3 06/10] " Gregory CLEMENT
2019-01-21 15:47       ` Gregory CLEMENT
2019-01-21 15:47       ` [v3,06/10] " Gregory CLEMENT
2019-01-22 16:08       ` [PATCH v3 06/10] " Rob Herring
2019-01-22 16:08         ` Rob Herring
2019-01-22 16:08         ` [v3,06/10] " Rob Herring
2019-01-22 16:13         ` [PATCH v3 06/10] " Miquel Raynal
2019-01-22 16:13           ` [v3,06/10] " Miquel Raynal
2019-01-22 17:38   ` [PATCH v3 06/10] " Thomas Petazzoni
2019-01-22 17:38     ` Thomas Petazzoni
2019-01-22 17:38     ` [v3,06/10] " Thomas Petazzoni
2019-01-22 19:16     ` Miquel Raynal [this message]
2019-01-22 19:16       ` Miquel Raynal
2019-01-23 13:51       ` [PATCH v3 06/10] " Thomas Petazzoni
2019-01-23 13:51         ` Thomas Petazzoni
2019-01-23 13:51         ` [v3,06/10] " Thomas Petazzoni
2019-01-21 11:23 ` [PATCH v3 07/10] MAINTAINERS: phy: fill Armada 3700 PHY drivers entry Miquel Raynal
2019-01-21 11:23   ` Miquel Raynal
2019-01-21 11:23   ` [v3,07/10] " Miquel Raynal
2019-01-21 11:23 ` [PATCH v3 08/10] ARM64: dts: marvell: armada-37xx: fix USB2 memory region Miquel Raynal
2019-01-21 11:23   ` Miquel Raynal
2019-01-21 11:23   ` [v3,08/10] " Miquel Raynal
2019-01-21 11:23 ` [PATCH v3 09/10] ARM64: dts: marvell: armada-37xx: declare USB2 UTMI PHYs Miquel Raynal
2019-01-21 11:23   ` Miquel Raynal
2019-01-21 11:23   ` [v3,09/10] " Miquel Raynal
2019-01-21 11:23 ` [PATCH v3 10/10] ARM64: dts: marvell: armada-37xx: link USB hosts with their PHYs Miquel Raynal
2019-01-21 11:23   ` Miquel Raynal
2019-01-21 11:23   ` [v3,10/10] " Miquel Raynal

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=20190122201635.4a6c28d0@xps13 \
    --to=miquel.raynal@bootlin.com \
    --cc=andrew@lunn.ch \
    --cc=antoine.tenart@bootlin.com \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=gregory.clement@bootlin.com \
    --cc=jason@lakedaemon.net \
    --cc=kishon@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mathias.nyman@intel.com \
    --cc=maxime.chevallier@bootlin.com \
    --cc=nadavh@marvell.com \
    --cc=robh+dt@kernel.org \
    --cc=sebastian.hesselbarth@gmail.com \
    --cc=stern@rowland.harvard.edu \
    --cc=thomas.petazzoni@bootlin.com \
    /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.