diff mbox

Documentation: bindings: net: DPAA corenet binding document

Message ID 1417169426-11823-1-git-send-email-madalin.bucur@freescale.com
State New, archived
Headers show

Commit Message

Madalin Bucur Nov. 28, 2014, 10:10 a.m. UTC
Add the device tree binding document for the DPAA corenet node
and DPAA Ethernet nodes.

Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
---
 Documentation/devicetree/bindings/net/fsl-dpaa.txt | 31 ++++++++++++++++++++++
 1 file changed, 31 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/net/fsl-dpaa.txt

Comments

Scott Wood Dec. 2, 2014, 4:39 a.m. UTC | #1
On Fri, 2014-11-28 at 12:10 +0200, Madalin Bucur wrote:
> Add the device tree binding document for the DPAA corenet node
> and DPAA Ethernet nodes.
> 
> Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
> ---
>  Documentation/devicetree/bindings/net/fsl-dpaa.txt | 31 ++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/net/fsl-dpaa.txt
> 
> diff --git a/Documentation/devicetree/bindings/net/fsl-dpaa.txt b/Documentation/devicetree/bindings/net/fsl-dpaa.txt
> new file mode 100644
> index 0000000..822c668
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/net/fsl-dpaa.txt
> @@ -0,0 +1,31 @@
> +*DPAA corenet
> +
> +The corenet bus containing all DPAA Ethernet nodes.

What does this have to do with corenet?

> +Required property
> + - compatible: string property.  Must include "fsl,dpaa". Can include
> +   also "fsl,<SoC>-dpaa".

No need for the <SoC> part.  As we previously discussed, the only
purpose of this node is backwards compatibility with the U-Boot MAC
address fixup -- if U-Boot doesn't look for the <SoC> version, then
don't complicate things.

Though, I can't find where U-Boot references this node.  Are you sure
it's not using the ethernet%d aliases like everything else, in which
case why do we need this node at all?

-Scott


--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Madalin Bucur Dec. 2, 2014, 12:12 p.m. UTC | #2
> -----Original Message-----

> From: Wood Scott-B07421

> Sent: Tuesday, December 02, 2014 6:40 AM

> On Fri, 2014-11-28 at 12:10 +0200, Madalin Bucur wrote:

> > Add the device tree binding document for the DPAA corenet node

> > and DPAA Ethernet nodes.

> >

> > Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>

> > ---

> >  Documentation/devicetree/bindings/net/fsl-dpaa.txt | 31

> ++++++++++++++++++++++

> >  1 file changed, 31 insertions(+)

> >  create mode 100644 Documentation/devicetree/bindings/net/fsl-dpaa.txt

> >

> > diff --git a/Documentation/devicetree/bindings/net/fsl-dpaa.txt

> b/Documentation/devicetree/bindings/net/fsl-dpaa.txt

> > new file mode 100644

> > index 0000000..822c668

> > --- /dev/null

> > +++ b/Documentation/devicetree/bindings/net/fsl-dpaa.txt

> > @@ -0,0 +1,31 @@

> > +*DPAA corenet

> > +

> > +The corenet bus containing all DPAA Ethernet nodes.

> 

> What does this have to do with corenet?

> 

The corenet-generic platform code uses this compatible. Here are some excerpts
from the platform code found in SDK arch/powerpc/platforms/85xx/corenet_generic.c
...
 * Corenet based SoC DS Setup
 *
 * Maintained by Kumar Gala (see MAINTAINERS for contact information)
 *
 * Copyright 2009-2011 Freescale Semiconductor Inc.
