Skip to content

Commit 4df9c0a

Browse files
committed
Merge tag 'soc-newsoc-6.17' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
Pull new SoC support from Arnd Bergmann: "These five newly supported chips come with both devicetree descriptions and the changes to wire them up to the build system for easier bisection. The chips in question are: - Marvell PXA1908 was the first 64-bit mobile phone chip from Marvell in the product line that started with the Digital StrongARM SA1100 based PDAs and continued with the Intel PXA2xx that dominated early smartphones. This one only made it only into a few products before the entire product line was cut in 2015. - The QiLai SoC is made by RISC-V core designer Andes Technologies and is in the 'Voyager' reference board in MicroATX form factor. It uses four in-order AX45MP cores, which is the midrange product from Andes. - CIX P1 is one of the few Arm chips designed for small workstations, and this one uses 12 Cortex-A720/A520 cores, making it also one of the only ARMv9.2 machines that one can but at the moment. - Axiado AX3000 is an embedded chip with relative small Cortex-A53 CPU cores described as a "Trusted Control/Compute Unit" that can be used as a BMC in servers. In addition to the usual I/O, this one comes with 10GBit ethernet and and a 4TOPS NPU. - Sophgo SG2000 is an embedded chip that comes with both RISC-V and Arm cores that can run Linux. This was already supported for RISC-V but now it also works on Arm One more chip, the Black Sesame C1200 did not make it in tirm for the merge window" * tag 'soc-newsoc-6.17' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (38 commits) arm64: defconfig: Enable rudimentary Sophgo SG2000 support arm64: Add SOPHGO SOC family Kconfig support arm64: dts: sophgo: Add Duo Module 01 Evaluation Board arm64: dts: sophgo: Add Duo Module 01 arm64: dts: sophgo: Add initial SG2000 SoC device tree MAINTAINERS: Add entry for Axiado arm64: defconfig: enable the Axiado family arm64: dts: axiado: Add initial support for AX3000 SoC and eval board arm64: add Axiado SoC family dt-bindings: i3c: cdns: add Axiado AX3000 I3C controller dt-bindings: serial: cdns: add Axiado AX3000 UART controller dt-bindings: gpio: cdns: add Axiado AX3000 GPIO variant dt-bindings: gpio: cdns: convert to YAML dt-bindings: arm: axiado: add AX3000 EVK compatible strings dt-bindings: vendor-prefixes: Add Axiado Corporation MAINTAINERS: Add CIX SoC maintainer entry arm64: dts: cix: Add sky1 base dts initial support dt-bindings: clock: cix: Add CIX sky1 scmi clock id arm64: defconfig: Enable CIX SoC mailbox: add CIX mailbox driver ...
2 parents 0f46f50 + 05a6230 commit 4df9c0a

Some content is hidden

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

42 files changed

+3428
-63
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/arm/axiado.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Axiado Platforms
8+
9+
maintainers:
10+
- Harshit Shah <[email protected]>
11+
12+
properties:
13+
$nodename:
14+
const: '/'
15+
compatible:
16+
oneOf:
17+
- description: AX3000 based boards
18+
items:
19+
- enum:
20+
- axiado,ax3000-evk # Axiado AX3000 Evaluation Board
21+
- const: axiado,ax3000 # Axiado AX3000 SoC
22+
23+
additionalProperties: true
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/arm/cix.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: CIX platforms
8+
9+
maintainers:
10+
- Peter Chen <[email protected]>
11+
- Fugang Duan <[email protected]>
12+
13+
properties:
14+
$nodename:
15+
const: '/'
16+
compatible:
17+
oneOf:
18+
19+
- description: Radxa Orion O6
20+
items:
21+
- const: radxa,orion-o6
22+
- const: cix,sky1
23+
24+
additionalProperties: true
25+
26+
...

Documentation/devicetree/bindings/arm/mrvl/mrvl.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,11 @@ properties:
3535
- enum:
3636
- dell,wyse-ariel
3737
- const: marvell,mmp3
38+
- description: PXA1908 based boards
39+
items:
40+
- enum:
41+
- samsung,coreprimevelte
42+
- const: marvell,pxa1908
3843

3944
additionalProperties: true
4045

Documentation/devicetree/bindings/gpio/cdns,gpio.txt

