Skip to content

Commit c24999e

Browse files
author
Wolfram Sang
committed
Merge tag 'i2c-host-6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux into i2c/for-mergewindow
The DesignWare and the Renesas I2C drivers have received most of the changes in this pull request. The first has has undergone through a series of cleanups that have been sent to the mailing list a year ago for the first time and finally get merged in this pull request. They are many, from typos (e.g. i2/i2c), to cosmetics, to refactoring (e.g. move inline functions to librarieas) and many others. Besides that, all the DesignWare Kconfig options have been grouped under the I2C_DESIGNWARE_CORE and this required some adaptation in many of the kernel configuration files for different arm and mips boards. Follows the list of the rest of the changes grouped by type of change. Cleanups -------- The Qualcomm Geni platform improves the exit path in the runtime resume function. The Intel LJCA driver loses "target_addr" parameter in ljca_i2c_stop() because it was unused. The MediaTek controller intializes the restart_flag in the transfer function using the ternary conditional operator ("? :") instead of initializing it in different parts. Constified a few global data structures in the virtio driver. The Renesas driver simplifies the bus speed handling in the init function making it more readable. Improved an if/else statement in probe function of the Renesas R-Car driver. The iMX/MXC driver switches to using the RUNTIME_PM_OPS() instead of SET_RUNTIME_PM_OPS(). Still in the iMX/MXC driver a comma ',' has been replaced by a semicolon ';', while in different drivers the ',' has been removed from the '{ }' delimiters. Finally three devm_clk_get_enabled() have been used to simplify the devm_clk_get/clk_prepare_enable tuple in the Renesas EMEV2, Ingenic and MPC drivers. Refactors --------- The Nuvoton fixes a potential out of boundary array access. This is not a bug fix because the issue could never occur due to hardware not having the properties listed in the array. The change makes the driver more future proof and, at the same time, silences code analyzers. Improvements ------------ The Renesas I2C (riic) driver undergoes several patches improving the runtime power management handling. The Intel i801 driver uses a more descriptive adapter's name to show the presence of the IDF feature. In the Intel Denverton (ismt) adapter the pending transactions are killed when irq's can't complete their handling, triggering a timeout. This could have been considered as a bug fix, but because, standing to Vasily, it's very sporadic, I preferred considering the patch rather as an improvement. New Feature ----------- The Renesas I2C (riic) driver now supports the fast mode plus. New support ----------- Added support for: - Renesas R9A08G045 - Rockchip RK3576 - KEBA I2C - Theobroma Systems Mule Multiplexer. The Keba comes with a new driver, i2c-keba.c. The Mule is an i2c multiplexer and it also comes with a new driver, mux/i2c-mux-mule.c. Core patch ---------- This pull request includes also a patch in the I2C framework, in i2c-core-base.c where the runtime PM functions have been replaced in order to allow to be accessed during the device add. Devicetree ---------- Some cleanups in the devicetree, as well. nVidia and Qualcomm bindings improve their "if:then:" blocks. While the aspeed binding loses the "multi-master" property because it was redundant. The i2c-sprd binding has been converted to YAML.
2 parents 7e72208 + f56f4ba commit c24999e

File tree

1,238 files changed

+15610
-7805
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,238 files changed

+15610
-7805
lines changed

