Skip to content

Commit 1a9239b

Browse files
committed
Merge tag 'net-next-6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next
Pull networking updates from Jakub Kicinski: "Core & protocols: - Continue Netlink conversions to per-namespace RTNL lock (IPv4 routing, routing rules, routing next hops, ARP ioctls) - Continue extending the use of netdev instance locks. As a driver opt-in protect queue operations and (in due course) ethtool operations with the instance lock and not RTNL lock. - Support collecting TCP timestamps (data submitted, sent, acked) in BPF, allowing for transparent (to the application) and lower overhead tracking of TCP RPC performance. - Tweak existing networking Rx zero-copy infra to support zero-copy Rx via io_uring. - Optimize MPTCP performance in single subflow mode by 29%. - Enable GRO on packets which went thru XDP CPU redirect (were queued for processing on a different CPU). Improving TCP stream performance up to 2x. - Improve performance of contended connect() by 200% by searching for an available 4-tuple under RCU rather than a spin lock. Bring an additional 229% improvement by tweaking hash distribution. - Avoid unconditionally touching sk_tsflags on RX, improving performance under UDP flood by as much as 10%. - Avoid skb_clone() dance in ping_rcv() to improve performance under ping flood. - Avoid FIB lookup in netfilter if socket is available, 20% perf win. - Rework network device creation (in-kernel) API to more clearly identify network namespaces and their roles. There are up to 4 namespace roles but we used to have just 2 netns pointer arguments, interpreted differently based on context. - Use sysfs_break_active_protection() instead of trylock to avoid deadlocks between unregistering objects and sysfs access. - Add a new sysctl and sockopt for capping max retransmit timeout in TCP. - Support masking port and DSCP in routing rule matches. - Support dumping IPv4 multicast addresses with RTM_GETMULTICAST. - Support specifying at what time packet should be sent on AF_XDP sockets. - Expose TCP ULP diagnostic info (for TLS and MPTCP) to non-admin users. - Add Netlink YAML spec for WiFi (nl80211) and conntrack. - Introduce EXPORT_IPV6_MOD() and EXPORT_IPV6_MOD_GPL() for symbols which only need to be exported when IPv6 support is built as a module. - Age FDB entries based on Rx not Tx traffic in VxLAN, similar to normal bridging. - Allow users to specify source port range for GENEVE tunnels. - netconsole: allow attaching kernel release, CPU ID and task name to messages as metadata Driver API: - Continue rework / fixing of Energy Efficient Ethernet (EEE) across the SW layers. Delegate the responsibilities to phylink where possible. Improve its handling in phylib. - Support symmetric OR-XOR RSS hashing algorithm. - Support tracking and preserving IRQ affinity by NAPI itself. - Support loopback mode speed selection for interface selftests. Device drivers: - Remove the IBM LCS driver for s390 - Remove the sb1000 cable modem driver - Add support for SFP module access over SMBus - Add MCTP transport driver for MCTP-over-USB - Enable XDP metadata support in multiple drivers - Ethernet high-speed NICs: - Broadcom (bnxt): - add PCIe TLP Processing Hints (TPH) support for new AMD platforms - support dumping RoCE queue state for debug - opt into instance locking - Intel (100G, ice, idpf): - ice: rework MSI-X IRQ management and distribution - ice: support for E830 devices - iavf: add support for Rx timestamping - iavf: opt into instance locking - nVidia/Mellanox: - mlx4: use page pool memory allocator for Rx - mlx5: support for one PTP device per hardware clock - mlx5: support for 200Gbps per-lane link modes - mlx5: move IPSec policy check after decryption - AMD/Solarflare: - support FW flashing via devlink - Cisco (enic): - use page pool memory allocator for Rx - enable 32, 64 byte CQEs - get max rx/tx ring size from the device - Meta (fbnic): - support flow steering and RSS configuration - report queue stats - support TCP segmentation - support IRQ coalescing - support ring size configuration - Marvell/Cavium: - support AF_XDP - Wangxun: - support for PTP clock and timestamping - Huawei (hibmcge): - checksum offload - add more statistics - Ethernet virtual: - VirtIO net: - aggressively suppress Tx completions, improve perf by 96% with 1 CPU and 55% with 2 CPUs - expose NAPI to IRQ mapping and persist NAPI settings - Google (gve): - support XDP in DQO RDA Queue Format - opt into instance locking - Microsoft vNIC: - support BIG TCP - Ethernet NICs consumer, and embedded: - Synopsys (stmmac): - cleanup Tx and Tx clock setting and other link-focused cleanups - enable SGMII and 2500BASEX mode switching for Intel platforms - support Sophgo SG2044 - Broadcom switches (b53): - support for BCM53101 - TI: - iep: add perout configuration support - icssg: support XDP - Cadence (macb): - implement BQL - Xilinx (axinet): - support dynamic IRQ moderation and changing coalescing at runtime - implement BQL - report standard stats - MediaTek: - support phylink managed EEE - Intel: - igc: don't restart the interface on every XDP program change - RealTek (r8169): - support reading registers of internal PHYs directly - increase max jumbo packet size on RTL8125/RTL8126 - Airoha: - support for RISC-V NPU packet processing unit - enable scatter-gather and support MTU up to 9kB - Tehuti (tn40xx): - support cards with TN4010 MAC and an Aquantia AQR105 PHY - Ethernet PHYs: - support for TJA1102S, TJA1121 - dp83tg720: add randomized polling intervals for link detection - dp83822: support changing the transmit amplitude voltage - support for LEDs on 88q2xxx - CAN: - canxl: support Remote Request Substitution bit access - flexcan: add S32G2/S32G3 SoC - WiFi: - remove cooked monitor support - strict mode for better AP testing - basic EPCS support - OMI RX bandwidth reduction support - batman-adv: add support for jumbo frames - WiFi drivers: - RealTek (rtw88): - support RTL8814AE and RTL8814AU - RealTek (rtw89): - switch using wiphy_lock and wiphy_work - add BB context to manipulate two PHY as preparation of MLO - improve BT-coexistence mechanism to play A2DP smoothly - Intel (iwlwifi): - add new iwlmld sub-driver for latest HW/FW combinations - MediaTek (mt76): - preparation for mt7996 Multi-Link Operation (MLO) support - Qualcomm/Atheros (ath12k): - continued work on MLO - Silabs (wfx): - Wake-on-WLAN support - Bluetooth: - add support for skb TX SND/COMPLETION timestamping - hci_core: enable buffer flow control for SCO/eSCO - coredump: log devcd dumps into the monitor - Bluetooth drivers: - intel: add support to configure TX power - nxp: handle bootloader error during cmd5 and cmd7" * tag 'net-next-6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1681 commits) unix: fix up for "apparmor: add fine grained af_unix mediation" mctp: Fix incorrect tx flow invalidation condition in mctp-i2c net: usb: asix: ax88772: Increase phy_name size net: phy: Introduce PHY_ID_SIZE — minimum size for PHY ID string net: libwx: fix Tx L4 checksum net: libwx: fix Tx descriptor content for some tunnel packets atm: Fix NULL pointer dereference net: tn40xx: add pci-id of the aqr105-based Tehuti TN4010 cards net: tn40xx: prepare tn40xx driver to find phy of the TN9510 card net: tn40xx: create swnode for mdio and aqr105 phy and add to mdiobus net: phy: aquantia: add essential functions to aqr105 driver net: phy: aquantia: search for firmware-name in fwnode net: phy: aquantia: add probe function to aqr105 for firmware loading net: phy: Add swnode support to mdiobus_scan gve: add XDP DROP and PASS support for DQ gve: update XDP allocation path support RX buffer posting gve: merge packet buffer size fields gve: update GQ RX to use buf_size gve: introduce config-based allocation for XDP gve: remove xdp_xsk_done and xdp_xsk_wakeup statistics ...
2 parents e61f332 + 023b1e9 commit 1a9239b

