Skip to content

Commit 2258a6f

Browse files
committed
Merge tag 'irqchip-5.16' into irq/core
Merge irqchip updates for Linux 5.16 from Marc Zyngier: - A large cross-arch rework to move irq_enter()/irq_exit() into the arch code, and removing it from the generic irq code. Thanks to Mark Rutland for the huge effort! - A few irqchip drivers are made modular (broadcom, meson), because that's apparently a thing... - A new driver for the Microchip External Interrupt Controller - The irq_cpu_offline()/irq_cpu_online() API is now deprecated and can only be selected on the Cavium Octeon platform. Once this platform is removed, the API will be removed at the same time. - A sprinkle of devm_* helper, as people seem to love that. - The usual spattering of small fixes and minor improvements. * tag 'irqchip-5.16': (912 commits) h8300: Fix linux/irqchip.h include mess dt-bindings: irqchip: renesas-irqc: Document r8a774e1 bindings MIPS: irq: Avoid an unused-variable error genirq: Hide irq_cpu_{on,off}line() behind a deprecated option irqchip/mips-gic: Get rid of the reliance on irq_cpu_online() MIPS: loongson64: Drop call to irq_cpu_offline() irq: remove handle_domain_{irq,nmi}() irq: remove CONFIG_HANDLE_DOMAIN_IRQ_IRQENTRY irq: riscv: perform irqentry in entry code irq: openrisc: perform irqentry in entry code irq: csky: perform irqentry in entry code irq: arm64: perform irqentry in entry code irq: arm: perform irqentry in entry code irq: add a (temporary) CONFIG_HANDLE_DOMAIN_IRQ_IRQENTRY irq: nds32: avoid CONFIG_HANDLE_DOMAIN_IRQ irq: arc: avoid CONFIG_HANDLE_DOMAIN_IRQ irq: add generic_handle_arch_irq() irq: unexport handle_irq_desc() irq: simplify handle_domain_{irq,nmi}() irq: mips: simplify do_domain_IRQ() ... Signed-off-by: Borislav Petkov <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2 parents 441e903 + 11e4547 commit 2258a6f

File tree

1,045 files changed

+11047
-5986
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,045 files changed

+11047
-5986
lines changed

Documentation/admin-guide/README.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,7 @@ Configuring the kernel
259259
Compiling the kernel
260260
--------------------
261261

262-
- Make sure you have at least gcc 4.9 available.
262+
- Make sure you have at least gcc 5.1 available.
263263
For more information, refer to :ref:`Documentation/process/changes.rst <changes>`.
264264

265265
Please note that you can still run a.out user programs with this kernel.

Documentation/core-api/irq/irq-domain.rst

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,6 @@ variety of methods:
6767
deprecated
6868
- generic_handle_domain_irq() handles an interrupt described by a
6969
domain and a hwirq number
70-
- handle_domain_irq() does the same thing for root interrupt
71-
controllers and deals with the set_irq_reg()/irq_enter() sequences
72-
that most architecture requires
7370

7471
Note that irq domain lookups must happen in contexts that are
7572
compatible with a RCU read-side critical section.
@@ -175,9 +172,10 @@ for IRQ numbers that are passed to struct device registrations. In that
175172
case the Linux IRQ numbers cannot be dynamically assigned and the legacy
176173
mapping should be used.
177174

178-
As the name implies, the *_legacy() functions are deprecated and only
175+
As the name implies, the \*_legacy() functions are deprecated and only
179176
exist to ease the support of ancient platforms. No new users should be
180-
added.
177+
added. Same goes for the \*_simple() functions when their use results
178+
in the legacy behaviour.
181179

182180
The legacy map assumes a contiguous range of IRQ numbers has already
183181
been allocated for the controller and that the IRQ number can be

Documentation/devicetree/bindings/arm/tegra.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ properties:
5454
- const: toradex,apalis_t30
5555
- const: nvidia,tegra30
5656
- items:
57-
- const: toradex,apalis_t30-eval-v1.1
57+
- const: toradex,apalis_t30-v1.1-eval
5858
- const: toradex,apalis_t30-eval
5959
- const: toradex,apalis_t30-v1.1
6060
- const: toradex,apalis_t30

Documentation/devicetree/bindings/display/mediatek/mediatek,disp.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ function block.
99

1010
All DISP device tree nodes must be siblings to the central MMSYS_CONFIG node.
1111
For a description of the MMSYS_CONFIG binding, see
12-
Documentation/devicetree/bindings/arm/mediatek/mediatek,mmsys.txt.
12+
Documentation/devicetree/bindings/arm/mediatek/mediatek,mmsys.yaml.
1313

1414
DISP function blocks
1515
====================

Documentation/devicetree/bindings/interconnect/qcom,sdm660.yaml

Lines changed: 42 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,11 @@ properties:
3131

