Skip to content

Commit 37a93dd

Browse files
committed
Merge tag 'net-next-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next
Pull networking updates from Paolo Abeni: "Core & protocols: - A significant effort all around the stack to guide the compiler to make the right choice when inlining code, to avoid unneeded calls for small helper and stack canary overhead in the fast-path. This generates better and faster code with very small or no text size increases, as in many cases the call generated more code than the actual inlined helper. - Extend AccECN implementation so that is now functionally complete, also allow the user-space enabling it on a per network namespace basis. - Add support for memory providers with large (above 4K) rx buffer. Paired with hw-gro, larger rx buffer sizes reduce the number of buffers traversing the stack, dincreasing single stream CPU usage by up to ~30%. - Do not add HBH header to Big TCP GSO packets. This simplifies the RX path, the TX path and the NIC drivers, and is possible because user-space taps can now interpret correctly such packets without the HBH hint. - Allow IPv6 routes to be configured with a gateway address that is resolved out of a different interface than the one specified, aligning IPv6 to IPv4 behavior. - Multi-queue aware sch_cake. This makes it possible to scale the rate shaper of sch_cake across multiple CPUs, while still enforcing a single global rate on the interface. - Add support for the nbcon (new buffer console) infrastructure to netconsole, enabling lock-free, priority-based console operations that are safer in crash scenarios. - Improve the TCP ipv6 output path to cache the flow information, saving cpu cycles, reducing cache line misses and stack use. - Improve netfilter packet tracker to resolve clashes for most protocols, avoiding unneeded drops on rare occasions. - Add IP6IP6 tunneling acceleration to the flowtable infrastructure. - Reduce tcp socket size by one cache line. - Notify neighbour changes atomically, avoiding inconsistencies between the notification sequence and the actual states sequence. - Add vsock namespace support, allowing complete isolation of vsocks across different network namespaces. - Improve xsk generic performances with cache-alignment-oriented optimizations. - Support netconsole automatic target recovery, allowing netconsole to reestablish targets when underlying low-level interface comes back online. Driver API: - Support for switching the working mode (automatic vs manual) of a DPLL device via netlink. - Introduce PHY ports representation to expose multiple front-facing media ports over a single MAC. - Introduce "rx-polarity" and "tx-polarity" device tree properties, to generalize polarity inversion requirements for differential signaling. - Add helper to create, prepare and enable managed clocks. Device drivers: - Add Huawei hinic3 PF etherner driver. - Add DWMAC glue driver for Motorcomm YT6801 PCIe ethernet controller. - Add ethernet driver for MaxLinear MxL862xx switches - Remove parallel-port Ethernet driver. - Convert existing driver timestamp configuration reporting to hwtstamp_get and remove legacy ioctl(). - Convert existing drivers to .get_rx_ring_count(), simplifing the RX ring count retrieval. Also remove the legacy fallback path. - Ethernet high-speed NICs: - Broadcom (bnxt, bng): - bnxt: add FW interface update to support FEC stats histogram and NVRAM defragmentation - bng: add TSO and H/W GRO support - nVidia/Mellanox (mlx5): - improve latency of channel restart operations, reducing the used H/W resources - add TSO support for UDP over GRE over VLAN - add flow counters support for hardware steering (HWS) rules - use a static memory area to store headers for H/W GRO, leading to 12% RX tput improvement - Intel (100G, ice, idpf): - ice: reorganizes layout of Tx and Rx rings for cacheline locality and utilizes __cacheline_group* macros on the new layouts - ice: introduces Synchronous Ethernet (SyncE) support - Meta (fbnic): - adds debugfs for firmware mailbox and tx/rx rings vectors - Ethernet virtual: - geneve: introduce GRO/GSO support for double UDP encapsulation - Ethernet NICs consumer, and embedded: - Synopsys (stmmac): - some code refactoring and cleanups - RealTek (r8169): - add support for RTL8127ATF (10G Fiber SFP) - add dash and LTR support - Airoha: - AN8811HB 2.5 Gbps phy support - Freescale (fec): - add XDP zero-copy support - Thunderbolt: - add get link setting support to allow bonding - Renesas: - add support for RZ/G3L GBETH SoC - Ethernet switches: - Maxlinear: - support R(G)MII slow rate configuration - add support for Intel GSW150 - Motorcomm (yt921x): - add DCB/QoS support - TI: - icssm-prueth: support bridging (STP/RSTP) via the switchdev framework - Ethernet PHYs: - Realtek: - enable SGMII and 2500Base-X in-band auto-negotiation - simplify and reunify C22/C45 drivers - Micrel: convert bindings to DT schema - CAN: - move skb headroom content into skb extensions, making CAN metadata access more robust - CAN drivers: - rcar_canfd: - add support for FD-only mode - add support for the RZ/T2H SoC - sja1000: cleanup the CAN state handling - WiFi: - implement EPPKE/802.1X over auth frames support - split up drop reasons better, removing generic RX_DROP - additional FTM capabilities: 6 GHz support, supported number of spatial streams and supported number of LTF repetitions - better mac80211 iterators to enumerate resources - initial UHR (Wi-Fi 8) support for cfg80211/mac80211 - WiFi drivers: - Qualcomm/Atheros: - ath11k: support for Channel Frequency Response measurement - ath12k: a significant driver refactor to support multi-wiphy devices and and pave the way for future device support in the same driver (rather than splitting to ath13k) - ath12k: support for the QCC2072 chipset - Intel: - iwlwifi: partial Neighbor Awareness Networking (NAN) support - iwlwifi: initial support for U-NII-9 and IEEE 802.11bn - RealTek (rtw89): - preparations for RTL8922DE support - Bluetooth: - implement setsockopt(BT_PHY) to set the connection packet type/PHY - set link_policy on incoming ACL connections - Bluetooth drivers: - btusb: add support for MediaTek7920, Realtek RTL8761BU and 8851BE - btqca: add WCN6855 firmware priority selection feature" * tag 'net-next-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1254 commits) bnge/bng_re: Add a new HSI net: macb: Fix tx/rx malfunction after phy link down and up af_unix: Fix memleak of newsk in unix_stream_connect(). net: ti: icssg-prueth: Add optional dependency on HSR net: dsa: add basic initial driver for MxL862xx switches net: mdio: add unlocked mdiodev C45 bus accessors net: dsa: add tag format for MxL862xx switches dt-bindings: net: dsa: add MaxLinear MxL862xx selftests: drivers: net: hw: Modify toeplitz.c to poll for packets octeontx2-pf: Unregister devlink on probe failure net: renesas: rswitch: fix forwarding offload statemachine ionic: Rate limit unknown xcvr type messages tcp: inet6_csk_xmit() optimization tcp: populate inet->cork.fl.u.ip6 in tcp_v6_syn_recv_sock() tcp: populate inet->cork.fl.u.ip6 in tcp_v6_connect() ipv6: inet6_csk_xmit() and inet6_csk_update_pmtu() use inet->cork.fl.u.ip6 ipv6: use inet->cork.fl.u.ip6 and np->final in ip6_datagram_dst_update() ipv6: use np->final in inet6_sk_rebuild_header() ipv6: add daddr/final storage in struct ipv6_pinfo net: stmmac: qcom-ethqos: fix qcom_ethqos_serdes_powerup() ...
2 parents 098b6e4 + 83310d6 commit 37a93dd

