Skip to content

Commit 2670a39

Browse files
Merge tag 'riscv-mw2-6.16-rc1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/alexghiti/linux into for-next
riscv patches for 6.16-rc1, part 2 * Performance improvements - Add support for vdso getrandom - Implement raid6 calculations using vectors - Introduce svinval tlb invalidation * Cleanup - A bunch of deduplication of the macros we use for manipulating instructions * Misc - Introduce a kunit test for kprobes - Add support for mseal as riscv fits the requirements (thanks to Lorenzo for making sure of that :)) [Palmer: There was a rebase between part 1 and part 2, so I've had to do some more git surgery here... at least two rounds of surgery...] * alex-pr-2: (866 commits) RISC-V: vDSO: Wire up getrandom() vDSO implementation riscv: enable mseal sysmap for RV64 raid6: Add RISC-V SIMD syndrome and recovery calculations riscv: mm: Add support for Svinval extension riscv: Add kprobes KUnit test riscv: kprobes: Remove duplication of RV_EXTRACT_ITYPE_IMM riscv: kprobes: Remove duplication of RV_EXTRACT_UTYPE_IMM riscv: kprobes: Remove duplication of RV_EXTRACT_RD_REG riscv: kprobes: Remove duplication of RVC_EXTRACT_BTYPE_IMM riscv: kprobes: Remove duplication of RVC_EXTRACT_C2_RS1_REG riscv: kproves: Remove duplication of RVC_EXTRACT_JTYPE_IMM riscv: kprobes: Remove duplication of RV_EXTRACT_BTYPE_IMM riscv: kprobes: Remove duplication of RV_EXTRACT_RS1_REG riscv: kprobes: Remove duplication of RV_EXTRACT_JTYPE_IMM riscv: kprobes: Move branch_funct3 to insn.h riscv: kprobes: Move branch_rs2_idx to insn.h Linux 6.15-rc6 Input: xpad - fix xpad_device sorting Input: xpad - add support for several more controllers Input: xpad - fix Share button on Xbox One controllers ...
2 parents 7bc76fb + ee0d030 commit 2670a39

File tree

831 files changed

+11908
-5027
lines changed

Some content is hidden

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

831 files changed

+11908
-5027
lines changed

.clippy.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ check-private-items = true
77
disallowed-macros = [
88
# The `clippy::dbg_macro` lint only works with `std::dbg!`, thus we simulate
99
# it here, see: https://github.com/rust-lang/rust-clippy/issues/11303.
10-
{ path = "kernel::dbg", reason = "the `dbg!` macro is intended as a debugging tool" },
10+
{ path = "kernel::dbg", reason = "the `dbg!` macro is intended as a debugging tool", allow-invalid = true },
1111
]

.mailmap

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -448,6 +448,8 @@ Luca Ceresoli <[email protected]> <[email protected]>
448448
449449
450450
451+
452+
451453
452454
453455
Maharaja Kennadyrajan <[email protected]> <[email protected]>
@@ -484,6 +486,7 @@ Matthias Fuchs <[email protected]> <[email protected]>
484486
485487
Matthieu CASTET <[email protected]>
486488
489+
Mattijs Korpershoek <[email protected]> <[email protected]>
487490
488491
489492
Matt Ranostay <[email protected]> Matthew Ranostay <[email protected]>
@@ -750,6 +753,7 @@ Tvrtko Ursulin <[email protected]> <[email protected]>
750753
751754
752755
Uwe Kleine-König <[email protected]>
756+
753757
Uwe Kleine-König <[email protected]>
754758
Uwe Kleine-König <[email protected]>
755759
Uwe Kleine-König <[email protected]>

Documentation/ABI/testing/sysfs-driver-intel-xe-hwmon

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,15 +111,15 @@ Description: RO. Package current voltage in millivolt.
111111

112112
What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/temp2_input
113113
Date: March 2025
114-
KernelVersion: 6.14
114+
KernelVersion: 6.15
115115
116116
Description: RO. Package temperature in millidegree Celsius.
117117

118118
Only supported for particular Intel Xe graphics platforms.
119119

120120
What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/temp3_input
121121
Date: March 2025
122-
KernelVersion: 6.14
122+
KernelVersion: 6.15
123123
124124
Description: RO. VRAM temperature in millidegree Celsius.
125125

Documentation/admin-guide/xfs.rst

Lines changed: 8 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -562,7 +562,7 @@ The interesting knobs for XFS workqueues are as follows:
562562
Zoned Filesystems
563563
=================
564564

565-
For zoned file systems, the following attribute is exposed in:
565+
For zoned file systems, the following attributes are exposed in:
566566

567567
/sys/fs/xfs/<dev>/zoned/
568568

@@ -572,23 +572,10 @@ For zoned file systems, the following attribute is exposed in:
572572
is limited by the capabilities of the backing zoned device, file system
573573
size and the max_open_zones mount option.
574574

575-
Zoned Filesystems
576-
=================
577-
578-
For zoned file systems, the following attributes are exposed in:
579-
580-
/sys/fs/xfs/<dev>/zoned/
581-
582-
max_open_zones (Min: 1 Default: Varies Max: UINTMAX)
583-
This read-only attribute exposes the maximum number of open zones
584-
available for data placement. The value is determined at mount time and
585-
is limited by the capabilities of the backing zoned device, file system
586-
size and the max_open_zones mount option.
587-
588-
zonegc_low_space (Min: 0 Default: 0 Max: 100)
589-
Define a percentage for how much of the unused space that GC should keep
590-
available for writing. A high value will reclaim more of the space
591-
occupied by unused blocks, creating a larger buffer against write
592-
bursts at the cost of increased write amplification. Regardless
593-
of this value, garbage collection will always aim to free a minimum
594-
amount of blocks to keep max_open_zones open for data placement purposes.
575+
zonegc_low_space (Min: 0 Default: 0 Max: 100)
576+
Define a percentage for how much of the unused space that GC should keep
577+
available for writing. A high value will reclaim more of the space
578+
occupied by unused blocks, creating a larger buffer against write
579+
bursts at the cost of increased write amplification. Regardless
580+
of this value, garbage collection will always aim to free a minimum
581+
amount of blocks to keep max_open_zones open for data placement purposes.

Documentation/arch/openrisc/openrisc_port.rst

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ target architecture, specifically, is the 32-bit OpenRISC 1000 family (or1k).
77

88
For information about OpenRISC processors and ongoing development:
99

10-
======= =============================
10+
======= ==============================
1111
website https://openrisc.io
12-
email openrisc@lists.librecores.org
13-
======= =============================
12+
email linux-openrisc@vger.kernel.org
13+
======= ==============================
1414

1515
---------------------------------------------------------------------
1616

@@ -27,11 +27,11 @@ Toolchain binaries can be obtained from openrisc.io or our github releases page.
2727
Instructions for building the different toolchains can be found on openrisc.io
2828
or Stafford's toolchain build and release scripts.
2929

30-
========== =================================================
31-
binaries https://github.com/openrisc/or1k-gcc/releases
30+
========== ==========================================================
31+
binaries https://github.com/stffrdhrn/or1k-toolchain-build/releases
3232
toolchains https://openrisc.io/software
3333
building https://github.com/stffrdhrn/or1k-toolchain-build
34-
========== =================================================
34+
========== ==========================================================
3535

3636
2) Building
3737

