Skip to content

Commit b010552

Browse files
committed
Merge remote-tracking branch 'linux-pm/linux-next' into sound/upstream-20250502
2 parents ad7def2 + 0751d28 commit b010552

213 files changed

Lines changed: 1403 additions & 784 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.

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

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ What: /sys/devices/system/cpu/cpuidle/available_governors
111111
/sys/devices/system/cpu/cpuidle/current_driver
112112
/sys/devices/system/cpu/cpuidle/current_governor
113113
/sys/devices/system/cpu/cpuidle/current_governer_ro
114+
/sys/devices/system/cpu/cpuidle/intel_c1_demotion
114115
Date: September 2007
115116
Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
116117
Description: Discover cpuidle policy and mechanism
@@ -132,7 +133,11 @@ Description: Discover cpuidle policy and mechanism
132133

133134
current_governor_ro: (RO) displays current idle policy.
134135

135-
See Documentation/admin-guide/pm/cpuidle.rst and
136+
intel_c1_demotion: (RW) enables/disables the C1 demotion
137+
feature on Intel CPUs.
138+
139+
See Documentation/admin-guide/pm/cpuidle.rst,
140+
Documentation/admin-guide/pm/intel_idle.rst, and
136141
Documentation/driver-api/pm/cpuidle.rst for more information.
137142

138143

Documentation/admin-guide/pm/intel_idle.rst

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,27 @@ instruction at all.
3838
only way to pass early-configuration-time parameters to it is via the kernel
3939
command line.
4040

41+
Sysfs Interface
42+
===============
43+
44+
The ``intel_idle`` driver exposes the following ``sysfs`` attributes in
45+
``/sys/devices/system/cpu/cpuidle/``:
46+
47+
``intel_c1_demotion``
48+
Enable or disable C1 demotion for all CPUs in the system. This file is
49+
only exposed on platforms that support the C1 demotion feature and where
50+
it was tested. Value 0 means that C1 demotion is disabled, value 1 means
51+
that it is enabled. Write 0 or 1 to disable or enable C1 demotion for
52+
all CPUs.
53+
54+
The C1 demotion feature involves the platform firmware demoting deep
55+
C-state requests from the OS (e.g., C6 requests) to C1. The idea is that
56+
firmware monitors CPU wake-up rate, and if it is higher than a
57+
platform-specific threshold, the firmware demotes deep C-state requests
58+
to C1. For example, Linux requests C6, but firmware noticed too many
59+
wake-ups per second, and it keeps the CPU in C1. When the CPU stays in
60+
C1 long enough, the platform promotes it back to C6. This may improve
61+
some workloads' performance, but it may also increase power consumption.
4162

4263
.. _intel-idle-enumeration-of-states:
4364

Documentation/firmware-guide/acpi/dsd/data-node-references.rst

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,14 @@ ACPI in general allows referring to device objects in the tree only.
1212
Hierarchical data extension nodes may not be referred to directly, hence this
1313
document defines a scheme to implement such references.
1414

15-
A reference consist of the device object name followed by one or more
16-
hierarchical data extension [dsd-guide] keys. Specifically, the hierarchical
17-
data extension node which is referred to by the key shall lie directly under
18-
the parent object i.e. either the device object or another hierarchical data
19-
extension node.
15+
A reference to a _DSD hierarchical data node is a string consisting of a
16+
device object reference followed by a dot (".") and a relative path to a data
17+
node object. Do not use non-string references as this will produce a copy of
18+
the hierarchical data node, not a reference!
19+
20+
The hierarchical data extension node which is referred to shall be located
21+
directly under its parent object i.e. either the device object or another
22+
hierarchical data extension node [dsd-guide].
2023

