Skip to content

Commit 866147b

Browse files
committed
Merge tag 'drivers-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
Pull ARM SoC driver updates from Arnd Bergmann: "These are updates for drivers that are tied to a particular SoC, including the correspondig device tree bindings: - A couple of reset controller changes for unisoc, uniphier, renesas and zte platforms - memory controller driver fixes for omap and tegra - Rockchip io domain driver updates - Lots of updates for qualcomm platforms, mostly touching their firmware and power management drivers - Tegra FUSE and firmware driver updateѕ - Support for virtio transports in the SCMI firmware framework - cleanup of ixp4xx drivers, towards enabling multiplatform support and bringing it up to date with modern platforms - Minor updates for keystone, mediatek, omap, renesas" * tag 'drivers-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (96 commits) reset: simple: remove ZTE details in Kconfig help soc: rockchip: io-domain: Remove unneeded semicolon soc: rockchip: io-domain: add rk3568 support dt-bindings: power: add rk3568-pmu-io-domain support bus: ixp4xx: return on error in ixp4xx_exp_probe() soc: renesas: Prefer memcpy() over strcpy() firmware: tegra: Stop using seq_get_buf() soc/tegra: fuse: Enable fuse clock on suspend for Tegra124 soc/tegra: fuse: Add runtime PM support soc/tegra: fuse: Clear fuse->clk on driver probe failure soc/tegra: pmc: Prevent racing with cpuilde driver soc/tegra: bpmp: Remove unused including <linux/version.h> dt-bindings: soc: ti: pruss: Add dma-coherent property soc: ti: Remove pm_runtime_irq_safe() usage for smartreflex soc: ti: pruss: Enable support for ICSSG subsystems on K3 AM64x SoCs dt-bindings: soc: ti: pruss: Update bindings for K3 AM64x SoCs firmware: arm_scmi: Use WARN_ON() to check configured transports firmware: arm_scmi: Fix boolconv.cocci warnings soc: mediatek: mmsys: Fix missing UFOE component in mt8173 table routing soc: mediatek: mmsys: add MT8365 support ...
2 parents 634135a + 0677963 commit 866147b

File tree

93 files changed

+4207
-1032
lines changed

Some content is hidden

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

93 files changed

