[PATCH v3 1/3] Documentation: dt: net: Add binding doc for Keystone NetCP ethernet driver

2014-09-13 Thread Santosh Shilimkar
From: Sandeep Nair 

The network coprocessor (NetCP) is a hardware accelerator that processes
Ethernet packets. NetCP has a gigabit Ethernet (GbE) subsystem with a ethernet
switch sub-module to send and receive packets. NetCP also includes a packet
accelerator (PA) module to perform packet classification operations such as
header matching, and packet modification operations such as checksum
generation. NetCP can also optionally include a Security Accelerator(SA)
capable of performing IPSec operations on ingress/egress packets.

Keystone SoC's also have a 10 Gigabit Ethernet Subsystem (XGbE) which
includes a 3-port Ethernet switch sub-module capable of 10Gb/s and
1Gb/s rates per Ethernet port.

NetCP Subsystem device tree layout looks something like below:

-
  NetCP subsystem(10G or 1G)
-
|
|-> NetCP Devices ->|
|   |-> GBE/XGBE Switch
|   |
|   |-> Packet Accelerator
|   |
|   |-> Security Accelerator
|
|
|
|-> NetCP Interfaces -> |
|-> Ethernet Port 0
|
|-> Ethernet Port 1
|
|-> Ethernet Port 2
|
|-> Ethernet Port 3

Common driver supports GBE as well XGBE network processors.

Cc: Rob Herring 
Cc: Grant Likely 
Cc: Pawel Moll 
Cc: Mark Rutland 
Cc: Ian Campbell 
Cc: Kumar Gala 
Cc: David Miller 

Signed-off-by: Sandeep Nair 
Signed-off-by: Santosh Shilimkar 
---
 .../devicetree/bindings/net/keystone-netcp.txt |  197 
 1 file changed, 197 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/net/keystone-netcp.txt

diff --git a/Documentation/devicetree/bindings/net/keystone-netcp.txt 
b/Documentation/devicetree/bindings/net/keystone-netcp.txt
new file mode 100644
index 000..a7d061b
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/keystone-netcp.txt
@@ -0,0 +1,197 @@
+This document describes the device tree bindings associated with the
+keystone network coprocessor(NetCP) driver support.
+
+The network coprocessor (NetCP) is a hardware accelerator that processes
+Ethernet packets. NetCP has a gigabit Ethernet (GbE) subsytem with a ethernet
+switch sub-module to send and receive packets. NetCP also includes a packet
+accelerator (PA) module to perform packet classification operations such as
+header matching, and packet modification operations such as checksum
+generation. NetCP can also optionally include a Security Accelerator (SA)
+capable of performing IPSec operations on ingress/egress packets.
+
+Keystone II SoC's also have a 10 Gigabit Ethernet Subsystem (XGbE) which
+includes a 3-port Ethernet switch sub-module capable of 10Gb/s and 1Gb/s rates
+per Ethernet port.
+
+Keystone NetCP driver has a plug-in module architecture where each of the NetCP
+sub-modules exist as a loadable kernel module which plug in to the netcp core.
+These sub-modules are represented as "netcp-devices" in the dts bindings. It is
+mandatory to have the ethernet switch sub-module for the ethernet interface to
+be operational. Any other sub-module like the PA is optional.
+
+NetCP Ethernet SubSystem Layout:
+
+-
+  NetCP subsystem(10G or 1G)
+-
+   |
+   |-> NetCP Devices ->|
+   |   |-> GBE/XGBE Switch
+   |   |
+   |   |-> Packet Accelerator
+   |   |
+   |   |-> Security Accelerator
+   |
+   |
+   |
+   |-> NetCP Interfaces -> |
+   |-> Ethernet Port 0
+   |
+   |-> Ethernet Port 1
+   |
+   |-> Ethernet Port 2
+   |
+   |-> Ethernet Port 3
+
+
+NetCP subsystem properties:
+Required properties:
+- compatible:  Should be "ti,netcp-1.0"
+- clocks:  phandle to the reference clocks for the subsystem.
+- dma-id:  Navigator packet dma instance id.
+
+Optional properties:
+- reg: register location and the size for the following register
+   regions in the specified order.
+   - Efuse MAC address register
+- dma-coherent:Present if dma operations are coherent
+- big-endian:  Keystone devices can be operated in a mode where the DSP is in
+   the big endian mode. In such cases enable this option. This
+   option should also be enabled if the ARM is operated in
+   big endian mode with the DSP in little endian.
+
+NetCP device properties: Device 