.mailmap

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ Amit Nischal <quic_anischal@quicinc.com> <anischal@codeaurora.org>
6060
Andi Kleen <ak@linux.intel.com> <ak@suse.de>
6161
Andi Shyti <andi@etezian.org> <andi.shyti@samsung.com>
6262
Andreas Herrmann <aherrman@de.ibm.com>
63+
Andreas Hindborg <a.hindborg@kernel.org> <a.hindborg@samsung.com>
6364
Andrej Shadura <andrew.shadura@collabora.co.uk>
6465
Andrej Shadura <andrew@shadura.me> <andrew@beldisplaytech.com>
6566
Andrew Morton <akpm@linux-foundation.org>
@@ -269,6 +270,7 @@ James Ketrenos <jketreno@io.(none)>
269270
Jan Glauber <jan.glauber@gmail.com> <jang@de.ibm.com>
270271
Jan Glauber <jan.glauber@gmail.com> <jang@linux.vnet.ibm.com>
271272
Jan Glauber <jan.glauber@gmail.com> <jglauber@cavium.com>
273+
Jan Kuliga <jtkuliga.kdev@gmail.com> <jankul@alatek.krakow.pl>
272274
Jarkko Sakkinen <jarkko@kernel.org> <jarkko.sakkinen@linux.intel.com>
273275
Jarkko Sakkinen <jarkko@kernel.org> <jarkko@profian.com>
274276
Jarkko Sakkinen <jarkko@kernel.org> <jarkko.sakkinen@tuni.fi>
@@ -354,6 +356,8 @@ Kenneth Westfield <quic_kwestfie@quicinc.com> <kwestfie@codeaurora.org>
354356
Kiran Gunda <quic_kgunda@quicinc.com> <kgunda@codeaurora.org>
355357
Kirill Tkhai <tkhai@ya.ru> <ktkhai@virtuozzo.com>
356358
Kishon Vijay Abraham I <kishon@kernel.org> <kishon@ti.com>
359+
Konrad Dybcio <konradybcio@kernel.org> <konrad.dybcio@linaro.org>
360+
Konrad Dybcio <konradybcio@kernel.org> <konrad.dybcio@somainline.org>
357361
Konstantin Khlebnikov <koct9i@gmail.com> <khlebnikov@yandex-team.ru>
358362
Konstantin Khlebnikov <koct9i@gmail.com> <k.khlebnikov@samsung.com>
359363
Koushik <raghavendra.koushik@neterion.com>
@@ -614,6 +618,7 @@ Simon Kelley <simon@thekelleys.org.uk>
614618
Sricharan Ramabadhran <quic_srichara@quicinc.com> <sricharan@codeaurora.org>
615619
Srinivas Ramana <quic_sramana@quicinc.com> <sramana@codeaurora.org>
616620
Sriram R <quic_srirrama@quicinc.com> <srirrama@codeaurora.org>
621+
Sriram Yagnaraman <sriram.yagnaraman@ericsson.com> <sriram.yagnaraman@est.tech>
617622
Stanislav Fomichev <sdf@fomichev.me> <sdf@google.com>
618623
Stefan Wahren <wahrenst@gmx.net> <stefan.wahren@i2se.com>
619624
Stéphane Witzmann <stephane.witzmann@ubpmes.univ-bpclermont.fr>

Documentation/ABI/testing/sysfs-devices-system-cpu

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -562,7 +562,8 @@ Description: Control Symmetric Multi Threading (SMT)
562562
================ =========================================
563563

564564
If control status is "forceoff" or "notsupported" writes
565-
are rejected.
565+
are rejected. Note that enabling SMT on PowerPC skips
566+
offline cores.
566567

567568
What: /sys/devices/system/cpu/cpuX/power/energy_perf_bias
568569
Date: March 2019

Documentation/ABI/testing/sysfs-timecard

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -258,24 +258,29 @@ Description: (RW) When retrieving the PHC with the PTP SYS_OFFSET_EXTENDED
258258
the estimated point where the FPGA latches the PHC time. This
259259
value may be changed by writing an unsigned integer.
260260

261-
What: /sys/class/timecard/ocpN/ttyGNSS
262-
What: /sys/class/timecard/ocpN/ttyGNSS2
263-
Date: September 2021
261+
What: /sys/class/timecard/ocpN/tty
262+
Date: August 2024
263+
Contact: Vadim Fedorenko <vadim.fedorenko@linux.dev>
264+
Description: (RO) Directory containing the sysfs nodes for TTY attributes
265+
266+
What: /sys/class/timecard/ocpN/tty/ttyGNSS
267+
What: /sys/class/timecard/ocpN/tty/ttyGNSS2
268+
Date: August 2024
264269
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
265-
Description: These optional attributes link to the TTY serial ports
266-
associated with the GNSS devices.
270+
Description: (RO) These optional attributes contain names of the TTY serial
271+
ports associated with the GNSS devices.
267272