File tree

1,522 files changed

+130806
-42738
lines changed

Some content is hidden

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

1,522 files changed

+130806
-42738
lines changed

CREDITS

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3233,6 +3233,10 @@ N: Rui Prior
32333233
32343234
D: ATM device driver for NICStAR based cards
32353235

3236+
N: Roopa Prabhu
3237+
3238+
D: Bridge co-maintainer, vxlan and networking contributor
3239+
32363240
N: Stefan Probst
32373241
32383242
D: The Linux Support Team Erlangen, 1993-97

Documentation/arch/s390/driver-model.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ information about the interrupt from the irb parameter.
244244
--------------------
245245

246246
The ccwgroup mechanism is designed to handle devices consisting of multiple ccw
247-
devices, like lcs or ctc.
247+
devices, like qeth or ctc.
248248

249249
The ccw driver provides a 'group' attribute. Piping bus ids of ccw devices to
250250
this attributes creates a ccwgroup device consisting of these ccw devices (if

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

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,14 @@ properties:
6363
"#size-cells":
6464
const: 0
6565

66+
airoha,npu:
67+
$ref: /schemas/types.yaml#/definitions/phandle
68+
description:
69+
Phandle to the node used to configure the NPU module.
70+
The Airoha Network Processor Unit (NPU) provides a configuration
71+
interface to implement hardware flow offloading programming Packet
72+
Processor Engine (PPE) flow table.
73+
6674
patternProperties:
6775
"^ethernet@[1-4]$":
6876
type: object
@@ -132,6 +140,8 @@ examples:
132140
<GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>,
133141
<GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
134142
143+
airoha,npu = <&npu>;
144+
135145
#address-cells = <1>;
136146
#size-cells = <0>;
137147
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/net/airoha,en7581-npu.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Airoha Network Processor Unit for EN7581 SoC
8+
9+
maintainers:
10+
- Lorenzo Bianconi <[email protected]>
11+
12+
description:
13+
The Airoha Network Processor Unit (NPU) provides a configuration interface
14+
to implement wired and wireless hardware flow offloading programming Packet
15+
Processor Engine (PPE) flow table.
16+
17+
properties:
18+
compatible:
19+
enum:
20+
- airoha,en7581-npu
21+
22+
reg:
23+
maxItems: 1
24+
25+
interrupts:
26+
items:
27+
- description: mbox host irq line
28+
- description: watchdog0 irq line
29+
- description: watchdog1 irq line
30+
- description: watchdog2 irq line
31+
- description: watchdog3 irq line
32+
- description: watchdog4 irq line
33+
- description: watchdog5 irq line
34+
- description: watchdog6 irq line
35+
- description: watchdog7 irq line
36+
- description: wlan irq line0
37+
- description: wlan irq line1
38+
- description: wlan irq line2
39+
- description: wlan irq line3
40+
- description: wlan irq line4
41+
- description: wlan irq line5
42+
43+
memory-region:
44+
maxItems: 1
45+
description:
46+
Memory used to store NPU firmware binary.
47+
48+
required:
49+
- compatible
50+
- reg
51+
- interrupts
52+
- memory-region
53+
54+
additionalProperties: false
55+
56+
examples:
57+
- |
58+
#include <dt-bindings/interrupt-controller/arm-gic.h>
59+
#include <dt-bindings/interrupt-controller/irq.h>
60+
soc {
61+
#address-cells = <2>;
62+
#size-cells = <2>;
63+
64+
npu@1e900000 {
65+
compatible = "airoha,en7581-npu";
66+
reg = <0 0x1e900000 0 0x313000>;
67+
interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
68+
<GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
69+
<GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
70+
<GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
71+
<GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
72+
<GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
73+
<GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
74+
<GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
75+
<GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
76+
<GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
77+
<GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
78+
<GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
79+
<GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
80+
<GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
81+
<GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
82+
memory-region = <&npu_binary>;
83+
};
84+
};

Documentation/devicetree/bindings/net/amlogic,meson-dwmac.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -152,6 +152,12 @@ properties:
152152
The second range is is for the Amlogic specific configuration
153153
(for example the PRG_ETHERNET register range on Meson8b and newer)
154154

155+
interrupts:
156+
maxItems: 1
157+
158+
interrupt-names:
159+
const: macirq
160+
155161
required:
156162
- compatible
157163
- reg

Documentation/devicetree/bindings/net/bluetooth/nxp,88w8987-bt.yaml

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ description:
1717
maintainers:
1818
- Neeraj Sanjay Kale <[email protected]>
1919

20+
allOf:
21+
- $ref: bluetooth-controller.yaml#
22+
2023
properties:
2124
compatible:
2225
enum:
@@ -40,10 +43,20 @@ properties:
4043
Host-To-Chip power save mechanism is driven by this GPIO
4144
connected to BT_WAKE_IN pin of the NXP chipset.
4245

46+
nxp,wakein-pin:
47+
$ref: /schemas/types.yaml#/definitions/uint8
48+
description:
49+
The GPIO number of the NXP chipset used for BT_WAKE_IN.
50+
51+
nxp,wakeout-pin:
52+
$ref: /schemas/types.yaml#/definitions/uint8
53+
description:
54+
The GPIO number of the NXP chipset used for BT_WAKE_OUT.
55+
4356
required:
4457
- compatible
4558

46-
additionalProperties: false
59+
unevaluatedProperties: false
4760

4861
examples:
4962
- |
@@ -54,5 +67,8 @@ examples:
5467
fw-init-baudrate = <3000000>;
5568
firmware-name = "uartuart8987_bt_v0.bin";
5669
device-wakeup-gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
70+
nxp,wakein-pin = /bits/ 8 <18>;
71+
nxp,wakeout-pin = /bits/ 8 <19>;
72+
local-bd-address = [66 55 44 33 22 11];
5773
};
5874
};

