| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- // SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
- /*
- * Device Tree Source for the RZ/Five SoC
- *
- * Copyright (C) 2022 Renesas Electronics Corp.
- */
- #include <dt-bindings/interrupt-controller/irq.h>
- #define SOC_PERIPHERAL_IRQ(nr) (nr + 32)
- #include <arm64/renesas/r9a07g043.dtsi>
- / {
- cpus {
- #address-cells = <1>;
- #size-cells = <0>;
- timebase-frequency = <12000000>;
- cpu0: cpu@0 {
- compatible = "andestech,ax45mp", "riscv";
- device_type = "cpu";
- #cooling-cells = <2>;
- reg = <0x0>;
- status = "okay";
- riscv,isa = "rv64imafdc";
- riscv,isa-base = "rv64i";
- riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
- "zicntr", "zicsr", "zifencei",
- "zihpm", "xandespmu";
- mmu-type = "riscv,sv39";
- i-cache-size = <0x8000>;
- i-cache-line-size = <0x40>;
- d-cache-size = <0x8000>;
- d-cache-line-size = <0x40>;
- next-level-cache = <&l2cache>;
- clocks = <&cpg CPG_CORE R9A07G043_CLK_I>;
- operating-points-v2 = <&cluster0_opp>;
- cpu0_intc: interrupt-controller {
- #interrupt-cells = <1>;
- compatible = "andestech,cpu-intc", "riscv,cpu-intc";
- interrupt-controller;
- };
- };
- };
- };
- &pinctrl {
- gpio-ranges = <&pinctrl 0 0 232>;
- };
- &soc {
- dma-noncoherent;
- interrupt-parent = <&plic>;
- irqc: interrupt-controller@110a0000 {
- compatible = "renesas,r9a07g043f-irqc";
- reg = <0 0x110a0000 0 0x20000>;
- #interrupt-cells = <2>;
- #address-cells = <0>;
- interrupt-controller;
- interrupts = <32 IRQ_TYPE_LEVEL_HIGH>,
- <33 IRQ_TYPE_LEVEL_HIGH>,
- <34 IRQ_TYPE_LEVEL_HIGH>,
- <35 IRQ_TYPE_LEVEL_HIGH>,
- <36 IRQ_TYPE_LEVEL_HIGH>,
- <37 IRQ_TYPE_LEVEL_HIGH>,
- <38 IRQ_TYPE_LEVEL_HIGH>,
- <39 IRQ_TYPE_LEVEL_HIGH>,
- <40 IRQ_TYPE_LEVEL_HIGH>,
- <476 IRQ_TYPE_LEVEL_HIGH>,
- <477 IRQ_TYPE_LEVEL_HIGH>,
- <478 IRQ_TYPE_LEVEL_HIGH>,
- <479 IRQ_TYPE_LEVEL_HIGH>,
- <480 IRQ_TYPE_LEVEL_HIGH>,
- <481 IRQ_TYPE_LEVEL_HIGH>,
- <482 IRQ_TYPE_LEVEL_HIGH>,
- <483 IRQ_TYPE_LEVEL_HIGH>,
- <484 IRQ_TYPE_LEVEL_HIGH>,
- <485 IRQ_TYPE_LEVEL_HIGH>,
- <486 IRQ_TYPE_LEVEL_HIGH>,
- <487 IRQ_TYPE_LEVEL_HIGH>,
- <488 IRQ_TYPE_LEVEL_HIGH>,
- <489 IRQ_TYPE_LEVEL_HIGH>,
- <490 IRQ_TYPE_LEVEL_HIGH>,
- <491 IRQ_TYPE_LEVEL_HIGH>,
- <492 IRQ_TYPE_LEVEL_HIGH>,
- <493 IRQ_TYPE_LEVEL_HIGH>,
- <494 IRQ_TYPE_LEVEL_HIGH>,
- <495 IRQ_TYPE_LEVEL_HIGH>,
- <496 IRQ_TYPE_LEVEL_HIGH>,
- <497 IRQ_TYPE_LEVEL_HIGH>,
- <498 IRQ_TYPE_LEVEL_HIGH>,
- <499 IRQ_TYPE_LEVEL_HIGH>,
- <500 IRQ_TYPE_LEVEL_HIGH>,
- <501 IRQ_TYPE_LEVEL_HIGH>,
- <502 IRQ_TYPE_LEVEL_HIGH>,
- <503 IRQ_TYPE_LEVEL_HIGH>,
- <504 IRQ_TYPE_LEVEL_HIGH>,
- <505 IRQ_TYPE_LEVEL_HIGH>,
- <506 IRQ_TYPE_LEVEL_HIGH>,
- <507 IRQ_TYPE_LEVEL_HIGH>,
- <57 IRQ_TYPE_LEVEL_HIGH>,
- <66 IRQ_TYPE_EDGE_RISING>,
- <67 IRQ_TYPE_EDGE_RISING>,
- <68 IRQ_TYPE_EDGE_RISING>,
- <69 IRQ_TYPE_EDGE_RISING>,
- <70 IRQ_TYPE_EDGE_RISING>,
- <71 IRQ_TYPE_EDGE_RISING>;
- interrupt-names = "nmi",
- "irq0", "irq1", "irq2", "irq3",
- "irq4", "irq5", "irq6", "irq7",
- "tint0", "tint1", "tint2", "tint3",
- "tint4", "tint5", "tint6", "tint7",
- "tint8", "tint9", "tint10", "tint11",
- "tint12", "tint13", "tint14", "tint15",
- "tint16", "tint17", "tint18", "tint19",
- "tint20", "tint21", "tint22", "tint23",
- "tint24", "tint25", "tint26", "tint27",
- "tint28", "tint29", "tint30", "tint31",
- "bus-err", "ec7tie1-0", "ec7tie2-0",
- "ec7tiovf-0", "ec7tie1-1", "ec7tie2-1",
- "ec7tiovf-1";
- clocks = <&cpg CPG_MOD R9A07G043_IAX45_CLK>,
- <&cpg CPG_MOD R9A07G043_IAX45_PCLK>;
- clock-names = "clk", "pclk";
- power-domains = <&cpg>;
- resets = <&cpg R9A07G043_IAX45_RESETN>;
- };
- plic: interrupt-controller@12c00000 {
- compatible = "renesas,r9a07g043-plic", "andestech,nceplic100";
- #interrupt-cells = <2>;
- #address-cells = <0>;
- riscv,ndev = <511>;
- interrupt-controller;
- reg = <0x0 0x12c00000 0 0x400000>;
- clocks = <&cpg CPG_MOD R9A07G043_NCEPLIC_ACLK>;
- power-domains = <&cpg>;
- resets = <&cpg R9A07G043_NCEPLIC_ARESETN>;
- interrupts-extended = <&cpu0_intc 11 &cpu0_intc 9>;
- };
- l2cache: cache-controller@13400000 {
- compatible = "andestech,ax45mp-cache", "cache";
- reg = <0x0 0x13400000 0x0 0x100000>;
- interrupts = <SOC_PERIPHERAL_IRQ(476) IRQ_TYPE_LEVEL_HIGH>;
- cache-size = <0x40000>;
- cache-line-size = <64>;
- cache-sets = <1024>;
- cache-unified;
- cache-level = <2>;
- };
- };
|