268-
What: /sys/class/timecard/ocpN/ttyMAC
269-
Date: September 2021
273+
What: /sys/class/timecard/ocpN/tty/ttyMAC
274+
Date: August 2024
270275
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
271-
Description: This optional attribute links to the TTY serial port
272-
associated with the Miniature Atomic Clock.
276+
Description: (RO) This optional attribute contains name of the TTY serial
277+
port associated with the Miniature Atomic Clock.
273278

274-
What: /sys/class/timecard/ocpN/ttyNMEA
275-
Date: September 2021
279+
What: /sys/class/timecard/ocpN/tty/ttyNMEA
280+
Date: August 2024
276281
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
277-
Description: This optional attribute links to the TTY serial port
278-
which outputs the PHC time in NMEA ZDA format.
282+
Description: (RO) This optional attribute contains name of the TTY serial
283+
port which outputs the PHC time in NMEA ZDA format.
279284

280285
What: /sys/class/timecard/ocpN/utc_tai_offset
281286
Date: September 2021

Documentation/admin-guide/cgroup-v2.rst

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1717,9 +1717,10 @@ The following nested keys are defined.
17171717
entries fault back in or are written out to disk.
17181718

17191719
memory.zswap.writeback
1720-
A read-write single value file. The default value is "1". The
1721-
initial value of the root cgroup is 1, and when a new cgroup is
1722-
created, it inherits the current value of its parent.
1720+
A read-write single value file. The default value is "1".
1721+
Note that this setting is hierarchical, i.e. the writeback would be
1722+
implicitly disabled for child cgroups if the upper hierarchy
1723+
does so.
17231724

17241725
When this is set to 0, all swapping attempts to swapping devices
17251726
are disabled. This included both zswap writebacks, and swapping due

Documentation/admin-guide/device-mapper/dm-crypt.rst

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -162,13 +162,14 @@ iv_large_sectors
162162

163163

164164
Module parameters::
165-
max_read_size
166-
max_write_size
167-
Maximum size of read or write requests. When a request larger than this size
168-
is received, dm-crypt will split the request. The splitting improves
169-
concurrency (the split requests could be encrypted in parallel by multiple
170-
cores), but it also causes overhead. The user should tune these parameters to
171-
fit the actual workload.
165+
166+
max_read_size
167+
max_write_size
168+
Maximum size of read or write requests. When a request larger than this size
169+
is received, dm-crypt will split the request. The splitting improves
170+
concurrency (the split requests could be encrypted in parallel by multiple
171+
cores), but it also causes overhead. The user should tune these parameters to
172+
fit the actual workload.
172173

173174

174175
Example scripts