3232
clocks:
3333
minItems: 1
34-
maxItems: 3
34+
maxItems: 7
3535

3636
clock-names:
3737
minItems: 1
38-
maxItems: 3
38+
maxItems: 7
3939

4040
required:
4141
- compatible
@@ -72,6 +72,32 @@ allOf:
7272
contains:
7373
enum:
7474
- qcom,sdm660-a2noc
75+
then:
76+
properties:
77+
clocks:
78+
items:
79+
- description: Bus Clock.
80+
- description: Bus A Clock.
81+
- description: IPA Clock.
82+
- description: UFS AXI Clock.
83+
- description: Aggregate2 UFS AXI Clock.
84+
- description: Aggregate2 USB3 AXI Clock.
85+
- description: Config NoC USB2 AXI Clock.
86+
clock-names:
87+
items:
88+
- const: bus
89+
- const: bus_a
90+
- const: ipa
91+
- const: ufs_axi
92+
- const: aggre2_ufs_axi
93+
- const: aggre2_usb3_axi
94+
- const: cfg_noc_usb2_axi
95+
96+
- if:
97+
properties:
98+
compatible:
99+
contains:
100+
enum:
75101
- qcom,sdm660-bimc
76102
- qcom,sdm660-cnoc
77103
- qcom,sdm660-gnoc
@@ -91,6 +117,7 @@ examples:
91117
- |
92118
#include <dt-bindings/clock/qcom,rpmcc.h>
93119
#include <dt-bindings/clock/qcom,mmcc-sdm660.h>
120+
#include <dt-bindings/clock/qcom,gcc-sdm660.h>
94121
95122
bimc: interconnect@1008000 {
96123
compatible = "qcom,sdm660-bimc";
@@ -123,9 +150,20 @@ examples:
123150
compatible = "qcom,sdm660-a2noc";
124151
reg = <0x01704000 0xc100>;
125152
#interconnect-cells = <1>;
126-
clock-names = "bus", "bus_a";
153+
clock-names = "bus",
154+
"bus_a",
155+
"ipa",
156+
"ufs_axi",
157+
"aggre2_ufs_axi",
158+
"aggre2_usb3_axi",
159+
"cfg_noc_usb2_axi";
127160
clocks = <&rpmcc RPM_SMD_AGGR2_NOC_CLK>,
128-
<&rpmcc RPM_SMD_AGGR2_NOC_A_CLK>;
161+
<&rpmcc RPM_SMD_AGGR2_NOC_A_CLK>,
162+
<&rpmcc RPM_SMD_IPA_CLK>,
163+
<&gcc GCC_UFS_AXI_CLK>,
164+
<&gcc GCC_AGGRE2_UFS_AXI_CLK>,
165+
<&gcc GCC_AGGRE2_USB3_AXI_CLK>,
166+
<&gcc GCC_CFG_NOC_USB2_AXI_CLK>;
129167
};
130168
131169
mnoc: interconnect@1745000 {
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/interrupt-controller/microchip,eic.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Microchip External Interrupt Controller
8+
9+
maintainers:
10+
- Claudiu Beznea <[email protected]>
11+
12+
description:
13+
This interrupt controller is found in Microchip SoCs (SAMA7G5) and provides
14+
support for handling up to 2 external interrupt lines.
15+
16+
properties:
17+
compatible:
18+
enum:
19+
- microchip,sama7g5-eic
20+
21+
reg:
22+
maxItems: 1
23+
24+
interrupt-controller: true
25+
26+
'#interrupt-cells':
27+
const: 2
28+
description:
29+
The first cell is the input IRQ number (between 0 and 1), the second cell
30+
is the trigger type as defined in interrupt.txt present in this directory.
31+
32+
interrupts:
33+
description: |
34+
Contains the GIC SPI IRQs mapped to the external interrupt lines. They
35+
should be specified sequentially from output 0 to output 1.
36+
minItems: 2
37+
maxItems: 2
38+
39+
clocks:
40+
maxItems: 1
41+
42+
clock-names:
43+
const: pclk
44+
45+
required:
46+
- compatible
47+
- reg
48+
- interrupt-controller
49+
- '#interrupt-cells'
50+
- interrupts
51+
- clocks
52+
- clock-names
53+
54+
additionalProperties: false
55+
56+
examples:
57+
- |
58+
#include <dt-bindings/clock/at91.h>
59+
#include <dt-bindings/interrupt-controller/arm-gic.h>
60+
61+
eic: interrupt-controller@e1628000 {
62+
compatible = "microchip,sama7g5-eic";
63+
reg = <0xe1628000 0x100>;
64+
interrupt-parent = <&gic>;
65+
interrupt-controller;
66+
#interrupt-cells = <2>;
67+
interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>,
68+
<GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
69+
clocks = <&pmc PMC_TYPE_PERIPHERAL 37>;
70+
clock-names = "pclk";
71+
};
72+
73+
...

Documentation/devicetree/bindings/interrupt-controller/renesas,irqc.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ properties:
2727
- renesas,intc-ex-r8a774a1 # RZ/G2M
2828
- renesas,intc-ex-r8a774b1 # RZ/G2N
2929
- renesas,intc-ex-r8a774c0 # RZ/G2E
30+
- renesas,intc-ex-r8a774e1 # RZ/G2H
3031
- renesas,intc-ex-r8a7795 # R-Car H3
3132
- renesas,intc-ex-r8a7796 # R-Car M3-W
3233
- renesas,intc-ex-r8a77961 # R-Car M3-W+

Documentation/devicetree/bindings/net/allwinner,sun8i-a83t-emac.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@ properties:
1919
- const: allwinner,sun8i-v3s-emac
2020
- const: allwinner,sun50i-a64-emac
2121
- items:
22-
- const: allwinner,sun50i-h6-emac
22+
- enum:
23+
- allwinner,sun20i-d1-emac
24+
- allwinner,sun50i-h6-emac
2325
- const: allwinner,sun50i-a64-emac
2426

2527
reg:
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/ufs/samsung,exynos-ufs.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Samsung SoC series UFS host controller Device Tree Bindings
8+
9+
maintainers:
10+
- Alim Akhtar <[email protected]>
11+
12+
description: |
13+
Each Samsung UFS host controller instance should have its own node.
14+
This binding define Samsung specific binding other then what is used
15+
in the common ufshcd bindings
16+
[1] Documentation/devicetree/bindings/ufs/ufshcd-pltfrm.txt
17+
18+
properties:
19+
20+
compatible:
21+
enum:
22+
- samsung,exynos7-ufs
23+
24+
reg:
25+
items:
26+
- description: HCI register
27+
- description: vendor specific register
28+
- description: unipro register
29+
- description: UFS protector register
30+
31+
reg-names:
32+
items:
33+
- const: hci
34+
- const: vs_hci
35+
- const: unipro
36+
- const: ufsp
37+
38+
clocks:
39+
items:
40+
- description: ufs link core clock
41+
- description: unipro main clock
42+
43+
clock-names:
44+
items:
45+
- const: core_clk
46+
- const: sclk_unipro_main
47+
48+
interrupts:
49+
maxItems: 1
50+
51+
phys:
52+
maxItems: 1
53+
54+
phy-names:
55+
const: ufs-phy
56+
57+
required:
58+
- compatible
59+
- reg
60+
- interrupts
61+
- phys
62+
- phy-names
63+
- clocks
64+
- clock-names
65+
66+
additionalProperties: false
67+
68+
examples:
69+
- |
70+
#include <dt-bindings/interrupt-controller/arm-gic.h>
71+
#include <dt-bindings/clock/exynos7-clk.h>
72+
73+
ufs: ufs@15570000 {
74+
compatible = "samsung,exynos7-ufs";
75+
reg = <0x15570000 0x100>,
76+
<0x15570100 0x100>,
77+
<0x15571000 0x200>,
78+
<0x15572000 0x300>;
79+
reg-names = "hci", "vs_hci", "unipro", "ufsp";
80+
interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
81+
clocks = <&clock_fsys1 ACLK_UFS20_LINK>,
82+
<&clock_fsys1 SCLK_UFSUNIPRO20_USER>;
83+
clock-names = "core_clk", "sclk_unipro_main";
84+
pinctrl-names = "default";
85+
pinctrl-0 = <&ufs_rst_n &ufs_refclk_out>;
86+
phys = <&ufs_phy>;
87+
phy-names = "ufs-phy";
88+
};
89+
...

Documentation/hwmon/k10temp.rst

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -132,20 +132,3 @@ On Family 17h and Family 18h CPUs, additional temperature sensors may report
132132
Core Complex Die (CCD) temperatures. Up to 8 such temperatures are reported
133133
as temp{3..10}_input, labeled Tccd{1..8}. Actual support depends on the CPU
134134
variant.
135-
136-
Various Family 17h and 18h CPUs report voltage and current telemetry
137-
information. The following attributes may be reported.
138-
139-
Attribute Label Description
140-
=============== ======= ================
141-
in0_input Vcore Core voltage
142-
in1_input Vsoc SoC voltage
143-
curr1_input Icore Core current
144-
curr2_input Isoc SoC current
145-
=============== ======= ================
146-
147-
Current values are raw (unscaled) as reported by the CPU. Core current is
148-
reported as multiples of 1A / LSB. SoC is reported as multiples of 0.25A
149-
/ LSB. The real current is board specific. Reported currents should be seen
150-
as rough guidance, and should be scaled using sensors3.conf as appropriate
151-
for a given board.

0 commit comments

Comments
 (0)