Documentation/bpf/bpf_devel_QA.rst

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -382,6 +382,14 @@ In case of new BPF instructions, once the changes have been accepted
382382
into the Linux kernel, please implement support into LLVM's BPF back
383383
end. See LLVM_ section below for further information.
384384

385+
Q: What "BPF_INTERNAL" symbol namespace is for?
386+
-----------------------------------------------
387+
A: Symbols exported as BPF_INTERNAL can only be used by BPF infrastructure
388+
like preload kernel modules with light skeleton. Most symbols outside
389+
of BPF_INTERNAL are not expected to be used by code outside of BPF either.
390+
Symbols may lack the designation because they predate the namespaces,
391+
or due to an oversight.
392+
385393
Stable submission
386394
=================
387395

Documentation/devicetree/bindings/input/mediatek,mt6779-keypad.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
77
title: Mediatek's Keypad Controller
88

99
maintainers:
10-
- Mattijs Korpershoek <mkorpershoek@baylibre.com>
10+
- Mattijs Korpershoek <mkorpershoek@kernel.org>
1111

1212
allOf:
1313
- $ref: /schemas/input/matrix-keymap.yaml#

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

Lines changed: 90 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -74,19 +74,17 @@ properties:
7474
- rev-rmii
7575
- moca
7676

77-
# RX and TX delays are added by the MAC when required
77+
# RX and TX delays are provided by the PCB. See below
7878
- rgmii
7979