...
static const struct of_device_id of_device_ids[] = {
        {
                .compatible     = "simple-bus"
        },
        {
                .compatible     = "fsl,dpaa"
        },
...
int __init corenet_gen_publish_devices(void)
{
        return of_platform_bus_probe(NULL, of_device_ids, NULL);
}
...
> > +Required property

> > + - compatible: string property.  Must include "fsl,dpaa". Can include

> > +   also "fsl,<SoC>-dpaa".

> 

> No need for the <SoC> part.  As we previously discussed, the only

> purpose of this node is backwards compatibility with the U-Boot MAC

> address fixup -- if U-Boot doesn't look for the <SoC> version, then

> don't complicate things.

> 

> Though, I can't find where U-Boot references this node.  Are you sure

> it's not using the ethernet%d aliases like everything else, in which

> case why do we need this node at all?

> 

> -Scott

> 


The initial (Freescale SDK) binding document contained those compatibles,
not sure what the initial intent was for the <SoC> variants.

The "fsl,dpaa" node is of interest to the DPAA Ethernet because it is
the parent of the "fsl,dpa-ethernet" nodes.

Madalin
Scott Wood Dec. 2, 2014, 11:03 p.m. UTC | #3
On Tue, 2014-12-02 at 06:12 -0600, Bucur Madalin-Cristian-B32716 wrote:
> > -----Original Message-----
> > From: Wood Scott-B07421
> > Sent: Tuesday, December 02, 2014 6:40 AM
> > On Fri, 2014-11-28 at 12:10 +0200, Madalin Bucur wrote:
> > > Add the device tree binding document for the DPAA corenet node
> > > and DPAA Ethernet nodes.
> > >
> > > Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
> > > ---
> > >  Documentation/devicetree/bindings/net/fsl-dpaa.txt | 31
> > ++++++++++++++++++++++
> > >  1 file changed, 31 insertions(+)
> > >  create mode 100644 Documentation/devicetree/bindings/net/fsl-dpaa.txt
> > >
> > > diff --git a/Documentation/devicetree/bindings/net/fsl-dpaa.txt
> > b/Documentation/devicetree/bindings/net/fsl-dpaa.txt
> > > new file mode 100644
> > > index 0000000..822c668
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/net/fsl-dpaa.txt
> > > @@ -0,0 +1,31 @@
> > > +*DPAA corenet
> > > +
> > > +The corenet bus containing all DPAA Ethernet nodes.
> > 
> > What does this have to do with corenet?
> > 
> The corenet-generic platform code uses this compatible.

That doesn't make it a "corenet bus".  It's not a bus at all.

> > > +Required property
> > > + - compatible: string property.  Must include "fsl,dpaa". Can include
> > > +   also "fsl,<SoC>-dpaa".
> > 
> > No need for the <SoC> part.  As we previously discussed, the only
> > purpose of this node is backwards compatibility with the U-Boot MAC
> > address fixup -- if U-Boot doesn't look for the <SoC> version, then
> > don't complicate things.
> > 
> > Though, I can't find where U-Boot references this node.  Are you sure
> > it's not using the ethernet%d aliases like everything else, in which
> > case why do we need this node at all?
> > 
> > -Scott
> > 
> 
> The initial (Freescale SDK) binding document contained those compatibles,
> not sure what the initial intent was for the <SoC> variants.
> 
> The "fsl,dpaa" node is of interest to the DPAA Ethernet because it is
> the parent of the "fsl,dpa-ethernet" nodes.

I'm not interested in what the SDK binding says, or what the SDK kernel
does.  I'm interested in whether there's a U-Boot compatibility issue,
as was previously alleged.  If there isn't, then there's no need for
fsl,dpaa *or* fsl,dpa-ethernet.

-Scott


--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Scott Wood Dec. 3, 2014, 10:01 p.m. UTC | #4
On Tue, 2014-12-02 at 17:03 -0600, Scott Wood wrote:
> On Tue, 2014-12-02 at 06:12 -0600, Bucur Madalin-Cristian-B32716 wrote:
> > > -----Original Message-----
> > > From: Wood Scott-B07421
> > > Sent: Tuesday, December 02, 2014 6:40 AM
> > >
> > > No need for the <SoC> part.  As we previously discussed, the only
> > > purpose of this node is backwards compatibility with the U-Boot MAC
> > > address fixup -- if U-Boot doesn't look for the <SoC> version, then
> > > don't complicate things.
> > > 
> > > Though, I can't find where U-Boot references this node.  Are you sure
> > > it's not using the ethernet%d aliases like everything else, in which
> > > case why do we need this node at all?
> > > 
> > > -Scott
> > > 
> > 
> > The initial (Freescale SDK) binding document contained those compatibles,
> > not sure what the initial intent was for the <SoC> variants.
> > 
> > The "fsl,dpaa" node is of interest to the DPAA Ethernet because it is
> > the parent of the "fsl,dpa-ethernet" nodes.
> 
> I'm not interested in what the SDK binding says, or what the SDK kernel
> does.  I'm interested in whether there's a U-Boot compatibility issue,
> as was previously alleged.  If there isn't, then there's no need for
> fsl,dpaa *or* fsl,dpa-ethernet.

OK, I found the U-Boot fixup in question.  It's not for MAC addresses,
but for marking disabled ports as disabled.  It marks the dpa-ethernet
node as disabled, based on it having an fsl,fman-mac property that
points to the MAC node.

U-Boot also disables the MAC node itself, so it doesn't matter if it
doesn't find fsl,fman-mac -- except for the special case of fm1-dtsec1,
which is always kept enabled because it's used for MDIO for all ports.

Based on http://patchwork.ozlabs.org/patch/410770/ there's a separate
node for mdio, so why can't we mark the MAC disabled?  Assuming that
there's no real problem in marking the fm1-dtsec1 MAC node disabled, we
can consider this to be a bug in U-Boot which can be worked around by
having the fm1-dtsec1 mac node have an fsl,fman-mac property that points
to itself.  This property would only go on the fm1-dtsec1 mac node and
would only be in device trees for SoCs that are supported by U-Boots old
enough to not have had the bug be fixed.

-Scott


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

Patch

diff --git a/Documentation/devicetree/bindings/net/fsl-dpaa.txt b/Documentation/devicetree/bindings/net/fsl-dpaa.txt
new file mode 100644
index 0000000..822c668
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/fsl-dpaa.txt
@@ -0,0 +1,31 @@ 
+*DPAA corenet
+
+The corenet bus containing all DPAA Ethernet nodes.
+
+Required property
+ - compatible: string property.  Must include "fsl,dpaa". Can include
+   also "fsl,<SoC>-dpaa".
+
+Example:
+
+fsl,dpaa {
+        compatible = "fsl,p4080-dpaa", "fsl,dpaa";
+};
+
+*DPAA Ethernet
+
+DPAA Ethernet implements an Ethernet interface on top of the functionality
+offered by the DPAA accelerators: QMan, BMan, FMan. It contains a reference
+to the FMan MAC node used (dTSEC, TGEC, MEMAC). This construct is used by
+u-boot for the boot-time device tree fix-up.
+
+Required properties
+ - compatible: standard string property. Must include "fsl,dpa-ethernet".
+ - fsl,fman-mac: phandle that references a node describing the used DPAA MAC.
+
+Example:
+
+ethernet0 {
+        compatible = "fsl,dpa-ethernet";
+        fsl,fman-mac = <&enet0>;
+};