mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-14 08:57:58 +00:00
ea4e9570eb
The resets to DDR and ethernet sub-system are connected to PRCI device reset control register, these reset signals are active low and are held low at power-up. Add these reset producer and consumer details needed by the reset driver. Signed-off-by: Sagar Shrikant Kadam <sagar.kadam@sifive.com> Reviewed-by: Pragnesh Patel <pragnesh.patel@sifive.com> Reviewed-by: Bin Meng <bin.meng@windriver.com>
105 lines
2.2 KiB
Text
105 lines
2.2 KiB
Text
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
|
|
/*
|
|
* (C) Copyright 2019 SiFive, Inc
|
|
*/
|
|
|
|
#include <dt-bindings/reset/sifive-fu540-prci.h>
|
|
|
|
/ {
|
|
cpus {
|
|
assigned-clocks = <&prci PRCI_CLK_COREPLL>;
|
|
assigned-clock-rates = <1000000000>;
|
|
u-boot,dm-spl;
|
|
cpu0: cpu@0 {
|
|
clocks = <&prci PRCI_CLK_COREPLL>;
|
|
u-boot,dm-spl;
|
|
status = "okay";
|
|
cpu0_intc: interrupt-controller {
|
|
u-boot,dm-spl;
|
|
};
|
|
};
|
|
cpu1: cpu@1 {
|
|
clocks = <&prci PRCI_CLK_COREPLL>;
|
|
u-boot,dm-spl;
|
|
cpu1_intc: interrupt-controller {
|
|
u-boot,dm-spl;
|
|
};
|
|
};
|
|
cpu2: cpu@2 {
|
|
clocks = <&prci PRCI_CLK_COREPLL>;
|
|
u-boot,dm-spl;
|
|
cpu2_intc: interrupt-controller {
|
|
u-boot,dm-spl;
|
|
};
|
|
};
|
|
cpu3: cpu@3 {
|
|
clocks = <&prci PRCI_CLK_COREPLL>;
|
|
u-boot,dm-spl;
|
|
cpu3_intc: interrupt-controller {
|
|
u-boot,dm-spl;
|
|
};
|
|
};
|
|
cpu4: cpu@4 {
|
|
clocks = <&prci PRCI_CLK_COREPLL>;
|
|
u-boot,dm-spl;
|
|
cpu4_intc: interrupt-controller {
|
|
u-boot,dm-spl;
|
|
};
|
|
};
|
|
};
|
|
|
|
soc {
|
|
u-boot,dm-spl;
|
|
otp: otp@10070000 {
|
|
compatible = "sifive,fu540-c000-otp";
|
|
reg = <0x0 0x10070000 0x0 0x1000>;
|
|
fuse-count = <0x1000>;
|
|
};
|
|
clint@2000000 {
|
|
compatible = "riscv,clint0";
|
|
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>;
|
|
reg = <0x0 0x2000000 0x0 0xc0000>;
|
|
u-boot,dm-spl;
|
|
};
|
|
prci: clock-controller@10000000 {
|
|
#reset-cells = <1>;
|
|
resets = <&prci PRCI_RST_DDR_CTRL_N>,
|
|
<&prci PRCI_RST_DDR_AXI_N>,
|
|
<&prci PRCI_RST_DDR_AHB_N>,
|
|
<&prci PRCI_RST_DDR_PHY_N>,
|
|
<&prci PRCI_RST_GEMGXL_N>;
|
|
reset-names = "ddr_ctrl", "ddr_axi", "ddr_ahb",
|
|
"ddr_phy", "gemgxl_reset";
|
|
};
|
|
dmc: dmc@100b0000 {
|
|
compatible = "sifive,fu540-c000-ddr";
|
|
reg = <0x0 0x100b0000 0x0 0x0800
|
|
0x0 0x100b2000 0x0 0x2000
|
|
0x0 0x100b8000 0x0 0x1000>;
|
|
clocks = <&prci PRCI_CLK_DDRPLL>;
|
|
clock-frequency = <933333324>;
|
|
u-boot,dm-spl;
|
|
};
|
|
};
|
|
};
|
|
|
|
&prci {
|
|
u-boot,dm-spl;
|
|
};
|
|
|
|
&uart0 {
|
|
u-boot,dm-spl;
|
|
};
|
|
|
|
&qspi2 {
|
|
u-boot,dm-spl;
|
|
};
|
|
|
|
ð0 {
|
|
assigned-clocks = <&prci PRCI_CLK_GEMGXLPLL>;
|
|
assigned-clock-rates = <125000000>;
|
|
};
|
|
|
|
&l2cache {
|
|
status = "okay";
|
|
};
|