+4207
-1032
lines changed
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/ata/intel,ixp4xx-compact-flash.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Intel IXP4xx CompactFlash Card Controller
8+
9+
maintainers:
10+
- Linus Walleij <[email protected]>
11+
12+
description: |
13+
The IXP4xx network processors have a CompactFlash interface that presents
14+
a CompactFlash card to the system as a true IDE (parallel ATA) device. The
15+
device is always connected to the expansion bus of the IXP4xx SoCs using one
16+
or two chip select areas and address translating logic on the board. The
17+
node must be placed inside a chip select node on the IXP4xx expansion bus.
18+
19+
properties:
20+
compatible:
21+
const: intel,ixp4xx-compact-flash
22+
23+
reg:
24+
items:
25+
- description: Command interface registers
26+
- description: Control interface registers
27+
28+
interrupts:
29+
maxItems: 1
30+
31+
required:
32+
- compatible
33+
- reg
34+
- interrupts
35+
36+
allOf:
37+
- $ref: pata-common.yaml#
38+
39+
unevaluatedProperties: false
40+
41+
examples:
42+
- |
43+
#include <dt-bindings/interrupt-controller/irq.h>
44+
45+
bus@c4000000 {
46+
compatible = "intel,ixp43x-expansion-bus-controller", "syscon";
47+
reg = <0xc4000000 0x1000>;
48+
native-endian;
49+
#address-cells = <2>;
50+
#size-cells = <1>;
51+
ranges = <0 0x0 0x50000000 0x01000000>, <1 0x0 0x51000000 0x01000000>;
52+
dma-ranges = <0 0x0 0x50000000 0x01000000>, <1 0x0 0x51000000 0x01000000>;
53+
ide@1,0 {
54+
compatible = "intel,ixp4xx-compact-flash";
55+
reg = <1 0x00000000 0x1000>, <1 0x00040000 0x1000>;
56+
interrupt-parent = <&gpio0>;
57+
interrupts = <12 IRQ_TYPE_EDGE_RISING>;
58+
};
59+
};
60+
61+
...
Lines changed: 168 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,168 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/bus/intel,ixp4xx-expansion-bus-controller.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Intel IXP4xx Expansion Bus Controller
8+
9+
description: |
10+
The IXP4xx expansion bus controller handles access to devices on the
11+
memory-mapped expansion bus on the Intel IXP4xx family of system on chips,
12+
including IXP42x, IXP43x, IXP45x and IXP46x.
13+
14+
maintainers:
15+
- Linus Walleij <[email protected]>
16+
17+
properties:
18+
$nodename:
19+
pattern: '^bus@[0-9a-f]+$'
20+
21+
compatible:
22+
items:
23+
- enum:
24+
- intel,ixp42x-expansion-bus-controller
25+
- intel,ixp43x-expansion-bus-controller
26+
- intel,ixp45x-expansion-bus-controller
27+
- intel,ixp46x-expansion-bus-controller
28+
- const: syscon
29+
30+
reg:
31+
description: Control registers for the expansion bus, these are not
32+
inside the memory range handled by the expansion bus.
33+
maxItems: 1
34+
35+
native-endian:
36+
$ref: /schemas/types.yaml#/definitions/flag
37+
description: The IXP4xx has a peculiar MMIO access scheme, as it changes
38+
the access pattern for words (swizzling) on the bus depending on whether
39+
the SoC is running in big-endian or little-endian mode. Thus the
40+
registers must always be accessed using native endianness.
41+
42+
"#address-cells":
43+
description: |
44+
The first cell is the chip select number.
45+
The second cell is the address offset within the bank.
46+
const: 2
47+
48+
"#size-cells":
49+
const: 1
50+
51+
ranges: true
52+
dma-ranges: true
53+
54+
patternProperties:
55+
"^.*@[0-7],[0-9a-f]+$":
56+
description: Devices attached to chip selects are represented as
57+
subnodes.
58+
type: object
59+
60+
properties:
61+
intel,ixp4xx-eb-t1:
62+
description: Address timing, extend address phase with n cycles.
63+
$ref: /schemas/types.yaml#/definitions/uint32
64+
maximum: 3
65+
66+
intel,ixp4xx-eb-t2:
67+
description: Setup chip select timing, extend setup phase with n cycles.
68+
$ref: /schemas/types.yaml#/definitions/uint32
69+
maximum: 3
70+
71+
intel,ixp4xx-eb-t3:
72+
description: Strobe timing, extend strobe phase with n cycles.
73+
$ref: /schemas/types.yaml#/definitions/uint32
74+
maximum: 15
75+
76+
intel,ixp4xx-eb-t4:
77+
description: Hold timing, extend hold phase with n cycles.
78+
$ref: /schemas/types.yaml#/definitions/uint32
79+
maximum: 3
80+
81+
intel,ixp4xx-eb-t5:
82+
description: Recovery timing, extend recovery phase with n cycles.
83+
$ref: /schemas/types.yaml#/definitions/uint32
84+
maximum: 15
85+
86+
intel,ixp4xx-eb-cycle-type:
87+
description: The type of cycles to use on the expansion bus for this
88+
chip select. 0 = Intel cycles, 1 = Motorola cycles, 2 = HPI cycles.
89+
$ref: /schemas/types.yaml#/definitions/uint32
90+
enum: [0, 1, 2]
91+
92+
intel,ixp4xx-eb-byte-access-on-halfword:
93+
description: Allow byte read access on half word devices.
94+
$ref: /schemas/types.yaml#/definitions/uint32
95+
enum: [0, 1]
96+
97+
intel,ixp4xx-eb-hpi-hrdy-pol-high:
98+
description: Set HPI HRDY polarity to active high when using HPI.
99+
$ref: /schemas/types.yaml#/definitions/uint32
100+
enum: [0, 1]
101+
102+
intel,ixp4xx-eb-mux-address-and-data:
103+
description: Multiplex address and data on the data bus.
104+
$ref: /schemas/types.yaml#/definitions/uint32
105+
enum: [0, 1]
106+
107+
intel,ixp4xx-eb-ahb-split-transfers:
108+
description: Enable AHB split transfers.
109+
$ref: /schemas/types.yaml#/definitions/uint32
110+
enum: [0, 1]
111+
112+
intel,ixp4xx-eb-write-enable:
113+
description: Enable write cycles.
114+
$ref: /schemas/types.yaml#/definitions/uint32
115+
enum: [0, 1]
116+
117+
intel,ixp4xx-eb-byte-access:
118+
description: Expansion bus uses only 8 bits. The default is to use
119+
16 bits.
120+
$ref: /schemas/types.yaml#/definitions/uint32
121+
enum: [0, 1]
122+
123+
required:
124+
- compatible
125+
- reg
126+
- native-endian
127+
- "#address-cells"
128+
- "#size-cells"
129+
- ranges
130+
- dma-ranges
131+
132+
additionalProperties: false
133+
134+
examples:
135+
- |
136+
#include <dt-bindings/interrupt-controller/irq.h>
137+
bus@50000000 {
138+
compatible = "intel,ixp42x-expansion-bus-controller", "syscon";
139+
reg = <0xc4000000 0x28>;
140+
native-endian;
141+
#address-cells = <2>;
142+
#size-cells = <1>;
143+
ranges = <0 0x0 0x50000000 0x01000000>,
144+
<1 0x0 0x51000000 0x01000000>;
145+
dma-ranges = <0 0x0 0x50000000 0x01000000>,
146+
<1 0x0 0x51000000 0x01000000>;
147+
flash@0,0 {
148+
compatible = "intel,ixp4xx-flash", "cfi-flash";
149+
bank-width = <2>;
150+
reg = <0 0x00000000 0x1000000>;
151+
intel,ixp4xx-eb-t3 = <3>;
152+
intel,ixp4xx-eb-cycle-type = <0>;
153+
intel,ixp4xx-eb-byte-access-on-halfword = <1>;
154+
intel,ixp4xx-eb-write-enable = <1>;
155+
intel,ixp4xx-eb-byte-access = <0>;
156+
};
157+
serial@1,0 {
158+
compatible = "exar,xr16l2551", "ns8250";
159+
reg = <1 0x00000000 0x10>;
160+
interrupt-parent = <&gpio0>;
161+
interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
162+
clock-frequency = <1843200>;
163+
intel,ixp4xx-eb-t3 = <3>;
164+
intel,ixp4xx-eb-cycle-type = <1>;
165+
intel,ixp4xx-eb-write-enable = <1>;
166+
intel,ixp4xx-eb-byte-access = <1>;
167+
};
168+
};

Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ Required properties:
99
"fsl,imx53-sdma"
1010
"fsl,imx6q-sdma"
1111
"fsl,imx7d-sdma"
12+
"fsl,imx6ul-sdma"
1213
"fsl,imx8mq-sdma"
1314
"fsl,imx8mm-sdma"
1415
"fsl,imx8mn-sdma"