80-
# RGMII with internal RX and TX delays provided by the PHY,
81-
# the MAC should not add the RX or TX delays in this case
80+
# RX and TX delays are not provided by the PCB. This is the most
81+
# frequent case. See below
8282
- rgmii-id
8383

84-
# RGMII with internal RX delay provided by the PHY, the MAC
85-
# should not add an RX delay in this case
84+
# TX delay is provided by the PCB. See below
8685
- rgmii-rxid
8786

88-
# RGMII with internal TX delay provided by the PHY, the MAC
89-
# should not add an TX delay in this case
87+
# RX delay is provided by the PCB. See below
9088
- rgmii-txid
9189
- rtbi
9290
- smii
@@ -286,4 +284,89 @@ allOf:
286284

287285
additionalProperties: true
288286

287+
# Informative
288+
# ===========
289+
#
290+
# 'phy-modes' & 'phy-connection-type' properties 'rgmii', 'rgmii-id',
291+
# 'rgmii-rxid', and 'rgmii-txid' are frequently used wrongly by
292+
# developers. This informative section clarifies their usage.
293+
#
294+
# The RGMII specification requires a 2ns delay between the data and
295+
# clock signals on the RGMII bus. How this delay is implemented is not
296+
# specified.
297+
#
298+
# One option is to make the clock traces on the PCB longer than the
299+
# data traces. A sufficiently difference in length can provide the 2ns
300+
# delay. If both the RX and TX delays are implemented in this manner,
301+
# 'rgmii' should be used, so indicating the PCB adds the delays.
302+
#
303+
# If the PCB does not add these delays via extra long traces,
304+
# 'rgmii-id' should be used. Here, 'id' refers to 'internal delay',
305+
# where either the MAC or PHY adds the delay.
306+
#
307+
# If only one of the two delays are implemented via extra long clock
308+
# lines, either 'rgmii-rxid' or 'rgmii-txid' should be used,
309+
# indicating the MAC or PHY should implement one of the delays
310+
# internally, while the PCB implements the other delay.
311+
#
312+
# Device Tree describes hardware, and in this case, it describes the
313+
# PCB between the MAC and the PHY, if the PCB implements delays or
314+
# not.
315+
#
316+
# In practice, very few PCBs make use of extra long clock lines. Hence
317+
# any RGMII phy mode other than 'rgmii-id' is probably wrong, and is
318+
# unlikely to be accepted during review without details provided in
319+
# the commit description and comments in the .dts file.
320+
#
321+
# When the PCB does not implement the delays, the MAC or PHY must. As
322+
# such, this is software configuration, and so not described in Device
323+
# Tree.
324+
#
325+
# The following describes how Linux implements the configuration of
326+
# the MAC and PHY to add these delays when the PCB does not. As stated
327+
# above, developers often get this wrong, and the aim of this section
328+
# is reduce the frequency of these errors by Linux developers. Other
329+
# users of the Device Tree may implement it differently, and still be
330+
# consistent with both the normative and informative description
331+
# above.
332+
#
333+
# By default in Linux, when using phylib/phylink, the MAC is expected
334+
# to read the 'phy-mode' from Device Tree, not implement any delays,
335+
# and pass the value to the PHY. The PHY will then implement delays as
336+
# specified by the 'phy-mode'. The PHY should always be reconfigured
337+
# to implement the needed delays, replacing any setting performed by
338+
# strapping or the bootloader, etc.
339+
#
340+
# Experience to date is that all PHYs which implement RGMII also
341+
# implement the ability to add or not add the needed delays. Hence
342+
# this default is expected to work in all cases. Ignoring this default
343+
# is likely to be questioned by Reviews, and require a strong argument
344+
# to be accepted.
345+
#
346+
# There are a small number of cases where the MAC has hard coded
347+
# delays which cannot be disabled. The 'phy-mode' only describes the
348+
# PCB. The inability to disable the delays in the MAC does not change
349+
# the meaning of 'phy-mode'. It does however mean that a 'phy-mode' of
350+
# 'rgmii' is now invalid, it cannot be supported, since both the PCB
351+
# and the MAC and PHY adding delays cannot result in a functional
352+
# link. Thus the MAC should report a fatal error for any modes which
353+
# cannot be supported. When the MAC implements the delay, it must
354+
# ensure that the PHY does not also implement the same delay. So it
355+
# must modify the phy-mode it passes to the PHY, removing the delay it
356+
# has added. Failure to remove the delay will result in a
357+
# non-functioning link.
358+
#
359+
# Sometimes there is a need to fine tune the delays. Often the MAC or
360+
# PHY can perform this fine tuning. In the MAC node, the Device Tree
361+
# properties 'rx-internal-delay-ps' and 'tx-internal-delay-ps' should
362+
# be used to indicate fine tuning performed by the MAC. The values
363+
# expected here are small. A value of 2000ps, i.e 2ns, and a phy-mode
364+
# of 'rgmii' will not be accepted by Reviewers.
365+
#
366+
# If the PHY is to perform fine tuning, the properties
367+
# 'rx-internal-delay-ps' and 'tx-internal-delay-ps' in the PHY node
368+
# should be used. When the PHY is implementing delays, e.g. 'rgmii-id'
369+
# these properties should have a value near to 2000ps. If the PCB is
370+
# implementing delays, e.g. 'rgmii', a small value can be used to fine
371+
# tune the delay added by the PCB.
289372
...