2124
The keys in the hierarchical data nodes shall consist of the name of the node,
2225
"@" character and the number of the node in hexadecimal notation (without pre-
@@ -33,11 +36,9 @@ extension key.
3336
Example
3437
=======
3538

36-
In the ASL snippet below, the "reference" _DSD property contains a
37-
device object reference to DEV0 and under that device object, a
38-
hierarchical data extension key "node@1" referring to the NOD1 object
39-
and lastly, a hierarchical data extension key "anothernode" referring to
40-
the ANOD object which is also the final target node of the reference.
39+
In the ASL snippet below, the "reference" _DSD property contains a string
40+
reference to a hierarchical data extension node ANOD under DEV0 under the parent
41+
of DEV1. ANOD is also the final target node of the reference.
4142
::
4243

4344
Device (DEV0)
@@ -76,10 +77,7 @@ the ANOD object which is also the final target node of the reference.
7677
Name (_DSD, Package () {
7778
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
7879
Package () {
79-
Package () {
80-
"reference", Package () {
81-
^DEV0, "node@1", "anothernode"
82-
}
80+
Package () { "reference", "^DEV0.ANOD" }
8381
},
8482
}
8583
})

Documentation/firmware-guide/acpi/dsd/graph.rst

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -66,12 +66,9 @@ of that port shall be zero. Similarly, if a port may only have a single
6666
endpoint, the number of that endpoint shall be zero.
6767

6868
The endpoint reference uses property extension with "remote-endpoint" property
69-
name followed by a reference in the same package. Such references consist of
70-
the remote device reference, the first package entry of the port data extension
71-
reference under the device and finally the first package entry of the endpoint
72-
data extension reference under the port. Individual references thus appear as::
69+
name followed by a string reference in the same package. [data-node-ref]::
7370

74-
Package() { device, "port@X", "endpoint@Y" }
71+
"device.datanode"
7572

7673
In the above example, "X" is the number of the port and "Y" is the number of
7774
the endpoint.
@@ -109,7 +106,7 @@ A simple example of this is show below::
109106
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
110107
Package () {
111108
Package () { "reg", 0 },
112-
Package () { "remote-endpoint", Package() { \_SB.PCI0.ISP, "port@4", "endpoint@0" } },
109+
Package () { "remote-endpoint", "\\_SB.PCI0.ISP.EP40" },
113110
}
114111
})
115112
}
@@ -141,7 +138,7 @@ A simple example of this is show below::
141138
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
142139
Package () {
143140
Package () { "reg", 0 },
144-
Package () { "remote-endpoint", Package () { \_SB.PCI0.I2C2.CAM0, "port@0", "endpoint@0" } },
141+
Package () { "remote-endpoint", "\\_SB.PCI0.I2C2.CAM0.EP00" },
145142
}
146143
})
147144
}

Documentation/firmware-guide/acpi/dsd/leds.rst

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,6 @@ Referring to LEDs in Device tree is documented in [video-interfaces], in
1515
"flash-leds" property documentation. In short, LEDs are directly referred to by
1616
using phandles.
1717

18-
While Device tree allows referring to any node in the tree [devicetree], in
19-
ACPI references are limited to device nodes only [acpi]. For this reason using
20-
the same mechanism on ACPI is not possible. A mechanism to refer to non-device
21-
ACPI nodes is documented in [data-node-ref].
22-
2318
ACPI allows (as does DT) using integer arguments after the reference. A
2419
combination of the LED driver device reference and an integer argument,
2520
referring to the "reg" property of the relevant LED, is used to identify
@@ -74,7 +69,7 @@ omitted. ::
7469
Package () {
7570
Package () {
7671
"flash-leds",
77-
Package () { ^LED, "led@0", ^LED, "led@1" },
72+
Package () { "^LED.LED0", "^LED.LED1" },
7873
}
7974
}
8075
})

drivers/acpi/acpica/acapps.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*
44
* Module Name: acapps - common include for ACPI applications/tools
55
*
6-
* Copyright (C) 2000 - 2023, Intel Corp.
6+
* Copyright (C) 2000 - 2025, Intel Corp.
77
*
88
*****************************************************************************/
99

@@ -17,7 +17,7 @@
1717
/* Common info for tool signons */
1818

1919
#define ACPICA_NAME "Intel ACPI Component Architecture"
20-
#define ACPICA_COPYRIGHT "Copyright (c) 2000 - 2022 Intel Corporation"
20+
#define ACPICA_COPYRIGHT "Copyright (c) 2000 - 2025 Intel Corporation"
2121

2222
#if ACPI_MACHINE_WIDTH == 64
2323
#define ACPI_WIDTH " (64-bit version)"

drivers/acpi/acpica/accommon.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*
44
* Name: accommon.h - Common include files for generation of ACPICA source
55
*
6-
* Copyright (C) 2000 - 2023, Intel Corp.
6+
* Copyright (C) 2000 - 2025, Intel Corp.
77
*
88
*****************************************************************************/
99

drivers/acpi/acpica/acconvert.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*
44
* Module Name: acapps - common include for ACPI applications/tools
55
*
6-
* Copyright (C) 2000 - 2023, Intel Corp.
6+
* Copyright (C) 2000 - 2025, Intel Corp.
77
*
88
*****************************************************************************/
99

drivers/acpi/acpica/acdebug.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*
44
* Name: acdebug.h - ACPI/AML debugger
55
*
6-
* Copyright (C) 2000 - 2023, Intel Corp.
6+
* Copyright (C) 2000 - 2025, Intel Corp.
77
*
88
*****************************************************************************/
99

@@ -37,7 +37,7 @@ struct acpi_db_argument_info {
3737
struct acpi_db_execute_walk {
3838
u32 count;
3939
u32 max_count;
40-
char name_seg[ACPI_NAMESEG_SIZE + 1];
40+
char name_seg[ACPI_NAMESEG_SIZE + 1] ACPI_NONSTRING;
4141
};
4242

4343
#define PARAM_LIST(pl) pl

drivers/acpi/acpica/acdispat.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*
44
* Name: acdispat.h - dispatcher (parser to interpreter interface)
55
*
6-
* Copyright (C) 2000 - 2023, Intel Corp.
6+
* Copyright (C) 2000 - 2025, Intel Corp.
77
*
88
*****************************************************************************/
99

0 commit comments

Comments
 (0)