blob: 360679a1781a9352528726a21c168c2a8082a7b7 [file] [log] [blame]
Pragnesh Patel2a449a32020-05-29 11:33:22 +05301// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2/*
3 * (C) Copyright 2019 SiFive, Inc
4 */
5
Sagar Shrikant Kadamb0357f42020-07-29 02:36:12 -07006#include <dt-bindings/reset/sifive-fu540-prci.h>
7
Pragnesh Patel2a449a32020-05-29 11:33:22 +05308/ {
Pragnesh Patelb65f19f2020-05-29 11:33:25 +05309 cpus {
10 assigned-clocks = <&prci PRCI_CLK_COREPLL>;
11 assigned-clock-rates = <1000000000>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070012 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053013 cpu0: cpu@0 {
14 clocks = <&prci PRCI_CLK_COREPLL>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070015 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053016 status = "okay";
17 cpu0_intc: interrupt-controller {
Simon Glassd3a98cb2023-02-13 08:56:33 -070018 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053019 };
20 };
21 cpu1: cpu@1 {
22 clocks = <&prci PRCI_CLK_COREPLL>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070023 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053024 cpu1_intc: interrupt-controller {
Simon Glassd3a98cb2023-02-13 08:56:33 -070025 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053026 };
27 };
28 cpu2: cpu@2 {
29 clocks = <&prci PRCI_CLK_COREPLL>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070030 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053031 cpu2_intc: interrupt-controller {
Simon Glassd3a98cb2023-02-13 08:56:33 -070032 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053033 };
34 };
35 cpu3: cpu@3 {
36 clocks = <&prci PRCI_CLK_COREPLL>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070037 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053038 cpu3_intc: interrupt-controller {
Simon Glassd3a98cb2023-02-13 08:56:33 -070039 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053040 };
41 };
42 cpu4: cpu@4 {
43 clocks = <&prci PRCI_CLK_COREPLL>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070044 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053045 cpu4_intc: interrupt-controller {
Simon Glassd3a98cb2023-02-13 08:56:33 -070046 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053047 };
48 };
49 };
50
Pragnesh Patel2a449a32020-05-29 11:33:22 +053051 soc {
Simon Glassd3a98cb2023-02-13 08:56:33 -070052 bootph-pre-ram;
Pragnesh Patel2a449a32020-05-29 11:33:22 +053053 otp: otp@10070000 {
54 compatible = "sifive,fu540-c000-otp";
Bin Meng3961e142020-06-08 20:28:26 -070055 reg = <0x0 0x10070000 0x0 0x1000>;
Pragnesh Patel2a449a32020-05-29 11:33:22 +053056 fuse-count = <0x1000>;
57 };
Sean Anderson3d9991942020-09-28 10:52:29 -040058 clint: clint@2000000 {
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053059 compatible = "riscv,clint0";
Sean Anderson3d9991942020-09-28 10:52:29 -040060 interrupts-extended = <&cpu0_intc 3 &cpu0_intc 7
61 &cpu1_intc 3 &cpu1_intc 7
62 &cpu2_intc 3 &cpu2_intc 7
63 &cpu3_intc 3 &cpu3_intc 7
64 &cpu4_intc 3 &cpu4_intc 7>;
Pragnesh Patel2dc59842020-10-20 11:03:02 +053065 reg = <0x0 0x2000000 0x0 0x10000>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070066 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053067 };
Sagar Shrikant Kadamb0357f42020-07-29 02:36:12 -070068 prci: clock-controller@10000000 {
69 #reset-cells = <1>;
70 resets = <&prci PRCI_RST_DDR_CTRL_N>,
71 <&prci PRCI_RST_DDR_AXI_N>,
72 <&prci PRCI_RST_DDR_AHB_N>,
73 <&prci PRCI_RST_DDR_PHY_N>,
74 <&prci PRCI_RST_GEMGXL_N>;
75 reset-names = "ddr_ctrl", "ddr_axi", "ddr_ahb",
76 "ddr_phy", "gemgxl_reset";
77 };
Pragnesh Patel45ffc912020-05-29 11:33:28 +053078 dmc: dmc@100b0000 {
79 compatible = "sifive,fu540-c000-ddr";
80 reg = <0x0 0x100b0000 0x0 0x0800
81 0x0 0x100b2000 0x0 0x2000
Bin Meng3961e142020-06-08 20:28:26 -070082 0x0 0x100b8000 0x0 0x1000>;
Pragnesh Patel45ffc912020-05-29 11:33:28 +053083 clocks = <&prci PRCI_CLK_DDRPLL>;
84 clock-frequency = <933333324>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070085 bootph-pre-ram;
Pragnesh Patel45ffc912020-05-29 11:33:28 +053086 };
Pragnesh Patel2a449a32020-05-29 11:33:22 +053087 };
88};
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053089
90&prci {
Simon Glassd3a98cb2023-02-13 08:56:33 -070091 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053092};
93
94&uart0 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070095 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +053096};
97
98&qspi2 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070099 bootph-pre-ram;
Pragnesh Patelb65f19f2020-05-29 11:33:25 +0530100};
Pragnesh Patelbb337f92020-05-29 11:33:32 +0530101
102&eth0 {
103 assigned-clocks = <&prci PRCI_CLK_GEMGXLPLL>;
104 assigned-clock-rates = <125000000>;
105};
Pragnesh Patel8a521282020-05-29 12:14:51 +0530106
107&l2cache {
108 status = "okay";
109};