Skip to content

Commit 9a5a75b

Browse files
committed
ASoc: simple-mux: Allow to specify an idle-state
Merge series from "Hendrik v. Raven" <h.v.raven@merzmedtech.de>: This series adds support for the idle-state property from the mux framework to the simple-mux audio variant. It allows to specify the state of the mux when it is not in use.
2 parents f3f9f0d + 3b7e11a commit 9a5a75b

File tree

1,563 files changed

+20530
-13823
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,563 files changed

+20530
-13823
lines changed

.mailmap

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,8 @@ Andrey Ryabinin <ryabinin.a.a@gmail.com> <aryabinin@virtuozzo.com>
7373
Andrzej Hajda <andrzej.hajda@intel.com> <a.hajda@samsung.com>
7474
André Almeida <andrealmeid@igalia.com> <andrealmeid@collabora.com>
7575
Andy Adamson <andros@citi.umich.edu>
76+
Andy Chiu <andybnac@gmail.com> <andy.chiu@sifive.com>
77+
Andy Chiu <andybnac@gmail.com> <taochiu@synology.com>
7678
Andy Shevchenko <andy@kernel.org> <andy@smile.org.ua>
7779
Andy Shevchenko <andy@kernel.org> <ext-andriy.shevchenko@nokia.com>
7880
Anilkumar Kolli <quic_akolli@quicinc.com> <akolli@codeaurora.org>
@@ -197,18 +199,23 @@ Elliot Berman <quic_eberman@quicinc.com> <eberman@codeaurora.org>
197199
Enric Balletbo i Serra <eballetbo@kernel.org> <enric.balletbo@collabora.com>
198200
Enric Balletbo i Serra <eballetbo@kernel.org> <eballetbo@iseebcn.com>
199201
Erik Kaneda <erik.kaneda@intel.com> <erik.schmauss@intel.com>
200-
Eugen Hristev <eugen.hristev@collabora.com> <eugen.hristev@microchip.com>
202+
Eugen Hristev <eugen.hristev@linaro.org> <eugen.hristev@microchip.com>
203+
Eugen Hristev <eugen.hristev@linaro.org> <eugen.hristev@collabora.com>
201204
Evgeniy Polyakov <johnpol@2ka.mipt.ru>
202205
Ezequiel Garcia <ezequiel@vanguardiasur.com.ar> <ezequiel@collabora.com>
203206
Faith Ekstrand <faith.ekstrand@collabora.com> <jason@jlekstrand.net>
204207
Faith Ekstrand <faith.ekstrand@collabora.com> <jason.ekstrand@intel.com>
205208
Faith Ekstrand <faith.ekstrand@collabora.com> <jason.ekstrand@collabora.com>
209+
Fangrui Song <i@maskray.me> <maskray@google.com>
206210
Felipe W Damasio <felipewd@terra.com.br>
207211
Felix Kuhling <fxkuehl@gmx.de>
208212
Felix Moeller <felix@derklecks.de>
209213
Fenglin Wu <quic_fenglinw@quicinc.com> <fenglinw@codeaurora.org>
210214
Filipe Lautert <filipe@icewall.org>
211215
Finn Thain <fthain@linux-m68k.org> <fthain@telegraphics.com.au>
216+
Fiona Behrens <me@kloenk.dev>
217+
Fiona Behrens <me@kloenk.dev> <me@kloenk.de>
218+
Fiona Behrens <me@kloenk.dev> <fin@nyantec.com>
212219
Franck Bui-Huu <vagabon.xyz@gmail.com>
213220
Frank Rowand <frowand.list@gmail.com> <frank.rowand@am.sony.com>
214221
Frank Rowand <frowand.list@gmail.com> <frank.rowand@sony.com>
@@ -276,7 +283,7 @@ Jan Glauber <jan.glauber@gmail.com> <jglauber@cavium.com>
276283
Jan Kuliga <jtkuliga.kdev@gmail.com> <jankul@alatek.krakow.pl>
277284
Jarkko Sakkinen <jarkko@kernel.org> <jarkko.sakkinen@linux.intel.com>
278285
Jarkko Sakkinen <jarkko@kernel.org> <jarkko@profian.com>
279-
Jarkko Sakkinen <jarkko@kernel.org> <jarkko.sakkinen@tuni.fi>
286+
Jarkko Sakkinen <jarkko@kernel.org> <jarkko.sakkinen@parity.io>
280287
Jason Gunthorpe <jgg@ziepe.ca> <jgg@mellanox.com>
281288
Jason Gunthorpe <jgg@ziepe.ca> <jgg@nvidia.com>
282289
Jason Gunthorpe <jgg@ziepe.ca> <jgunthorpe@obsidianresearch.com>
@@ -300,6 +307,11 @@ Jens Axboe <axboe@kernel.dk> <axboe@fb.com>
300307
Jens Axboe <axboe@kernel.dk> <axboe@meta.com>
301308
Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
302309
Jernej Skrabec <jernej.skrabec@gmail.com> <jernej.skrabec@siol.net>
310+
Jesper Dangaard Brouer <hawk@kernel.org> <brouer@redhat.com>
311+
Jesper Dangaard Brouer <hawk@kernel.org> <hawk@comx.dk>
312+
Jesper Dangaard Brouer <hawk@kernel.org> <jbrouer@redhat.com>
313+
Jesper Dangaard Brouer <hawk@kernel.org> <jdb@comx.dk>
314+
Jesper Dangaard Brouer <hawk@kernel.org> <netoptimizer@brouer.com>
303315
Jessica Zhang <quic_jesszhan@quicinc.com> <jesszhan@codeaurora.org>
304316
Jilai Wang <quic_jilaiw@quicinc.com> <jilaiw@codeaurora.org>
305317
Jiri Kosina <jikos@kernel.org> <jikos@jikos.cz>
@@ -653,6 +665,7 @@ Tomeu Vizoso <tomeu@tomeuvizoso.net> <tomeu.vizoso@collabora.com>
653665
Thomas Graf <tgraf@suug.ch>
654666
Thomas Körper <socketcan@esd.eu> <thomas.koerper@esd.eu>
655667
Thomas Pedersen <twp@codeaurora.org>
668+
Thorsten Blum <thorsten.blum@linux.dev> <thorsten.blum@toblux.com>
656669
Tiezhu Yang <yangtiezhu@loongson.cn> <kernelpatch@126.com>
657670
Tingwei Zhang <quic_tingwei@quicinc.com> <tingwei@codeaurora.org>
658671
Tirupathi Reddy <quic_tirupath@quicinc.com> <tirupath@codeaurora.org>

