From: Christian Lamparter <chunkeey@googlemail.com>
To: Florian Fainelli <f.fainelli@gmail.com>
Cc: netdev@vger.kernel.org, "David S . Miller" <davem@davemloft.net>,
Ivan Mikhaylov <ivan@de.ibm.com>
Subject: Re: [RFC 1/2] dt: emac: document device-tree based phy discovery and setup
Date: Sun, 19 Feb 2017 16:20:58 +0100 [thread overview]
Message-ID: <2476200.DrVWeKAC8k@debian64> (raw)
In-Reply-To: <23e29bef-4c49-8ff6-b156-3b028ed592c4@gmail.com>
On Sunday, February 5, 2017 2:33:44 PM CET Florian Fainelli wrote:
> Le 02/05/17 à 14:25, Christian Lamparter a écrit :
> > This patch adds documentation for a new "phy-handler" property
> > and "mdio" sub-node. These allows the enumeration of PHYs which
> > are supported by the phy library under drivers/net/phy.
> >
> > The EMAC ethernet controller in IBM and AMCC 4xx chips is
> > currently stuck with a few privately defined phy
> > implementations. It has no support for PHYs which
> > are supported by the generic phylib.
> >
> > Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
> > ---
> > .../devicetree/bindings/powerpc/4xx/emac.txt | 60 +++++++++++++++++++++-
> > 1 file changed, 58 insertions(+), 2 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/powerpc/4xx/emac.txt b/Documentation/devicetree/bindings/powerpc/4xx/emac.txt
> > index 712baf6c3e24..0572d053c35a 100644
> > --- a/Documentation/devicetree/bindings/powerpc/4xx/emac.txt
> > +++ b/Documentation/devicetree/bindings/powerpc/4xx/emac.txt
> > @@ -71,6 +71,8 @@
> > For Axon it can be absent, though my current driver
> > doesn't handle phy-address yet so for now, keep
> > 0x00ffffff in it.
> > + - phy-handle : See net/ethernet.txt file; used to describe
> > + configurations where a external PHY is used.
> > - rx-fifo-size-gige : 1 cell, Rx fifo size in bytes for 1000 Mb/sec
> > operations (if absent the value is the same as
> > rx-fifo-size). For Axon, either absent or 2048.
> > @@ -82,7 +84,18 @@
> > - tah-channel : 1 cell, optional. If appropriate, channel used on the
> > TAH engine.
> >
> > - Example:
> > + - mdio subnode : When the EMAC has a phy connected to its local
> > + mdio, which us supported by the kernel's network
> > + PHY library in drivers/net/phy, there must be device
> > + tree subnode with the following required properties:
> > + - #address-cells: Must be <1>.
> > + - #size-cells: Must be <0>.
> > +
> > + For each phy on the mdio bus, there must be a node
> > + with the following fields:
> > + - reg: phy id used to communicate to phy.
> > + - device_type: Must be "ethernet-phy".
>
> Just provide a reference to
> Documentation/devicetree/bindings/net/phy.txt and
> Documentation/devicetree/bindings/net/ethernet.txt here. device_type is
> not required.
Yes, I added a reference there.
>
> > + Examples:
> >
> > EMAC0: ethernet@40000800 {
> > device_type = "network";
> > @@ -104,6 +117,50 @@
> > zmii-channel = <0>;
> > };
> >
> > + EMAC1: ethernet@ef600c00 {
> > + device_type = "network";
> > + compatible = "ibm,emac-apm821xx", "ibm,emac4sync";
> > + interrupt-parent = <&EMAC1>;
> > + interrupts = <0 1>;
> > + #interrupt-cells = <1>;
> > + #address-cells = <0>;
> > + #size-cells = <0>;
> > + interrupt-map = <0 &UIC2 0x10 IRQ_TYPE_LEVEL_HIGH /* Status */
> > + 1 &UIC2 0x14 IRQ_TYPE_LEVEL_HIGH /* Wake */>;
> > + reg = <0xef600c00 0x000000c4>;
> > + local-mac-address = [000000000000]; /* Filled in by U-Boot */
> > + mal-device = <&MAL0>;
> > + mal-tx-channel = <0>;
> > + mal-rx-channel = <0>;
> > + cell-index = <0>;
> > + max-frame-size = <9000>;
> > + rx-fifo-size = <16384>;
> > + tx-fifo-size = <2048>;
> > + fifo-entry-size = <10>;
> > + phy-mode = "rgmii";
> > + phy-map = <0x00000000>;
>
> If you have a proper mdio subnode, this property becomes irrelevant and
> should be unused.
This is emac.c doing. It defaults to 0xffff... if the property is absent.
<http://lxr.free-electrons.com/source/drivers/net/ethernet/ibm/emac/core.c#L2578>
> > + phy-handle = <&phy0>;
> > + rgmii-device = <&RGMII0>;
> > + rgmii-channel = <0>;
> > + tah-device = <&TAH0>;
> > + tah-channel = <0>;
> > + has-inverted-stacr-oc;
> > + has-new-stacr-staopc;
> > +
> > + mdio {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + phy0: ethernet-phy@0 {
> > + device_type = "ethernet-phy";
> > + reg = <0>;
> > +
> > + qca,ar8327-initvals = <
> > + 0x0010 0x40000000>;
> > + };
> > + };
> > +
> > +
> > ii) McMAL node
> >
> > Required properties:
> > @@ -145,4 +202,3 @@
> > - revision : as provided by the RGMII new version register if
> > available.
> > For Axon: 0x0000012a
> > -
> >
>
>
>
next prev parent reply other threads:[~2017-02-19 15:23 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-05 22:25 [RFC 1/2] dt: emac: document device-tree based phy discovery and setup Christian Lamparter
[not found] ` <f57a340f615991ed2771d8af4b1a908dec436a5e.1486333475.git.chunkeey-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
2017-02-05 22:25 ` [RFC 2/2] net: emac: add support for device-tree based PHY " Christian Lamparter
[not found] ` <710c7971cb7dcef54058b61dced03b5d27553380.1486333475.git.chunkeey-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
2017-02-05 22:44 ` Florian Fainelli
[not found] ` <7143c86d-6a3c-5e55-70cd-7424f28e1d78-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-02-11 22:45 ` Christian Lamparter
2017-02-11 23:07 ` Florian Fainelli
2017-02-13 23:38 ` Christian Lamparter
2017-02-15 0:16 ` Christian Lamparter
2017-02-15 0:24 ` Florian Fainelli
2017-02-15 14:23 ` Andrew Lunn
2017-02-19 14:44 ` Christian Lamparter
2017-02-05 22:33 ` [RFC 1/2] dt: emac: document device-tree based phy " Florian Fainelli
2017-02-19 15:20 ` Christian Lamparter [this message]
2017-02-08 23:00 ` Rob Herring
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=2476200.DrVWeKAC8k@debian64 \
--to=chunkeey@googlemail.com \
--cc=davem@davemloft.net \
--cc=f.fainelli@gmail.com \
--cc=ivan@de.ibm.com \
--cc=netdev@vger.kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).