Documentation/devicetree/bindings/nvmem/layouts/fixed-cell.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ properties:
2727
$ref: /schemas/types.yaml#/definitions/uint32-array
2828
items:
2929
- minimum: 0
30-
maximum: 7
30+
maximum: 31
3131
description:
3232
Offset in bit within the address range specified by reg.
3333
- minimum: 1

Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ properties:
1919
- enum:
2020
- qcom,apq8064-qfprom
2121
- qcom,apq8084-qfprom
22+
- qcom,ipq5018-qfprom
2223
- qcom,ipq5332-qfprom
2324
- qcom,ipq5424-qfprom
2425
- qcom,ipq6018-qfprom
@@ -28,6 +29,8 @@ properties:
2829
- qcom,msm8226-qfprom
2930
- qcom,msm8916-qfprom
3031
- qcom,msm8917-qfprom
32+
- qcom,msm8937-qfprom
33+
- qcom,msm8960-qfprom
3134
- qcom,msm8974-qfprom
3235
- qcom,msm8976-qfprom
3336
- qcom,msm8996-qfprom
@@ -51,6 +54,7 @@ properties:
5154
- qcom,sm8450-qfprom
5255
- qcom,sm8550-qfprom
5356
- qcom,sm8650-qfprom
57+
- qcom,x1e80100-qfprom
5458
- const: qcom,qfprom
5559

5660
reg:

0 commit comments

Comments
 (0)