CREDITS

Lines changed: 31 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1204,6 +1204,10 @@ S: Dreisbachstrasse 24
12041204
S: D-57250 Netphen
12051205
S: Germany
12061206

1207+
N: Florian Fainelli
1208+
E: f.fainelli@gmail.com
1209+
D: DSA
1210+
12071211
N: Rik Faith
12081212
E: faith@acm.org
12091213
D: Future Domain TMC-16x0 SCSI driver (author)
@@ -1358,10 +1362,6 @@ D: Major kbuild rework during the 2.5 cycle
13581362
D: ISDN Maintainer
13591363
S: USA
13601364

1361-
N: Gerrit Renker
1362-
E: gerrit@erg.abdn.ac.uk
1363-
D: DCCP protocol support.
1364-
13651365
N: Philip Gladstone
13661366
E: philip@gladstonefamily.net
13671367
D: Kernel / timekeeping stuff
@@ -1677,11 +1677,6 @@ W: http://www.carumba.com/
16771677
D: bug toaster (A1 sauce makes all the difference)
16781678
D: Random linux hacker
16791679

1680-
N: James Hogan
1681-
E: jhogan@kernel.org
1682-
D: Metag architecture maintainer
1683-
D: TZ1090 SoC maintainer
1684-
16851680
N: Tim Hockin
16861681
E: thockin@hockin.org
16871682
W: http://www.hockin.org/~thockin
@@ -1697,6 +1692,11 @@ D: hwmon subsystem maintainer
16971692
D: i2c-sis96x and i2c-stub SMBus drivers
16981693
S: USA
16991694

1695+
N: James Hogan
1696+
E: jhogan@kernel.org
1697+
D: Metag architecture maintainer
1698+
D: TZ1090 SoC maintainer
1699+
17001700
N: Dirk Hohndel
17011701
E: hohndel@suse.de
17021702
D: The XFree86[tm] Project
@@ -1872,6 +1872,10 @@ S: K osmidomkum 723
18721872
S: 160 00 Praha 6
18731873
S: Czech Republic
18741874