Documentation/arch/riscv/hwprobe.rst

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -239,25 +239,33 @@ The following keys are defined:
239239
ratified in commit 98918c844281 ("Merge pull request #1217 from
240240
riscv/zawrs") of riscv-isa-manual.
241241

242-
* :c:macro:`RISCV_HWPROBE_KEY_CPUPERF_0`: A bitmask that contains performance
243-
information about the selected set of processors.
242+
* :c:macro:`RISCV_HWPROBE_KEY_CPUPERF_0`: Deprecated. Returns similar values to
243+
:c:macro:`RISCV_HWPROBE_KEY_MISALIGNED_SCALAR_PERF`, but the key was
244+
mistakenly classified as a bitmask rather than a value.
244245

245-
* :c:macro:`RISCV_HWPROBE_MISALIGNED_UNKNOWN`: The performance of misaligned
246-
accesses is unknown.
246+
* :c:macro:`RISCV_HWPROBE_KEY_MISALIGNED_SCALAR_PERF`: An enum value describing
247+
the performance of misaligned scalar native word accesses on the selected set
248+
of processors.
247249

248-
* :c:macro:`RISCV_HWPROBE_MISALIGNED_EMULATED`: Misaligned accesses are
249-
emulated via software, either in or below the kernel. These accesses are
250-
always extremely slow.
250+
* :c:macro:`RISCV_HWPROBE_MISALIGNED_SCALAR_UNKNOWN`: The performance of
251+
misaligned scalar accesses is unknown.
251252

252-
* :c:macro:`RISCV_HWPROBE_MISALIGNED_SLOW`: Misaligned accesses are slower
253-
than equivalent byte accesses. Misaligned accesses may be supported
254-
directly in hardware, or trapped and emulated by software.
253+
* :c:macro:`RISCV_HWPROBE_MISALIGNED_SCALAR_EMULATED`: Misaligned scalar
254+
accesses are emulated via software, either in or below the kernel. These
255+
accesses are always extremely slow.
255256

256-
* :c:macro:`RISCV_HWPROBE_MISALIGNED_FAST`: Misaligned accesses are faster
257-
than equivalent byte accesses.
257+
* :c:macro:`RISCV_HWPROBE_MISALIGNED_SCALAR_SLOW`: Misaligned scalar native
258+
word sized accesses are slower than the equivalent quantity of byte
259+
accesses. Misaligned accesses may be supported directly in hardware, or
260+
trapped and emulated by software.
258261

259-
* :c:macro:`RISCV_HWPROBE_MISALIGNED_UNSUPPORTED`: Misaligned accesses are
260-
not supported at all and will generate a misaligned address fault.
262+
* :c:macro:`RISCV_HWPROBE_MISALIGNED_SCALAR_FAST`: Misaligned scalar native
263+
word sized accesses are faster than the equivalent quantity of byte
264+
accesses.
265+
266+
* :c:macro:`RISCV_HWPROBE_MISALIGNED_SCALAR_UNSUPPORTED`: Misaligned scalar
267+
accesses are not supported at all and will generate a misaligned address
268+
fault.
261269

262270
* :c:macro:`RISCV_HWPROBE_KEY_ZICBOZ_BLOCK_SIZE`: An unsigned int which
263271
represents the size of the Zicboz block in bytes.

Documentation/arch/riscv/vm-layout.rst

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -134,19 +134,3 @@ RISC-V Linux Kernel SV57
134134
ffffffff00000000 | -4 GB | ffffffff7fffffff | 2 GB | modules, BPF
135135
ffffffff80000000 | -2 GB | ffffffffffffffff | 2 GB | kernel
136136
__________________|____________|__________________|_________|____________________________________________________________
137-
138-
139-
Userspace VAs
140-
--------------------
141-
To maintain compatibility with software that relies on the VA space with a
142-
maximum of 48 bits the kernel will, by default, return virtual addresses to
143-
userspace from a 48-bit range (sv48). This default behavior is achieved by
144-
passing 0 into the hint address parameter of mmap. On CPUs with an address space
145-
smaller than sv48, the CPU maximum supported address space will be the default.
146-
147-
Software can "opt-in" to receiving VAs from another VA space by providing
148-
a hint address to mmap. When a hint address is passed to mmap, the returned
149-
address will never use more bits than the hint address. For example, if a hint
150-
address of `1 << 40` is passed to mmap, a valid returned address will never use
151-
bits 41 through 63. If no mappable addresses are available in that range, mmap
152-
will return `MAP_FAILED`.

Documentation/core-api/workqueue.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -260,7 +260,7 @@ Some users depend on strict execution ordering where only one work item
260260
is in flight at any given time and the work items are processed in
261261
queueing order. While the combination of ``@max_active`` of 1 and
262262
``WQ_UNBOUND`` used to achieve this behavior, this is no longer the
263-
case. Use ``alloc_ordered_queue()`` instead.
263+
case. Use alloc_ordered_workqueue() instead.
264264

265265

266266
Example Execution Scenarios

Documentation/devicetree/bindings/clock/qcom,dispcc-sm6350.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: Qualcomm Display Clock & Reset Controller on SM6350
88

99
maintainers:
10-
- Konrad Dybcio <konrad.dybcio@somainline.org>
10+
- Konrad Dybcio <konradybcio@kernel.org>
1111

1212
description: |
1313
Qualcomm display clock control module provides the clocks, resets and power

Documentation/devicetree/bindings/clock/qcom,gcc-msm8994.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: Qualcomm Global Clock & Reset Controller on MSM8994
88

99
maintainers:
10-
- Konrad Dybcio <konrad.dybcio@somainline.org>
10+
- Konrad Dybcio <konradybcio@kernel.org>
1111

1212
description: |
1313
Qualcomm global clock control module provides the clocks, resets and power

0 commit comments

Comments
 (0)