1,252 files changed

Lines changed: 94757 additions & 48974 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CREDITS

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2663,6 +2663,10 @@ S: 3404 E. Harmony Road
26632663
S: Fort Collins, CO 80528
26642664
S: USA
26652665

2666+
N: Jon Mason
2667+
E: jdmason@kudzu.us
2668+
D: Neterion 10GbE drivers (s2io/vxge)
2669+
26662670
N: Torben Mathiasen
26672671
E: torben.mathiasen@compaq.com
26682672
E: torben@kernel.dk
@@ -3810,6 +3814,10 @@ S: Post Office Box 500
38103814
S: Batavia, Illinois 60510
38113815
S: USA
38123816

3817+
N: Jes Sorensen
3818+
E: jes@trained-monkey.org
3819+
D: HIPPI support and Essential RoadRunner driver
3820+
38133821
N: Leo Spiekman
38143822
E: leo@netlabs.net
38153823
W: http://www.netlabs.net/hp/leo/

Documentation/.renames.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -819,7 +819,6 @@ networking/device_drivers/intel/ixgbe networking/device_drivers/ethernet/intel/i
819819
networking/device_drivers/intel/ixgbevf networking/device_drivers/ethernet/intel/ixgbevf
820820
networking/device_drivers/marvell/octeontx2 networking/device_drivers/ethernet/marvell/octeontx2
821821
networking/device_drivers/microsoft/netvsc networking/device_drivers/ethernet/microsoft/netvsc
822-
networking/device_drivers/neterion/s2io networking/device_drivers/ethernet/neterion/s2io
823822
networking/device_drivers/netronome/nfp networking/device_drivers/ethernet/netronome/nfp
824823
networking/device_drivers/pensando/ionic networking/device_drivers/ethernet/pensando/ionic
825824
networking/device_drivers/qualcomm/rmnet networking/device_drivers/cellular/qualcomm/rmnet

