From: Florian Fainelli <f.fainelli@gmail.com>
To: netdev@vger.kernel.org
Cc: davem@davemloft.net, devicetree@vger.kernel.org,
cernekee@gmail.com, mark.rutland@arm.com, romieu@fr.zoreil.com,
Florian Fainelli <f.fainelli@gmail.com>
Subject: [PATCH net-next v5 09/10] Documentation: add Device tree bindings for Broadcom GENET
Date: Thu, 13 Feb 2014 16:08:50 -0800 [thread overview]
Message-ID: <1392336531-28875-10-git-send-email-f.fainelli@gmail.com> (raw)
In-Reply-To: <1392336531-28875-1-git-send-email-f.fainelli@gmail.com>
This patch adds the Device Tree bindings for the Broadcom GENET Gigabit
Ethernet controller. A bunch of examples are provided to illustrate the
versatile aspect of the hardare.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
Changes in v5:
- respin due to the CONFIG_OF dependency fix
Changes in v4:
- respin due to the Kconfig dependency
Changes in v3
- improve compatible property description to specify all compatible strings
supported
- move MDIO bus node to a separate section, to separate from the properties
- detail which exact phy-mode strings are supported and that this refers to
the ePAPR 'phy-connection-type' modes
- fixed MDIO bus node compatible string to match what is really provided by
the bootloader and use the same details as for the GENET compatible string
- add address-cells and size-cells required properties for the GENET device
tree node
- add a better description for the 'fixed-link' property with reference to
existing binding documentation
- add a reference to the Ethernet PHY device tree binding
- add a description for the interrupts properties
- add a documentation for the optional clocks properties
- removed unused and deprecated device_type properties
Changes in v2:
- rebased against net-next/master
.../devicetree/bindings/net/broadcom-bcmgenet.txt | 121 +++++++++++++++++++++
1 file changed, 121 insertions(+)
create mode 100644 Documentation/devicetree/bindings/net/broadcom-bcmgenet.txt
diff --git a/Documentation/devicetree/bindings/net/broadcom-bcmgenet.txt b/Documentation/devicetree/bindings/net/broadcom-bcmgenet.txt
new file mode 100644
index 0000000..afd31f9
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/broadcom-bcmgenet.txt
@@ -0,0 +1,121 @@
+* Broadcom BCM7xxx Ethernet Controller (GENET)
+
+Required properties:
+- compatible: should contain one of "brcm,genet-v1", "brcm,genet-v2",
+ "brcm,genet-v3", "brcm,genet-v4".
+- reg: address and length of the register set for the device
+- interrupts: must be two cells, the first cell is the general purpose
+ interrupt line, while the second cell is the interrupt for the ring
+ RX and TX queues operating in ring mode
+- phy-mode: String, operation mode of the PHY interface. Supported values are
+ "mii", "rgmii", "rgmii-txid", "rev-mii", "moca". Analogous to ePAPR
+ "phy-connection-type" values
+- address-cells: should be 1
+- size-cells: should be 1
+
+Optional properties:
+- clocks: When provided, must be two cells, first one is the main GENET clock
+ and the second cell is the Genet Wake-on-LAN clock.
+
+- phy-handle: A phandle to a phy node defining the PHY address (as the reg
+ property, a single integer), used to describe configurations where a PHY
+ (internal or external) is used.
+
+- fixed-link: When the GENET interface is connected to a MoCA hardware block or
+ when operating in a RGMII to RGMII type of connection, or when the MDIO bus is
+ voluntarily disabled, this property should be used to describe the "fixed link".
+ See Documentation/devicetree/bindings/net/fsl-tsec-phy.txt for information on
+ the property specifics
+
+Required child nodes:
+
+- mdio bus node: this node should always be present regarless of the PHY
+ configuration of the GENET instance
+
+MDIO bus node required properties:
+
+- compatible: should contain one of "brcm,genet-mdio-v1", "brcm,genet-mdio-v2"
+ "brcm,genet-mdio-v3", "brcm,genet-mdio-v4", the version has to match the
+ parent node compatible property (e.g: brcm,genet-v4 pairs with
+ brcm,genet-mdio-v4)
+- reg: address and length relative to the parent node base register address
+- address-cells: address cell for MDIO bus addressing, should be 1
+- size-cells: size of the cells for MDIO bus addressing, should be 0
+
+Ethernet PHY node properties:
+
+See Documentation/devicetree/bindings/net/phy.txt for the list of required and
+optional properties.
+
+Internal Gigabit PHY example:
+
+ethernet@f0b60000 {
+ phy-mode = "internal";
+ phy-handle = <&phy1>;
+ mac-address = [ 00 10 18 36 23 1a ];
+ compatible = "brcm,genet-v4";
+ #address-cells = <0x1>;
+ #size-cells = <0x1>;
+ reg = <0xf0b60000 0xfc4c>;
+ interrupts = <0x0 0x14 0x0>, <0x0 0x15 0x0>;
+
+ mdio@e14 {
+ compatible = "brcm,genet-mdio-v4";
+ #address-cells = <0x1>;
+ #size-cells = <0x0>;
+ reg = <0xe14 0x8>;
+
+ phy1: ethernet-phy@1 {
+ max-speed = <1000>;
+ reg = <0x1>;
+ compatible = "brcm,28nm-gphy", "ethernet-phy-ieee802.3-c22";
+ };
+ };
+};
+
+MoCA interface / MAC to MAC example:
+
+ethernet@f0b80000 {
+ phy-mode = "moca";
+ fixed-link = <1 0 1000 0 0>;
+ mac-address = [ 00 10 18 36 24 1a ];
+ compatible = "brcm,genet-v4";
+ #address-cells = <0x1>;
+ #size-cells = <0x1>;
+ reg = <0xf0b80000 0xfc4c>;
+ interrupts = <0x0 0x16 0x0>, <0x0 0x17 0x0>;
+
+ mdio@e14 {
+ compatible = "brcm,genet-mdio-v4";
+ #address-cells = <0x1>;
+ #size-cells = <0x0>;
+ reg = <0xe14 0x8>;
+ };
+};
+
+
+External MDIO-connected Gigabit PHY/switch:
+
+ethernet@f0ba0000 {
+ phy-mode = "rgmii";
+ phy-handle = <&phy0>;
+ mac-address = [ 00 10 18 36 26 1a ];
+ compatible = "brcm,genet-v4";
+ #address-cells = <0x1>;
+ #size-cells = <0x1>;
+ reg = <0xf0ba0000 0xfc4c>;
+ interrupts = <0x0 0x18 0x0>, <0x0 0x19 0x0>;
+
+ mdio@0e14 {
+ compatible = "brcm,genet-mdio-v4";
+ #address-cells = <0x1>;
+ #size-cells = <0x0>;
+ reg = <0xe14 0x8>;
+
+ phy0: ethernet-phy@0 {
+ max-speed = <1000>;
+ reg = <0x0>;
+ compatible = "brcm,bcm53125", "ethernet-phy-ieee802.3-c22";
+ };
+ };
+};
--
1.8.3.2
next prev parent reply other threads:[~2014-02-14 0:08 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-14 0:08 [PATCH net-next v5 00/10] Support for the Broadcom GENET driver Florian Fainelli
2014-02-14 0:08 ` [PATCH net-next v5 01/10] net: phy: add MoCA PHY type Florian Fainelli
2014-02-14 0:08 ` [PATCH net-next v5 02/10] net: phy: update port type for MoCA PHYs Florian Fainelli
2014-02-14 0:08 ` [PATCH net-next v5 03/10] net: phy: broadcom: extract register definitions Florian Fainelli
2014-02-14 0:08 ` [PATCH net-next v5 04/10] net: phy: add Broadcom BCM7xxx internal PHY driver Florian Fainelli
2014-02-14 0:08 ` [PATCH net-next v5 05/10] net: bcmgenet: add driver definitions and private structure Florian Fainelli
2014-02-14 0:08 ` [PATCH net-next v5 06/10] net: bcmgenet: add main driver file Florian Fainelli
2014-02-14 0:08 ` [PATCH net-next v5 07/10] net: bcmgenet: add MDIO routines Florian Fainelli
2014-02-14 0:08 ` Florian Fainelli [this message]
2014-02-14 10:19 ` [PATCH net-next v5 09/10] Documentation: add Device tree bindings for Broadcom GENET Mark Rutland
2014-02-14 17:36 ` Florian Fainelli
2014-02-17 23:10 ` Sergei Shtylyov
2014-02-17 22:18 ` Florian Fainelli
2014-02-14 0:08 ` [PATCH net-next v5 10/10] MAINTAINERS: add entry for the Broadcom GENET driver Florian Fainelli
2014-02-14 21:37 ` Sergei Shtylyov
[not found] ` <1392336531-28875-1-git-send-email-f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-02-14 0:08 ` [PATCH net-next v5 08/10] net: bcmgenet: hook into the build system Florian Fainelli
2014-02-14 5:29 ` [PATCH net-next v5 00/10] Support for the Broadcom GENET driver David Miller
2014-02-14 7:07 ` Florian Fainelli
2014-02-14 9:19 ` Richard Cochran
2014-02-16 18:34 ` Florian Fainelli
2014-02-18 7:37 ` Richard Cochran
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=1392336531-28875-10-git-send-email-f.fainelli@gmail.com \
--to=f.fainelli@gmail.com \
--cc=cernekee@gmail.com \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=netdev@vger.kernel.org \
--cc=romieu@fr.zoreil.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 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).