Documentation/devicetree/bindings/net/bluetooth/qualcomm-bluetooth.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ properties:
1919
- qcom,qca2066-bt
2020
- qcom,qca6174-bt
2121
- qcom,qca9377-bt
22+
- qcom,wcn3950-bt
2223
- qcom,wcn3988-bt
2324
- qcom,wcn3990-bt
2425
- qcom,wcn3991-bt
@@ -138,6 +139,7 @@ allOf:
138139
compatible:
139140
contains:
140141
enum:
142+
- qcom,wcn3950-bt
141143
- qcom,wcn3988-bt
142144
- qcom,wcn3990-bt
143145
- qcom,wcn3991-bt

Documentation/devicetree/bindings/net/can/fsl,flexcan.yaml

Lines changed: 53 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,6 @@ title:
1010
maintainers:
1111
- Marc Kleine-Budde <[email protected]>
1212

13-
allOf:
14-
- $ref: can-controller.yaml#
15-
1613
properties:
1714
compatible:
1815
oneOf:
@@ -28,6 +25,7 @@ properties:
2825
- fsl,vf610-flexcan
2926
- fsl,ls1021ar2-flexcan
3027
- fsl,lx2160ar1-flexcan
28+
- nxp,s32g2-flexcan
3129
- items:
3230
- enum:
3331
- fsl,imx53-flexcan
@@ -43,12 +41,25 @@ properties:
4341
- enum:
4442
- fsl,ls1028ar1-flexcan
4543
- const: fsl,lx2160ar1-flexcan
44+
- items:
45+
- enum:
46+
- nxp,s32g3-flexcan
47+
- const: nxp,s32g2-flexcan
48+
- items:
49+
- enum:
50+
- fsl,imx94-flexcan
51+
- const: fsl,imx95-flexcan
4652