1875+
N: Seth Jennings
1876+
E: sjenning@redhat.com
1877+
D: Creation and maintenance of zswap
1878+
18751879
N: Jeremy Kerr
18761880
D: Maintainer of SPU File System
18771881

@@ -2188,19 +2192,6 @@ N: Mike Kravetz
21882192
E: mike.kravetz@oracle.com
21892193
D: Maintenance and development of the hugetlb subsystem
21902194

2191-
N: Seth Jennings
2192-
E: sjenning@redhat.com
2193-
D: Creation and maintenance of zswap
2194-
2195-
N: Dan Streetman
2196-
E: ddstreet@ieee.org
2197-
D: Maintenance and development of zswap
2198-
D: Creation and maintenance of the zpool API
2199-
2200-
N: Vitaly Wool
2201-
E: vitaly.wool@konsulko.com
2202-
D: Maintenance and development of zswap
2203-
22042195
N: Andreas S. Krebs
22052196
E: akrebs@altavista.net
22062197
D: CYPRESS CY82C693 chipset IDE, Digital's PC-Alpha 164SX boards
@@ -3191,6 +3182,11 @@ N: Ken Pizzini
31913182
E: ken@halcyon.com
31923183
D: CDROM driver "sonycd535" (Sony CDU-535/531)
31933184

3185+
N: Mathieu Poirier
3186+
E: mathieu.poirier@linaro.org
3187+
D: CoreSight kernel subsystem, Maintainer 2014-2022
3188+
D: Perf tool support for CoreSight
3189+
31943190
N: Stelian Pop
31953191
E: stelian@popies.net
31963192
P: 1024D/EDBB6147 7B36 0E07 04BC 11DC A7A0 D3F7 7185 9E7A EDBB 6147
@@ -3300,6 +3296,10 @@ S: Schlossbergring 9
33003296
S: 79098 Freiburg
33013297
S: Germany
33023298

3299+
N: Gerrit Renker
3300+
E: gerrit@erg.abdn.ac.uk
3301+
D: DCCP protocol support.
3302+
33033303
N: Thomas Renninger
33043304
E: trenn@suse.de
33053305
D: cpupowerutils
@@ -3576,11 +3576,6 @@ D: several improvements to system programs
35763576
S: Oldenburg
35773577
S: Germany
35783578

3579-
N: Mathieu Poirier
3580-
E: mathieu.poirier@linaro.org
3581-
D: CoreSight kernel subsystem, Maintainer 2014-2022
3582-
D: Perf tool support for CoreSight
3583-
35843579
N: Robert Schwebel
35853580
E: robert@schwebel.de
35863581
W: https://www.schwebel.de
@@ -3771,6 +3766,11 @@ S: Chr. Winthersvej 1 B, st.th.
37713766
S: DK-1860 Frederiksberg C
37723767
S: Denmark
37733768

3769+
N: Dan Streetman
3770+
E: ddstreet@ieee.org
3771+
D: Maintenance and development of zswap
3772+
D: Creation and maintenance of the zpool API
3773+
37743774
N: Drew Sullivan
37753775
E: drew@ss.org
37763776
W: http://www.ss.org/
@@ -4286,6 +4286,10 @@ S: Pipers Way
42864286
S: Swindon. SN3 1RJ
42874287
S: England
42884288

4289+
N: Vitaly Wool
4290+
E: vitaly.wool@konsulko.com
4291+
D: Maintenance and development of zswap
4292+
42894293
N: Chris Wright
42904294
E: chrisw@sous-sol.org
42914295
D: hacking on LSM framework and security modules.

Documentation/admin-guide/LSM/ipe.rst

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -223,7 +223,10 @@ are signed through the PKCS#7 message format to enforce some level of
223223
authorization of the policies (prohibiting an attacker from gaining
224224
unconstrained root, and deploying an "allow all" policy). These
225225
policies must be signed by a certificate that chains to the
226-
``SYSTEM_TRUSTED_KEYRING``. With openssl, the policy can be signed by::
226+
``SYSTEM_TRUSTED_KEYRING``, or to the secondary and/or platform keyrings if
227+
``CONFIG_IPE_POLICY_SIG_SECONDARY_KEYRING`` and/or
228+
``CONFIG_IPE_POLICY_SIG_PLATFORM_KEYRING`` are enabled, respectively.
229+
With openssl, the policy can be signed by::
227230