Documentation/devicetree/bindings/firmware/arm,scmi.yaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,10 @@ properties:
3434
- description: SCMI compliant firmware with ARM SMC/HVC transport
3535
items:
3636
- const: arm,scmi-smc
37+
- description: SCMI compliant firmware with SCMI Virtio transport.
38+
The virtio transport only supports a single device.
39+
items:
40+
- const: arm,scmi-virtio
3741

3842
interrupts:
3943
description:
@@ -172,6 +176,7 @@ patternProperties:
172176
Each sub-node represents a protocol supported. If the platform
173177
supports a dedicated communication channel for a particular protocol,
174178
then the corresponding transport properties must be present.
179+
The virtio transport does not support a dedicated communication channel.
175180

176181
properties:
177182
reg:
@@ -195,7 +200,6 @@ patternProperties:
195200

196201
required:
197202
- compatible
198-
- shmem
199203

200204
if:
201205
properties:
@@ -209,6 +213,7 @@ then:
209213

210214
required:
211215
- mboxes
216+
- shmem
212217

213218
else:
214219
if:
@@ -219,6 +224,7 @@ else:
219224
then:
220225
required:
221226
- arm,smc-id
227+
- shmem
222228

223229
examples:
224230
- |

Documentation/devicetree/bindings/power/qcom,rpmpd.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ properties:
3030
- qcom,sc8180x-rpmhpd
3131
- qcom,sdm845-rpmhpd
3232
- qcom,sdx55-rpmhpd
33+
- qcom,sm6115-rpmpd
3334
- qcom,sm8150-rpmhpd
3435
- qcom,sm8250-rpmhpd
3536
- qcom,sm8350-rpmhpd

0 commit comments

Comments
 (0)