[PATCH v3 1/3] Documentation: dt: net: Add binding doc for Keystone NetCP ethernet driver

2014-09-13 Thread Santosh Shilimkar
From: Sandeep Nair sandee...@ti.com

The network coprocessor (NetCP) is a hardware accelerator that processes
Ethernet packets. NetCP has a gigabit Ethernet (GbE) subsystem with a ethernet
switch sub-module to send and receive packets. NetCP also includes a packet
accelerator (PA) module to perform packet classification operations such as
header matching, and packet modification operations such as checksum
generation. NetCP can also optionally include a Security Accelerator(SA)
capable of performing IPSec operations on ingress/egress packets.

Keystone SoC's also have a 10 Gigabit Ethernet Subsystem (XGbE) which
includes a 3-port Ethernet switch sub-module capable of 10Gb/s and
1Gb/s rates per Ethernet port.

NetCP Subsystem device tree layout looks something like below:

-
  NetCP subsystem(10G or 1G)
-
|
|- NetCP Devices -|
|   |- GBE/XGBE Switch
|   |
|   |- Packet Accelerator
|   |
|   |- Security Accelerator
|
|
|
|- NetCP Interfaces - |
|- Ethernet Port 0
|
|- Ethernet Port 1
|
|- Ethernet Port 2
|
|- Ethernet Port 3

Common driver supports GBE as well XGBE network processors.

Cc: Rob Herring robh...@kernel.org
Cc: Grant Likely grant.lik...@linaro.org
Cc: Pawel Moll pawel.m...@arm.com
Cc: Mark Rutland mark.rutl...@arm.com
Cc: Ian Campbell ijc+devicet...@hellion.org.uk
Cc: Kumar Gala ga...@codeaurora.org
Cc: David Miller da...@davemloft.net

Signed-off-by: Sandeep Nair sandee...@ti.com
Signed-off-by: Santosh Shilimkar santosh.shilim...@ti.com
---
 .../devicetree/bindings/net/keystone-netcp.txt |  197 
 1 file changed, 197 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/net/keystone-netcp.txt

diff --git a/Documentation/devicetree/bindings/net/keystone-netcp.txt 
b/Documentation/devicetree/bindings/net/keystone-netcp.txt
new file mode 100644
index 000..a7d061b
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/keystone-netcp.txt
@@ -0,0 +1,197 @@
+This document describes the device tree bindings associated with the
+keystone network coprocessor(NetCP) driver support.
+
+The network coprocessor (NetCP) is a hardware accelerator that processes
+Ethernet packets. NetCP has a gigabit Ethernet (GbE) subsytem with a ethernet
+switch sub-module to send and receive packets. NetCP also includes a packet
+accelerator (PA) module to perform packet classification operations such as
+header matching, and packet modification operations such as checksum
+generation. NetCP can also optionally include a Security Accelerator (SA)
+capable of performing IPSec operations on ingress/egress packets.
+
+Keystone II SoC's also have a 10 Gigabit Ethernet Subsystem (XGbE) which
+includes a 3-port Ethernet switch sub-module capable of 10Gb/s and 1Gb/s rates
+per Ethernet port.
+
+Keystone NetCP driver has a plug-in module architecture where each of the NetCP
+sub-modules exist as a loadable kernel module which plug in to the netcp core.
+These sub-modules are represented as netcp-devices in the dts bindings. It is
+mandatory to have the ethernet switch sub-module for the ethernet interface to
+be operational. Any other sub-module like the PA is optional.
+
+NetCP Ethernet SubSystem Layout:
+
+-
+  NetCP subsystem(10G or 1G)
+-
+   |
+   |- NetCP Devices -|
+   |   |- GBE/XGBE Switch
+   |   |
+   |   |- Packet Accelerator
+   |   |
+   |   |- Security Accelerator
+   |
+   |
+   |
+   |- NetCP Interfaces - |
+   |- Ethernet Port 0
+   |
+   |- Ethernet Port 1
+   |
+   |- Ethernet Port 2
+   |
+   |- Ethernet Port 3
+
+
+NetCP subsystem properties:
+Required properties:
+- compatible:  Should be ti,netcp-1.0
+- clocks:  phandle to the reference clocks for the subsystem.
+- dma-id:  Navigator packet dma instance id.
+
+Optional properties:
+- reg: register location and the size for the following register
+   regions in the specified order.
+   - Efuse MAC address register
+- dma-coherent:Present if dma operations are coherent
+- big-endian:  Keystone devices can be operated in a mode where the DSP is in
+   the big endian mode. In such cases enable this