228231
openssl smime -sign \
229232
-in "$MY_POLICY" \
@@ -266,7 +269,7 @@ in the kernel. This file is write-only and accepts a PKCS#7 signed
266269
policy. Two checks will always be performed on this policy: First, the
267270
``policy_names`` must match with the updated version and the existing
268271
version. Second the updated policy must have a policy version greater than
269-
or equal to the currently-running version. This is to prevent rollback attacks.
272+
the currently-running version. This is to prevent rollback attacks.
270273

271274
The ``delete`` file is used to remove a policy that is no longer needed.
272275
This file is write-only and accepts a value of ``1`` to delete the policy.

Documentation/admin-guide/kernel-parameters.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6688,7 +6688,7 @@
66886688
0: no polling (default)
66896689

66906690
thp_anon= [KNL]
6691-
Format: <size>,<size>[KMG]:<state>;<size>-<size>[KMG]:<state>
6691+
Format: <size>[KMG],<size>[KMG]:<state>;<size>[KMG]-<size>[KMG]:<state>
66926692
state is one of "always", "madvise", "never" or "inherit".
66936693
Control the default behavior of the system with respect
66946694
to anonymous transparent hugepages.

Documentation/admin-guide/mm/transhuge.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ control by passing the parameter ``transparent_hugepage=always`` or
303303
kernel command line.
304304

305305
Alternatively, each supported anonymous THP size can be controlled by
306-
passing ``thp_anon=<size>,<size>[KMG]:<state>;<size>-<size>[KMG]:<state>``,
306+
passing ``thp_anon=<size>[KMG],<size>[KMG]:<state>;<size>[KMG]-<size>[KMG]:<state>``,
307307
where ``<size>`` is the THP size (must be a power of 2 of PAGE_SIZE and
308308
supported anonymous THP) and ``<state>`` is one of ``always``, ``madvise``,
309309
``never`` or ``inherit``.

Documentation/admin-guide/pm/cpufreq.rst

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -425,8 +425,8 @@ This governor exposes only one tunable:
425425

426426
``rate_limit_us``
427427
Minimum time (in microseconds) that has to pass between two consecutive
428-
runs of governor computations (default: 1000 times the scaling driver's
429-
transition latency).
428+
runs of governor computations (default: 1.5 times the scaling driver's
429+
transition latency or the maximum 2ms).
430430

431431
The purpose of this tunable is to reduce the scheduler context overhead
432432
of the governor which might be excessive without it.
@@ -474,17 +474,17 @@ This governor exposes the following tunables:
474474
This is how often the governor's worker routine should run, in
475475
microseconds.
476476

477-
Typically, it is set to values of the order of 10000 (10 ms). Its
478-
default value is equal to the value of ``cpuinfo_transition_latency``
479-
for each policy this governor is attached to (but since the unit here
480-
is greater by 1000, this means that the time represented by
481-
``sampling_rate`` is 1000 times greater than the transition latency by
482-
default).
477+
Typically, it is set to values of the order of 2000 (2 ms). Its
478+
default value is to add a 50% breathing room
479+
to ``cpuinfo_transition_latency`` on each policy this governor is
480+
attached to. The minimum is typically the length of two scheduler
481+
ticks.
483482

484483
If this tunable is per-policy, the following shell command sets the time
485-
represented by it to be 750 times as high as the transition latency::
484+
represented by it to be 1.5 times as high as the transition latency
485+
(the default)::
486486

487-
# echo `$(($(cat cpuinfo_transition_latency) * 750 / 1000)) > ondemand/sampling_rate
487+
# echo `$(($(cat cpuinfo_transition_latency) * 3 / 2)) > ondemand/sampling_rate
488488

489489
``up_threshold``
490490
If the estimated CPU load is above this value (in percent), the governor

Documentation/core-api/protection-keys.rst

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@ Pkeys Userspace (PKU) is a feature which can be found on:
1212
* Intel server CPUs, Skylake and later
1313
* Intel client CPUs, Tiger Lake (11th Gen Core) and later
1414
* Future AMD CPUs
15+
* arm64 CPUs implementing the Permission Overlay Extension (FEAT_S1POE)
1516