Documentation/PCI/pci-error-recovery.rst

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -460,7 +460,6 @@ That is, the recovery API only requires that:
460460
- drivers/net/e1000e
461461
- drivers/net/ixgbe
462462
- drivers/net/cxgb3
463-
- drivers/net/s2io.c
464463

465464
The cor_error_detected() callback is invoked in handle_error_source() when
466465
the error severity is "correctable". The callback is optional and allows

Documentation/admin-guide/sysctl/net.rst

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -314,21 +314,22 @@ Default: 1000
314314
netdev_rss_key
315315
--------------
316316

317-
RSS (Receive Side Scaling) enabled drivers use a 40 bytes host key that is
318-
randomly generated.
317+
RSS (Receive Side Scaling) enabled drivers use a host key that
318+
is randomly generated.
319319
Some user space might need to gather its content even if drivers do not
320320
provide ethtool -x support yet.
321321

322322
::
323323

324324
myhost:~# cat /proc/sys/net/core/netdev_rss_key
325-
84:50:f4:00:a8:15:d1:a7:e9:7f:1d:60:35:c7:47:25:42:97:74:ca:56:bb:b6:a1:d8: ... (52 bytes total)
325+
84:50:f4:00:a8:15:d1:a7:e9:7f:1d:60:35:c7:47:25:42:97:74:ca:56:bb:b6:a1:d8: ... (256 bytes total)
326326

327-
File contains nul bytes if no driver ever called netdev_rss_key_fill() function.
327+
File contains all nul bytes if no driver ever called netdev_rss_key_fill()
328+
function.
328329

329330
Note:
330-
/proc/sys/net/core/netdev_rss_key contains 52 bytes of key,
331-
but most drivers only use 40 bytes of it.
331+
/proc/sys/net/core/netdev_rss_key contains 256 bytes of key,
332+
but many drivers only use 40 or 52 bytes of it.
332333

333334
::
334335

Documentation/devicetree/bindings/net/adi,adin.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,20 @@ properties:
5252
description: Enable 25MHz reference clock output on CLK25_REF pin.
5353
type: boolean
5454