Lines changed: 0 additions & 43 deletions
This file was deleted.
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/gpio/cdns,gpio.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Cadence GPIO Controller
8+
9+
maintainers:
10+
- Jan Kotas <[email protected]>
11+
12+
properties:
13+
compatible:
14+
oneOf:
15+
- const: cdns,gpio-r1p02
16+
- items:
17+
- enum:
18+
- axiado,ax3000-gpio
19+
- const: cdns,gpio-r1p02
20+
21+
reg:
22+
maxItems: 1
23+
24+
clocks:
25+
maxItems: 1
26+
27+
ngpios:
28+
minimum: 1
29+
maximum: 32
30+
31+
gpio-controller: true
32+
33+
"#gpio-cells":
34+
const: 2
35+
description: |
36+
- First cell is the GPIO line number.
37+
- Second cell is flags as defined in <dt-bindings/gpio/gpio.h>,
38+
only GPIO_ACTIVE_HIGH and GPIO_ACTIVE_LOW supported.
39+
40+
interrupt-controller: true
41+
42+
"#interrupt-cells":
43+
const: 2
44+
description: |
45+
- First cell is the GPIO line number used as IRQ.
46+
- Second cell is the trigger type, as defined in
47+
<dt-bindings/interrupt-controller/irq.h>.
48+
49+
interrupts:
50+
maxItems: 1
51+
52+
required:
53+
- compatible
54+
- reg
55+
- clocks
56+
- gpio-controller
57+
- "#gpio-cells"
58+
59+
if:
60+
required: [interrupt-controller]
61+
then:
62+
required:
63+
- interrupts
64+
65+
additionalProperties: false
66+
67+
examples:
68+
- |
69+
#include <dt-bindings/interrupt-controller/arm-gic.h>
70+
#include <dt-bindings/interrupt-controller/irq.h>
71+
gpio0: gpio-controller@fd060000 {
72+
compatible = "cdns,gpio-r1p02";
73+
reg = <0xfd060000 0x1000>;
74+
clocks = <&gpio_clk>;
75+
76+
interrupt-parent = <&gic>;
77+
interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
78+
79+
gpio-controller;
80+
#gpio-cells = <2>;
81+
82+
interrupt-controller;
83+
#interrupt-cells = <2>;
84+
};

Documentation/devicetree/bindings/i3c/cdns,i3c-master.yaml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,12 @@ allOf:
1414

1515
properties:
1616
compatible:
17-
const: cdns,i3c-master
17+
oneOf:
18+
- const: cdns,i3c-master
19+
- items:
20+
- enum:
21+
- axiado,ax3000-i3c
22+
- const: cdns,i3c-master
1823