17+
x86_64
18+
======
1619
Pkeys work by dedicating 4 previously Reserved bits in each page table entry to
1720
a "protection key", giving 16 possible keys.
1821

@@ -28,6 +31,22 @@ register. The feature is only available in 64-bit mode, even though there is
2831
theoretically space in the PAE PTEs. These permissions are enforced on data
2932
access only and have no effect on instruction fetches.
3033

34+
arm64
35+
=====
36+
37+
Pkeys use 3 bits in each page table entry, to encode a "protection key index",
38+
giving 8 possible keys.
39+
40+
Protections for each key are defined with a per-CPU user-writable system
41+
register (POR_EL0). This is a 64-bit register encoding read, write and execute
42+
overlay permissions for each protection key index.
43+
44+
Being a CPU register, POR_EL0 is inherently thread-local, potentially giving
45+
each thread a different set of protections from every other thread.
46+
47+
Unlike x86_64, the protection key permissions also apply to instruction
48+
fetches.
49+
3150
Syscalls
3251
========
3352

@@ -38,11 +57,10 @@ There are 3 system calls which directly interact with pkeys::
3857
int pkey_mprotect(unsigned long start, size_t len,
3958
unsigned long prot, int pkey);
4059

41-
Before a pkey can be used, it must first be allocated with
42-
pkey_alloc(). An application calls the WRPKRU instruction
43-
directly in order to change access permissions to memory covered
44-
with a key. In this example WRPKRU is wrapped by a C function
45-
called pkey_set().
60+
Before a pkey can be used, it must first be allocated with pkey_alloc(). An
61+
application writes to the architecture specific CPU register directly in order
62+
to change access permissions to memory covered with a key. In this example
63+
this is wrapped by a C function called pkey_set().
4664
::
4765

4866
int real_prot = PROT_READ|PROT_WRITE;
@@ -64,9 +82,9 @@ is no longer in use::
6482
munmap(ptr, PAGE_SIZE);
6583
pkey_free(pkey);
6684

67-
.. note:: pkey_set() is a wrapper for the RDPKRU and WRPKRU instructions.
68-
An example implementation can be found in
69-
tools/testing/selftests/x86/protection_keys.c.
85+
.. note:: pkey_set() is a wrapper around writing to the CPU register.
86+
Example implementations can be found in
87+
tools/testing/selftests/mm/pkey-{arm64,powerpc,x86}.h
7088

7189
Behavior
7290
========
@@ -96,3 +114,7 @@ with a read()::
96114
The kernel will send a SIGSEGV in both cases, but si_code will be set
97115
to SEGV_PKERR when violating protection keys versus SEGV_ACCERR when
98116
the plain mprotect() permissions are violated.
117+
118+
Note that kernel accesses from a kthread (such as io_uring) will use a default
119+
value for the protection key register and so will not be consistent with
120+
userspace's value of the register or mprotect().
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/display/elgin,jg10309-01.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Elgin JG10309-01 SPI-controlled display
8+
9+
maintainers:
10+
- Fabio Estevam <festevam@gmail.com>
11+
12+
description: |
13+
The Elgin JG10309-01 SPI-controlled display is used on the RV1108-Elgin-r1
14+
board and is a custom display.
15+
16+
allOf:
17+
- $ref: /schemas/spi/spi-peripheral-props.yaml#
18+
19+
properties:
20+
compatible:
21+
const: elgin,jg10309-01
22+
23+
reg:
24+
maxItems: 1
25+
26+
spi-max-frequency:
27+
maximum: 24000000
28+
29+
spi-cpha: true
30+
31+
spi-cpol: true
32+
33+
required:
34+
- compatible
35+
- reg
36+
- spi-cpha
37+
- spi-cpol
38+
39+
additionalProperties: false
40+
41+
examples:
42+
- |
43+
spi {
44+
#address-cells = <1>;
45+
#size-cells = <0>;
46+
47+
display@0 {
48+
compatible = "elgin,jg10309-01";
49+
reg = <0>;
50+
spi-max-frequency = <24000000>;
51+
spi-cpha;
52+
spi-cpol;
53+
};
54+
};

0 commit comments

Comments
 (0)