Lines Matching +full:ethernet +full:- +full:switch

5 Ethernet packets. NetCP has a gigabit Ethernet (GbE) subsystem with a ethernet
6 switch sub-module to send and receive packets. NetCP also includes a packet
12 Keystone II SoC's also have a 10 Gigabit Ethernet Subsystem (XGbE) which
13 includes a 3-port Ethernet switch sub-module capable of 10Gb/s and 1Gb/s rates
14 per Ethernet port.
16 Keystone NetCP driver has a plug-in module architecture where each of the NetCP
17 sub-modules exist as a loadable kernel module which plug in to the netcp core.
18 These sub-modules are represented as "netcp-devices" in the dts bindings. It is
19 mandatory to have the ethernet switch sub-module for the ethernet interface to
20 be operational. Any other sub-module like the PA is optional.
22 NetCP Ethernet SubSystem Layout:
24 -----------------------------
26 -----------------------------
28 |-> NetCP Devices -> |
29 | |-> GBE/XGBE Switch
31 | |-> Packet Accelerator
33 | |-> Security Accelerator
37 |-> NetCP Interfaces -> |
38 |-> Ethernet Port 0
40 |-> Ethernet Port 1
42 |-> Ethernet Port 2
44 |-> Ethernet Port 3
49 - compatible: Should be "ti,netcp-1.0"
50 - clocks: phandle to the reference clocks for the subsystem.
51 - dma-id: Navigator packet dma instance id.
52 - ranges: address range of NetCP (includes, Ethernet SS, PA and SA)
55 - reg: register location and the size for the following register
57 - Efuse MAC address register
58 - dma-coherent: Present if dma operations are coherent
59 - big-endian: Keystone devices can be operated in a mode where the DSP is in
64 NetCP device properties: Device specification for NetCP sub-modules.
65 1Gb/10Gb (gbe/xgbe) ethernet switch sub-module specifications.
67 - label: Must be "netcp-gbe" for 1Gb & "netcp-xgbe" for 10Gb.
68 - compatible: Must be one of below:-
69 "ti,netcp-gbe" for 1GbE on NetCP 1.4
70 "ti,netcp-gbe-5" for 1GbE N NetCP 1.5 (N=5)
71 "ti,netcp-gbe-9" for 1GbE N NetCP 1.5 (N=9)
72 "ti,netcp-gbe-2" for 1GbE N NetCP 1.5 (N=2)
73 "ti,netcp-xgbe" for 10 GbE
75 - reg: register location and the size for the following register
77 - switch subsystem registers
78 - sgmii port3/4 module registers (only for NetCP 1.4)
79 - switch module registers
80 - serdes registers (only for 10G)
83 index #0 - switch subsystem registers
84 index #1 - sgmii port3/4 module registers
85 index #2 - switch module registers
88 index #0 - switch subsystem registers
89 index #1 - switch module registers
90 index #2 - serdes registers
92 - tx-channel: the navigator packet dma channel name for tx.
93 - tx-queue: the navigator queue number associated with the tx dma channel.
94 - interfaces: specification for each of the switch port to be registered as a
96 -- slave-port: Switch port number, 0 based numbering.
97 -- link-interface: type of link interface, supported options are
98 - mac<->mac auto negotiate mode: 0
99 - mac<->phy mode: 1
100 - mac<->mac forced mode: 2
101 - mac<->fiber mode: 3
102 - mac<->phy mode with no mdio: 4
103 - 10Gb mac<->phy mode : 10
104 - 10Gb mac<->mac forced mode : 11
105 ----phy-handle: phandle to PHY device
107 - cpts: sub-node time synchronization (CPTS) submodule configuration
108 -- clocks: CPTS reference clock. Should point on cpts-refclk-mux clock.
109 -- clock-names: should be "cpts"
110 -- cpts-refclk-mux: multiplexer clock definition sub-node for CPTS reference (RFTCLK) clock
111 --- #clock-cells: should be 0
112 --- clocks: list of CPTS reference (RFTCLK) clock's parents as defined in Data manual
113 --- ti,mux-tbl: array of multiplexer indexes as defined in Data manual
114 --- assigned-clocks: should point on cpts-refclk-mux clock
115 --- assigned-clock-parents: should point on required RFTCLK clock parent to be selected
116 -- cpts_clock_mult: (optional) Numerator to convert input clock ticks
118 -- cpts_clock_shift: (optional) Denominator to convert input clock ticks into
125 - enable-ale: NetCP driver keeps the address learning feature in the ethernet
126 switch module disabled. This attribute is to enable the address
128 - secondary-slave-ports: specification for each of the switch port not be
133 NetCP interface properties: Interface specification for NetCP sub-modules.
135 - rx-channel: the navigator packet dma channel name for rx.
136 - rx-queue: the navigator queue number associated with rx dma channel.
137 - rx-pool: specifies the number of descriptors to be used & the region-id
139 - tx-pool: specifies the number of descriptors to be used & the region-id
141 - rx-queue-depth: number of descriptors in each of the free descriptor
144 - rx-buffer-size: the buffer size for each of the Rx flow FDQ.
145 - tx-completion-queue: the navigator queue number where the descriptors are
149 - efuse-mac: If this is 1, then the MAC address for the interface is
155 - "netcp-device label": phandle to the device specification for each of NetCP
156 sub-module attached to this interface.
159 ethernet.txt and only if efuse-mac is set to 0. If all of the optional MAC
167 reg-names = "efuse";
168 compatible = "ti,netcp-1.0";
169 #address-cells = <1>;
170 #size-cells = <1>;
173 dma-coherent;
174 /* big-endian; */
175 dma-id = <0>;
177 netcp-devices {
178 #address-cells = <1>;
179 #size-cells = <1>;
182 label = "netcp-gbe";
184 /* enable-ale; */
185 tx-queue = <648>;
186 tx-channel = <8>;
190 clock-names = "cpts";
192 cpts_refclk_mux: cpts-refclk-mux {
193 #clock-cells = <0>;
198 ti,mux-tbl = <0x0>, <0x1>, <0x2>,
200 assigned-clocks = <&cpts_refclk_mux>;
201 assigned-clock-parents = <&chipclk12>;
206 gbe0: interface-0 {
207 slave-port = <0>;
208 link-interface = <4>;
210 gbe1: interface-1 {
211 slave-port = <1>;
212 link-interface = <4>;
216 secondary-slave-ports {
217 port-2 {
218 slave-port = <2>;
219 link-interface = <2>;
221 port-3 {
222 slave-port = <3>;
223 link-interface = <2>;
229 netcp-interfaces {
230 interface-0 {
231 rx-channel = <22>;
232 rx-pool = <1024 12>;
233 tx-pool = <1024 12>;
234 rx-queue-depth = <128 128 0 0>;
235 rx-buffer-size = <1518 4096 0 0>;
236 rx-queue = <8704>;
237 tx-completion-queue = <8706>;
238 efuse-mac = <1>;
239 netcp-gbe = <&gbe0>;
242 interface-1 {
243 rx-channel = <23>;
244 rx-pool = <1024 12>;
245 tx-pool = <1024 12>;
246 rx-queue-depth = <128 128 0 0>;
247 rx-buffer-size = <1518 4096 0 0>;
248 rx-queue = <8705>;
249 tx-completion-queue = <8707>;
250 efuse-mac = <0>;
251 local-mac-address = [02 18 31 7e 3e 6f];
252 netcp-gbe = <&gbe1>;
257 CPTS board configuration - select external CPTS RFTCLK:
260 clock-frequency = <500000000>;
264 assigned-clock-parents = <&tsrefclk>;