1924
reg:
2025
maxItems: 1
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/interrupt-controller/andestech,plicsw.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Andes machine-level software interrupt controller
8+
9+
description:
10+
In the Andes platform such as QiLai SoC, the PLIC module is instantiated a
11+
second time with all interrupt sources tied to zero as the software interrupt
12+
controller (PLIC_SW). PLIC_SW directly connects to the machine-mode
13+
inter-processor interrupt lines of CPUs, so RISC-V per-CPU local interrupt
14+
controller is the parent interrupt controller for PLIC_SW. PLIC_SW can
15+
generate machine-mode inter-processor interrupts through programming its
16+
registers.
17+
18+
maintainers:
19+
- Ben Zong-You Xie <[email protected]>
20+
21+
properties:
22+
compatible:
23+
items:
24+
- enum:
25+
- andestech,qilai-plicsw
26+
- const: andestech,plicsw
27+
28+
reg:
29+
maxItems: 1
30+
31+
interrupts-extended:
32+
minItems: 1
33+
maxItems: 15872
34+
description:
35+
Specifies which harts are connected to the PLIC_SW. Each item must points
36+
to a riscv,cpu-intc node, which has a riscv cpu node as parent.
37+
38+
additionalProperties: false
39+
40+
required:
41+
- compatible
42+
- reg
43+
- interrupts-extended
44+
45+
examples:
46+
- |
47+
interrupt-controller@400000 {
48+
compatible = "andestech,qilai-plicsw", "andestech,plicsw";
49+
reg = <0x400000 0x400000>;
50+
interrupts-extended = <&cpu0intc 3>,
51+
<&cpu1intc 3>,
52+
<&cpu2intc 3>,
53+
<&cpu3intc 3>;
54+
};

Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ properties:
5353
oneOf:
5454
- items:
5555
- enum:
56+
- andestech,qilai-plic
5657
- renesas,r9a07g043-plic
5758
- const: andestech,nceplic100
5859
- items:
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/mailbox/cix,sky1-mbox.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Cixtech mailbox controller
8+
9+
maintainers:
10+
- Guomin Chen <[email protected]>
11+
12+
description:
13+
The Cixtech mailbox controller, used in the Cixtech Sky1 SoC,
14+
is used for message transmission between multiple processors
15+
within the SoC, such as the AP, PM, audio DSP, SensorHub MCU,
16+
and others
17+
18+
Each Cixtech mailbox controller is unidirectional, so they are
19+
typically used in pairs-one for receiving and one for transmitting.
20+
21+
Each Cixtech mailbox supports 11 channels with different transmission modes
22+
channel 0-7 - Fast channel with 32bit transmit register and IRQ support
23+
channel 8 - Doorbell mode,using the mailbox as an interrupt-generating
24+
mechanism.
25+
channel 9 - Fifo based channel with 32*32bit depth fifo and IRQ support
26+
channel 10 - Reg based channel with 32*32bit transmit register and
27+
Doorbell+transmit acknowledgment IRQ support
28+
29+
In the CIX Sky1 SoC use case, there are 4 pairs of mailbox controllers
30+
AP <--> PM - using Doorbell transfer mode
31+
AP <--> SE - using REG transfer mode
32+
AP <--> DSP - using FIFO transfer mode
33+
AP <--> SensorHub - using FIFO transfer mode
34+
35+
properties:
36+
compatible:
37+
const: cix,sky1-mbox
38+
39+
reg:
40+
maxItems: 1
41+
42+
interrupts:
43+
maxItems: 1
44+
45+
"#mbox-cells":
46+
const: 1
47+
48+
cix,mbox-dir:
49+
$ref: /schemas/types.yaml#/definitions/string
50+
description: Direction of the mailbox relative to the AP
51+
enum: [tx, rx]
52+
53+
required:
54+
- compatible
55+
- reg
56+
- interrupts
57+
- "#mbox-cells"
58+
- cix,mbox-dir
59+
60+
additionalProperties: false
61+
62+
examples:
63+
- |
64+
#include <dt-bindings/interrupt-controller/arm-gic.h>
65+
66+
soc {
67+
#address-cells = <2>;
68+
#size-cells = <2>;
69+
70+
mbox_ap2pm: mailbox@30000000 {
71+
compatible = "cix,sky1-mbox";
72+
reg = <0 0x30000000 0 0x10000>;
73+
interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH 0>;
74+
#mbox-cells = <1>;
75+
cix,mbox-dir = "tx";
76+
};
77+
};

Documentation/devicetree/bindings/mmc/sdhci-pxa.yaml

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,26 @@ allOf:
3030
maxItems: 1
3131
reg-names:
3232
maxItems: 1
33+
- if:
34+
properties:
35+
compatible:
36+
contains:
37+
const: mrvl,pxav1-mmc
38+
then:
39+
properties:
40+
pinctrl-names:
41+
description:
42+
Optional for supporting PXA168 SDIO IRQ errata to switch CMD pin between
43+
SDIO CMD and GPIO mode.
44+
items:
45+
- const: default
46+
- const: state_cmd_gpio
47+
pinctrl-0:
48+
description:
49+
Should contain default pinctrl.
50+
pinctrl-1:
51+
description:
52+
Should switch CMD pin to GPIO mode as a high output.
3353

3454
properties:
3555
compatible:
@@ -62,22 +82,6 @@ properties:
6282
- const: io
6383
- const: core
6484

65-
pinctrl-names:
66-
description:
67-
Optional for supporting PXA168 SDIO IRQ errata to switch CMD pin between
68-
SDIO CMD and GPIO mode.
69-
items:
70-
- const: default
71-
- const: state_cmd_gpio
72-
73-
pinctrl-0:
74-
description:
75-
Should contain default pinctrl.
76-
77-
pinctrl-1:
78-
description:
79-
Should switch CMD pin to GPIO mode as a high output.
80-
8185
mrvl,clk-delay-cycles:
8286
description: Specify a number of cycles to delay for tuning.
8387
$ref: /schemas/types.yaml#/definitions/uint32

0 commit comments

Comments
 (0)