55+
adi,low-cmode-impedance:
56+
description: |
57+
Configure PHY for the lowest common-mode impedance on the receive pair
58+
for 100BASE-TX. This is suited for capacitive coupled applications and
59+
other applications where there may be a path for high common-mode noise
60+
to reach the PHY.
61+
If not present, by default the PHY is configured for normal termination
62+
(zero-power termination) mode.
63+
64+
Note: There is a trade-off of 12 mW increased power consumption with
65+
the lowest common-mode impedance setting, but in all cases the
66+
differential impedance is 100 ohms.
67+
type: boolean
68+
5569
unevaluatedProperties: false
5670

5771
examples:

Documentation/devicetree/bindings/net/airoha,en7581-npu.yaml

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -42,21 +42,27 @@ properties:
4242
- description: wlan irq line5
4343

4444
memory-region:
45-
oneOf:
46-
- items:
47-
- description: NPU firmware binary region
48-
- items:
49-
- description: NPU firmware binary region
50-
- description: NPU wlan offload RX buffers region
51-
- description: NPU wlan offload TX buffers region
52-
- description: NPU wlan offload TX packet identifiers region
45+
items:
46+
- description: NPU firmware binary region
47+
- description: NPU wlan offload RX buffers region
48+
- description: NPU wlan offload TX buffers region
49+
- description: NPU wlan offload TX packet identifiers region
50+
- description: NPU wlan Block Ack buffers region
51+
minItems: 1
5352

5453
memory-region-names:
5554
items:
5655
- const: firmware
5756
- const: pkt
5857
- const: tx-pkt
5958
- const: tx-bufid
59+
- const: ba
60+
minItems: 1
61+
62+
firmware-name:
63+
items:
64+
- description: Firmware name of RiscV core
65+
- description: Firmware name of Data section
6066

6167
required:
6268
- compatible
@@ -93,7 +99,9 @@ examples:
9399
<GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
94100
<GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
95101
memory-region = <&npu_firmware>, <&npu_pkt>, <&npu_txpkt>,
96-
<&npu_txbufid>;
97-
memory-region-names = "firmware", "pkt", "tx-pkt", "tx-bufid";
102+
<&npu_txbufid>, <&npu_ba>;
103+
memory-region-names = "firmware", "pkt", "tx-pkt", "tx-bufid", "ba";
104+
firmware-name = "airoha/en7581_npu_rv32.bin",
105+
"airoha/en7581_npu_data.bin";
98106
};
99107
};

Documentation/devicetree/bindings/net/airoha,en8811h.yaml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ description:
1616

1717
allOf:
1818
- $ref: ethernet-phy.yaml#
19+
- $ref: /schemas/phy/phy-common-props.yaml#
1920

2021
properties:
2122
compatible:
@@ -30,12 +31,18 @@ properties:
3031
description:
3132
Reverse rx polarity of the SERDES. This is the receiving
3233
side of the lines from the MAC towards the EN881H.
34+
This property is deprecated, for details please refer to
35+
Documentation/devicetree/bindings/phy/phy-common-props.yaml
36+
deprecated: true
3337

3438
airoha,pnswap-tx:
3539
type: boolean
3640
description:
3741
Reverse tx polarity of SERDES. This is the transmitting
3842
side of the lines from EN8811H towards the MAC.
43+
This property is deprecated, for details please refer to
44+
Documentation/devicetree/bindings/phy/phy-common-props.yaml
45+
deprecated: true
3946

4047
required:
4148
- reg
@@ -44,13 +51,15 @@ unevaluatedProperties: false
4451

