-
Notifications
You must be signed in to change notification settings - Fork 54.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
Pull networking updates from David Miller: 1) BBR TCP congestion control, from Neal Cardwell, Yuchung Cheng and co. at Google. https://lwn.net/Articles/701165/ 2) Do TCP Small Queues for retransmits, from Eric Dumazet. 3) Support collect_md mode for all IPV4 and IPV6 tunnels, from Alexei Starovoitov. 4) Allow cls_flower to classify packets in ip tunnels, from Amir Vadai. 5) Support DSA tagging in older mv88e6xxx switches, from Andrew Lunn. 6) Support GMAC protocol in iwlwifi mwm, from Ayala Beker. 7) Support ndo_poll_controller in mlx5, from Calvin Owens. 8) Move VRF processing to an output hook and allow l3mdev to be loopback, from David Ahern. 9) Support SOCK_DESTROY for UDP sockets. Also from David Ahern. 10) Congestion control in RXRPC, from David Howells. 11) Support geneve RX offload in ixgbe, from Emil Tantilov. 12) When hitting pressure for new incoming TCP data SKBs, perform a partial rathern than a full purge of the OFO queue (which could be huge). From Eric Dumazet. 13) Convert XFRM state and policy lookups to RCU, from Florian Westphal. 14) Support RX network flow classification to igb, from Gangfeng Huang. 15) Hardware offloading of eBPF in nfp driver, from Jakub Kicinski. 16) New skbmod packet action, from Jamal Hadi Salim. 17) Remove some inefficiencies in snmp proc output, from Jia He. 18) Add FIB notifications to properly propagate route changes to hardware which is doing forwarding offloading. From Jiri Pirko. 19) New dsa driver for qca8xxx chips, from John Crispin. 20) Implement RFC7559 ipv6 router solicitation backoff, from Maciej Żenczykowski. 21) Add L3 mode to ipvlan, from Mahesh Bandewar. 22) Support 802.1ad in mlx4, from Moshe Shemesh. 23) Support hardware LRO in mediatek driver, from Nelson Chang. 24) Add TC offloading to mlx5, from Or Gerlitz. 25) Convert various drivers to ethtool ksettings interfaces, from Philippe Reynes. 26) TX max rate limiting for cxgb4, from Rahul Lakkireddy. 27) NAPI support for ath10k, from Rajkumar Manoharan. 28) Support XDP in mlx5, from Rana Shahout and Saeed Mahameed. 29) UDP replicast support in TIPC, from Richard Alpe. 30) Per-queue statistics for qed driver, from Sudarsana Reddy Kalluru. 31) Support BQL in thunderx driver, from Sunil Goutham. 32) TSO support in alx driver, from Tobias Regnery. 33) Add stream parser engine and use it in kcm. 34) Support async DHCP replies in ipconfig module, from Uwe Kleine-König. 35) DSA port fast aging for mv88e6xxx driver, from Vivien Didelot. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1715 commits) mlxsw: switchx2: Fix misuse of hard_header_len mlxsw: spectrum: Fix misuse of hard_header_len net/faraday: Stop NCSI device on shutdown net/ncsi: Introduce ncsi_stop_dev() net/ncsi: Rework the channel monitoring net/ncsi: Allow to extend NCSI request properties net/ncsi: Rework request index allocation net/ncsi: Don't probe on the reserved channel ID (0x1f) net/ncsi: Introduce NCSI_RESERVED_CHANNEL net/ncsi: Avoid unused-value build warning from ia64-linux-gcc net: Add netdev all_adj_list refcnt propagation to fix panic net: phy: Add Edge-rate driver for Microsemi PHYs. vmxnet3: Wake queue from reset work i40e: avoid NULL pointer dereference and recursive errors on early PCI error qed: Add RoCE ll2 & GSI support qed: Add support for memory registeration verbs qed: Add support for QP verbs qed: PD,PKEY and CQ verb support qed: Add support for RoCE hw init qede: Add qedr framework ...
- Loading branch information
Showing
1,381 changed files
with
110,944 additions
and
32,487 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
* Qualcomm Atheros QCA8xxx switch family | ||
|
||
Required properties: | ||
|
||
- compatible: should be "qca,qca8337" | ||
- #size-cells: must be 0 | ||
- #address-cells: must be 1 | ||
|
||
Subnodes: | ||
|
||
The integrated switch subnode should be specified according to the binding | ||
described in dsa/dsa.txt. As the QCA8K switches do not have a N:N mapping of | ||
port and PHY id, each subnode describing a port needs to have a valid phandle | ||
referencing the internal PHY connected to it. The CPU port of this switch is | ||
always port 0. | ||
|
||
Example: | ||
|
||
|
||
&mdio0 { | ||
phy_port1: phy@0 { | ||
reg = <0>; | ||
}; | ||
|
||
phy_port2: phy@1 { | ||
reg = <1>; | ||
}; | ||
|
||
phy_port3: phy@2 { | ||
reg = <2>; | ||
}; | ||
|
||
phy_port4: phy@3 { | ||
reg = <3>; | ||
}; | ||
|
||
phy_port5: phy@4 { | ||
reg = <4>; | ||
}; | ||
|
||
switch0@0 { | ||
compatible = "qca,qca8337"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
reg = <0>; | ||
|
||
ports { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
port@0 { | ||
reg = <0>; | ||
label = "cpu"; | ||
ethernet = <&gmac1>; | ||
phy-mode = "rgmii"; | ||
}; | ||
|
||
port@1 { | ||
reg = <1>; | ||
label = "lan1"; | ||
phy-handle = <&phy_port1>; | ||
}; | ||
|
||
port@2 { | ||
reg = <2>; | ||
label = "lan2"; | ||
phy-handle = <&phy_port2>; | ||
}; | ||
|
||
port@3 { | ||
reg = <3>; | ||
label = "lan3"; | ||
phy-handle = <&phy_port3>; | ||
}; | ||
|
||
port@4 { | ||
reg = <4>; | ||
label = "lan4"; | ||
phy-handle = <&phy_port4>; | ||
}; | ||
|
||
port@5 { | ||
reg = <5>; | ||
label = "wan"; | ||
phy-handle = <&phy_port5>; | ||
}; | ||
}; | ||
}; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
58 changes: 58 additions & 0 deletions
58
Documentation/devicetree/bindings/net/mscc-phy-vsc8531.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
* Microsemi - vsc8531 Giga bit ethernet phy | ||
|
||
Required properties: | ||
- compatible : Should contain phy id as "ethernet-phy-idAAAA.BBBB" | ||
The PHY device uses the binding described in | ||
Documentation/devicetree/bindings/net/phy.txt | ||
|
||
Optional properties: | ||
- vsc8531,vddmac : The vddmac in mV. | ||
- vsc8531,edge-slowdown : % the edge should be slowed down relative to | ||
the fastest possible edge time. Native sign | ||
need not enter. | ||
Edge rate sets the drive strength of the MAC | ||
interface output signals. Changing the drive | ||
strength will affect the edge rate of the output | ||
signal. The goal of this setting is to help | ||
reduce electrical emission (EMI) by being able | ||
to reprogram drive strength and in effect slow | ||
down the edge rate if desired. Table 1 shows the | ||
impact to the edge rate per VDDMAC supply for each | ||
drive strength setting. | ||
Ref: Table:1 - Edge rate change below. | ||
|
||
Note: see dt-bindings/net/mscc-phy-vsc8531.h for applicable values | ||
|
||
Table: 1 - Edge rate change | ||
----------------------------------------------------------------| | ||
| Edge Rate Change (VDDMAC) | | ||
| | | ||
| 3300 mV 2500 mV 1800 mV 1500 mV | | ||
|---------------------------------------------------------------| | ||
| Default Deafult Default Default | | ||
| (Fastest) (recommended) (recommended) | | ||
|---------------------------------------------------------------| | ||
| -2% -3% -5% -6% | | ||
|---------------------------------------------------------------| | ||
| -4% -6% -9% -14% | | ||
|---------------------------------------------------------------| | ||
| -7% -10% -16% -21% | | ||
|(recommended) (recommended) | | ||
|---------------------------------------------------------------| | ||
| -10% -14% -23% -29% | | ||
|---------------------------------------------------------------| | ||
| -17% -23% -35% -42% | | ||
|---------------------------------------------------------------| | ||
| -29% -37% -52% -58% | | ||
|---------------------------------------------------------------| | ||
| -53% -63% -76% -77% | | ||
| (slowest) | | ||
|---------------------------------------------------------------| | ||
|
||
Example: | ||
|
||
vsc8531_0: ethernet-phy@0 { | ||
compatible = "ethernet-phy-id0007.0570"; | ||
vsc8531,vddmac = <3300>; | ||
vsc8531,edge-slowdown = <21>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,111 @@ | ||
Qualcomm Technologies EMAC Gigabit Ethernet Controller | ||
|
||
This network controller consists of two devices: a MAC and an SGMII | ||
internal PHY. Each device is represented by a device tree node. A phandle | ||
connects the MAC node to its corresponding internal phy node. Another | ||
phandle points to the external PHY node. | ||
|
||
Required properties: | ||
|
||
MAC node: | ||
- compatible : Should be "qcom,fsm9900-emac". | ||
- reg : Offset and length of the register regions for the device | ||
- interrupts : Interrupt number used by this controller | ||
- mac-address : The 6-byte MAC address. If present, it is the default | ||
MAC address. | ||
- internal-phy : phandle to the internal PHY node | ||
- phy-handle : phandle the the external PHY node | ||
|
||
Internal PHY node: | ||
- compatible : Should be "qcom,fsm9900-emac-sgmii" or "qcom,qdf2432-emac-sgmii". | ||
- reg : Offset and length of the register region(s) for the device | ||
- interrupts : Interrupt number used by this controller | ||
|
||
The external phy child node: | ||
- reg : The phy address | ||
|
||
Example: | ||
|
||
FSM9900: | ||
|
||
soc { | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
|
||
emac0: ethernet@feb20000 { | ||
compatible = "qcom,fsm9900-emac"; | ||
reg = <0xfeb20000 0x10000>, | ||
<0xfeb36000 0x1000>; | ||
interrupts = <76>; | ||
|
||
clocks = <&gcc 0>, <&gcc 1>, <&gcc 3>, <&gcc 4>, <&gcc 5>, | ||
<&gcc 6>, <&gcc 7>; | ||
clock-names = "axi_clk", "cfg_ahb_clk", "high_speed_clk", | ||
"mdio_clk", "tx_clk", "rx_clk", "sys_clk"; | ||
|
||
internal-phy = <&emac_sgmii>; | ||
|
||
phy-handle = <&phy0>; | ||
|
||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
phy0: ethernet-phy@0 { | ||
reg = <0>; | ||
}; | ||
|
||
pinctrl-names = "default"; | ||
pinctrl-0 = <&mdio_pins_a>; | ||
}; | ||
|
||
emac_sgmii: ethernet@feb38000 { | ||
compatible = "qcom,fsm9900-emac-sgmii"; | ||
reg = <0xfeb38000 0x1000>; | ||
interrupts = <80>; | ||
}; | ||
|
||
tlmm: pinctrl@fd510000 { | ||
compatible = "qcom,fsm9900-pinctrl"; | ||
|
||
mdio_pins_a: mdio { | ||
state { | ||
pins = "gpio123", "gpio124"; | ||
function = "mdio"; | ||
}; | ||
}; | ||
}; | ||
|
||
|
||
QDF2432: | ||
|
||
soc { | ||
#address-cells = <2>; | ||
#size-cells = <2>; | ||
|
||
emac0: ethernet@38800000 { | ||
compatible = "qcom,fsm9900-emac"; | ||
reg = <0x0 0x38800000 0x0 0x10000>, | ||
<0x0 0x38816000 0x0 0x1000>; | ||
interrupts = <0 256 4>; | ||
|
||
clocks = <&gcc 0>, <&gcc 1>, <&gcc 3>, <&gcc 4>, <&gcc 5>, | ||
<&gcc 6>, <&gcc 7>; | ||
clock-names = "axi_clk", "cfg_ahb_clk", "high_speed_clk", | ||
"mdio_clk", "tx_clk", "rx_clk", "sys_clk"; | ||
|
||
internal-phy = <&emac_sgmii>; | ||
|
||
phy-handle = <&phy0>; | ||
|
||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
phy0: ethernet-phy@4 { | ||
reg = <4>; | ||
}; | ||
}; | ||
|
||
emac_sgmii: ethernet@410400 { | ||
compatible = "qcom,qdf2432-emac-sgmii"; | ||
reg = <0x0 0x00410400 0x0 0xc00>, /* Base address */ | ||
<0x0 0x00410000 0x0 0x400>; /* Per-lane digital */ | ||
interrupts = <0 254 1>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.