Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ maintainers:
properties:
compatible:
oneOf:
- const: spacemit,k3-aclint-mswi
- items:
- enum:
- sophgo,sg2042-aclint-mswi
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,13 @@ description:
properties:
compatible:
oneOf:
- enum:
- mips,p8700-aclint-sswi
- spacemit,k3-aclint-sswi
- items:
- enum:
- sophgo,sg2044-aclint-sswi
- const: thead,c900-aclint-sswi
- items:
- const: mips,p8700-aclint-sswi
- items:
- enum:
- anlogic,dr1v90-aclint-sswi
Expand Down
5 changes: 4 additions & 1 deletion Documentation/devicetree/bindings/timer/sifive,clint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ properties:
- microchip,pic64gx-clint # Microchip PIC64GX
- sifive,fu540-c000-clint # SiFive FU540
- spacemit,k1-clint # SpacemiT K1
- spacemit,k3-clint # SpacemiT K3
- starfive,jh7100-clint # StarFive JH7100
- starfive,jh7110-clint # StarFive JH7110
- starfive,jh8100-clint # StarFive JH8100
Expand Down Expand Up @@ -62,6 +61,10 @@ properties:
- const: riscv,clint0
deprecated: true
description: For the QEMU virt machine only
- items:
- const: spacemit,k3-clint
- const: sifive,clint0
deprecated: true

description:
Should be "<vendor>,<chip>-clint", followed by "sifive,clint<version>"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ maintainers:
properties:
compatible:
oneOf:
- const: spacemit,k3-aclint-mtimer
- items:
- enum:
- sophgo,sg2042-aclint-mtimer
Expand Down
37 changes: 27 additions & 10 deletions arch/riscv/boot/dts/spacemit/k3.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -1261,17 +1261,15 @@
riscv,num-sources = <512>;
};

clint: timer@e081c000 {
compatible = "spacemit,k3-clint", "sifive,clint0";
aclint_sswi: interrupt-controller@e081c000 {
compatible = "spacemit,k3-aclint-sswi";
reg = <0x0 0xe081c000 0x0 0x4000>;
interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>,
<&cpu1_intc 3>, <&cpu1_intc 7>,
<&cpu2_intc 3>, <&cpu2_intc 7>,
<&cpu3_intc 3>, <&cpu3_intc 7>,
<&cpu4_intc 3>, <&cpu4_intc 7>,
<&cpu5_intc 3>, <&cpu5_intc 7>,
<&cpu6_intc 3>, <&cpu6_intc 7>,
<&cpu7_intc 3>, <&cpu7_intc 7>;
#interrupt-cells = <0>;
interrupt-controller;
interrupts-extended = <&cpu0_intc 1>, <&cpu1_intc 1>,
<&cpu2_intc 1>, <&cpu3_intc 1>,
<&cpu4_intc 1>, <&cpu5_intc 1>,
<&cpu6_intc 1>, <&cpu7_intc 1>;
};

/* sec_i2c3: 0xf0614000, not available from Linux */
Expand Down Expand Up @@ -1305,5 +1303,24 @@
riscv,num-sources = <512>;
status = "reserved";
};

aclint_mswi: interrupt-controller@f1810000 {
compatible = "spacemit,k3-aclint-mswi";
reg = <0x0 0xf1810000 0x0 0x4000>;
interrupts-extended = <&cpu0_intc 3>, <&cpu1_intc 3>,
<&cpu2_intc 3>, <&cpu3_intc 3>,
<&cpu4_intc 3>, <&cpu5_intc 3>,
<&cpu6_intc 3>, <&cpu7_intc 3>;
};

aclint_mtimer: timer@f1814000 {
compatible = "spacemit,k3-aclint-mtimer";
reg = <0x0 0xf1814000 0x0 0x8000>;
reg-names = "mtimecmp";
interrupts-extended = <&cpu0_intc 7>, <&cpu1_intc 7>,
<&cpu2_intc 7>, <&cpu3_intc 7>,
<&cpu4_intc 7>, <&cpu5_intc 7>,
<&cpu6_intc 7>, <&cpu7_intc 7>;
};
};
};
1 change: 1 addition & 0 deletions drivers/irqchip/irq-aclint-sswi.c
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,7 @@ static int __init generic_aclint_sswi_early_probe(struct device_node *node,
}
IRQCHIP_DECLARE(mips_p8700_sswi, "mips,p8700-aclint-sswi", generic_aclint_sswi_early_probe);
IRQCHIP_DECLARE(nuclei_ux900_sswi, "nuclei,ux900-aclint-sswi", generic_aclint_sswi_early_probe);
IRQCHIP_DECLARE(spacemit_k3_sswi, "spacemit,k3-aclint-sswi", generic_aclint_sswi_early_probe);

/* THEAD variant */
#define THEAD_C9XX_CSR_SXSTATUS 0x5c0
Expand Down
Loading