4552
examples:
4653
- |
54+
#include <dt-bindings/phy/phy.h>
55+
4756
mdio {
4857
#address-cells = <1>;
4958
#size-cells = <0>;
5059
5160
ethernet-phy@1 {
5261
compatible = "ethernet-phy-id03a2.a411";
5362
reg = <1>;
54-
airoha,pnswap-rx;
63+
rx-polarity = <PHY_POL_INVERT>;
5564
};
5665
};
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/net/bluetooth/qcom,bluetooth-common.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Bluetooth Common Properties
8+
9+
maintainers:
10+
- Balakrishna Godavarthi <quic_bgodavar@quicinc.com>
11+
- Rocky Liao <quic_rjliao@quicinc.com>
12+
13+
properties:
14+
firmware-name:
15+
minItems: 1
16+
items:
17+
- description: specify the name of nvm firmware to load
18+
- description: specify the name of rampatch firmware to load
19+
20+
qcom,local-bd-address-broken:
21+
type: boolean
22+
description:
23+
boot firmware is incorrectly passing the address in big-endian order
24+
25+
additionalProperties: true
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/net/bluetooth/qcom,qca2066-bt.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm QCA2006 Bluetooth
8+
9+
maintainers:
10+
- Balakrishna Godavarthi <quic_bgodavar@quicinc.com>
11+
- Rocky Liao <quic_rjliao@quicinc.com>
12+
13+
properties:
14+
compatible:
15+
enum:
16+
- qcom,qca2066-bt
17+
- qcom,qca6174-bt
18+
19+
clocks:
20+
items:
21+
- description: External low-power 32.768 kHz clock input
22+
23+
enable-gpios:
24+
maxItems: 1
25+
26+
required:
27+
- compatible
28+
- clocks
29+
- enable-gpios
30+
31+
allOf:
32+
- $ref: bluetooth-controller.yaml#
33+
- $ref: qcom,bluetooth-common.yaml
34+
- $ref: /schemas/serial/serial-peripheral-props.yaml#
35+
36+
unevaluatedProperties: false
37+
38+
examples:
39+
- |
40+
#include <dt-bindings/gpio/gpio.h>
41+
42+
serial {
43+
bluetooth {
44+
compatible = "qcom,qca6174-bt";
45+
clocks = <&divclk4>;
46+
enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>;
47+
firmware-name = "nvm_00440302.bin";
48+
};
49+
};
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/net/bluetooth/qcom,qca6390-bt.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm QCA6390 Bluetooth
8+
9+
maintainers:
10+
- Balakrishna Godavarthi <quic_bgodavar@quicinc.com>
11+
- Rocky Liao <quic_rjliao@quicinc.com>
12+
13+
properties:
14+
compatible:
15+
enum:
16+
- qcom,qca6390-bt
17+
18+
vddaon-supply:
19+
description: VDD_AON supply regulator handle
20+
21+
vddbtcmx-supply:
22+
description: VDD_BT_CMX supply regulator handle
23+
24+
vddrfa0p8-supply:
25+
description: VDD_RFA_0P8 supply regulator handle
26+
27+
vddrfa1p2-supply:
28+
description: VDD_RFA_1P2 supply regulator handle
29+
30+
vddrfa1p7-supply:
31+
description: VDD_RFA_1P7 supply regulator handle
32+
33+
vddrfacmn-supply:
34+
description: VDD_RFA_CMN supply regulator handle
35+
36+
required:
37+
- compatible
38+
- vddaon-supply
39+
- vddbtcmx-supply
40+
- vddrfa0p8-supply
41+
- vddrfa1p2-supply
42+
- vddrfa1p7-supply
43+
- vddrfacmn-supply
44+
45+
allOf:
46+
- $ref: bluetooth-controller.yaml#
47+
- $ref: qcom,bluetooth-common.yaml
48+
- $ref: /schemas/serial/serial-peripheral-props.yaml#
49+
50+
unevaluatedProperties: false
51+
52+
examples:
53+
- |
54+
serial {
55+
bluetooth {
56+
compatible = "qcom,qca6390-bt";
57+
vddaon-supply = <&vreg_pmu_aon_0p59>;
58+
vddbtcmx-supply = <&vreg_pmu_btcmx_0p85>;
59+
vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
60+
vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
61+
vddrfa1p7-supply = <&vreg_pmu_rfa_1p7>;
62+
vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
63+
};
64+
};

0 commit comments

Comments
 (0)