4753
reg:
4854
maxItems: 1
4955

5056
interrupts:
51-
maxItems: 1
57+
minItems: 1
58+
maxItems: 4
59+
60+
interrupt-names:
61+
minItems: 1
62+
maxItems: 4
5263

5364
clocks:
5465
maxItems: 2
@@ -70,6 +81,9 @@ properties:
7081
xceiver-supply:
7182
description: Regulator that powers the CAN transceiver.
7283

84+
phys:
85+
maxItems: 1
86+
7387
big-endian:
7488
$ref: /schemas/types.yaml#/definitions/flag
7589
description: |
@@ -136,6 +150,41 @@ required:
136150
- reg
137151
- interrupts
138152

153+
allOf:
154+
- $ref: can-controller.yaml#
155+
- if:
156+
properties:
157+
compatible:
158+
contains:
159+
const: nxp,s32g2-flexcan
160+
then:
161+
properties:
162+
interrupts:
163+
items:
164+
- description: Message Buffer interrupt for mailboxes 0-7 and Enhanced RX FIFO
165+
- description: Device state change
166+
- description: Bus Error detection
167+
- description: Message Buffer interrupt for mailboxes 8-127
168+
interrupt-names:
169+
items:
170+
- const: mb-0
171+
- const: state
172+
- const: berr
173+
- const: mb-1
174+
required:
175+
- interrupt-names
176+
else:
177+
properties:
178+
interrupts:
179+
maxItems: 1
180+
interrupt-names: false
181+
- if:
182+
required:
183+
- xceiver-supply
184+
then:
185+
properties:
186+
phys: false
187+
139188
additionalProperties: false
140189

141190
examples:

Documentation/devicetree/bindings/net/dsa/brcm,b53.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ properties:
1616
compatible:
1717
oneOf:
1818
- const: brcm,bcm5325
19+
- const: brcm,bcm53101
1920
- const: brcm,bcm53115
2021
- const: brcm,bcm53125
2122
- const: brcm,bcm53128
@@ -77,6 +78,7 @@ allOf:
7778
contains:
7879
enum:
7980
- brcm,bcm5325
81+
- brcm,bcm53101
8082
- brcm,bcm53115
8183
- brcm,bcm53125
8284
- brcm,bcm53128

Documentation/devicetree/bindings/net/ethernet-phy.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,12 @@ properties:
232232
PHY's that have configurable TX internal delays. If this property is
233233
present then the PHY applies the TX delay.
234234
235+
tx-amplitude-100base-tx-percent:
236+
description:
237+
Transmit amplitude gain applied for 100BASE-TX. 100% matches 2V
238+
peak-to-peak specified in ANSI X3.263. When omitted, the PHYs default
239+
will be left as is.
240+
235241
leds:
236242
type: object
237243

Documentation/devicetree/bindings/net/faraday,ftgmac100.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,9 @@ properties:
4444
phy-mode:
4545
enum:
4646
- rgmii
47+
- rgmii-id
48+
- rgmii-rxid
49+
- rgmii-txid
4750
- rmii
4851

4952
phy-handle: true

0 commit comments

Comments
 (0)