mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-09 03:21:51 +00:00
Adding DDR driver support for Agilex5 series. Signed-off-by: Tingting Meng <tingting.meng@altera.com>
185 lines
3.5 KiB
Text
185 lines
3.5 KiB
Text
// SPDX-License-Identifier: GPL-2.0+
|
|
/*
|
|
* U-Boot additions
|
|
*
|
|
* Copyright (C) 2024 Intel Corporation <www.intel.com>
|
|
* Copyright (C) 2025 Altera Corporation <www.altera.com>
|
|
*/
|
|
|
|
#include "socfpga_agilex5-u-boot.dtsi"
|
|
|
|
/{
|
|
aliases {
|
|
spi0 = &qspi;
|
|
freeze_br0 = &freeze_controller;
|
|
};
|
|
|
|
soc {
|
|
freeze_controller: freeze_controller@0x20000450 {
|
|
compatible = "altr,freeze-bridge-controller";
|
|
reg = <0x20000450 0x00000010>;
|
|
status = "disabled";
|
|
};
|
|
};
|
|
|
|
/*
|
|
* Both Memory base address and size default info is retrieved from HW setting.
|
|
* Reconfiguration / Overwrite these info can be done with examples below.
|
|
*/
|
|
/*
|
|
* Example for memory size with 2GB:
|
|
* memory {
|
|
* reg = <0x0 0x80000000 0x0 0x80000000>;
|
|
* };
|
|
*/
|
|
/*
|
|
* Example for memory size with 8GB:
|
|
* memory {
|
|
* reg = <0x0 0x80000000 0x0 0x80000000>,
|
|
* <0x8 0x80000000 0x1 0x80000000>;
|
|
* };
|
|
*/
|
|
/*
|
|
* Example for memory size with 32GB:
|
|
* memory {
|
|
* reg = <0x0 0x80000000 0x0 0x80000000>,
|
|
* <0x8 0x80000000 0x7 0x80000000>;
|
|
* };
|
|
*/
|
|
/*
|
|
* Example for memory size with 512GB:
|
|
* memory {
|
|
* reg = <0x0 0x80000000 0x0 0x80000000>,
|
|
* <0x8 0x80000000 0x7 0x80000000>,
|
|
* <0x88 0x00000000 0x78 0x00000000>;
|
|
* };
|
|
*/
|
|
|
|
chosen {
|
|
stdout-path = "serial0:115200n8";
|
|
u-boot,spl-boot-order = &mmc,&flash0,"/memory";
|
|
};
|
|
};
|
|
|
|
&flash0 {
|
|
compatible = "jedec,spi-nor";
|
|
spi-tx-bus-width = <4>;
|
|
spi-rx-bus-width = <4>;
|
|
bootph-all;
|
|
/delete-property/ cdns,read-delay;
|
|
};
|
|
|
|
&i3c0 {
|
|
bootph-all;
|
|
};
|
|
|
|
&i3c1 {
|
|
bootph-all;
|
|
};
|
|
|
|
&mmc {
|
|
status = "okay";
|
|
bus-width = <4>;
|
|
sd-uhs-sdr50;
|
|
cap-mmc-highspeed;
|
|
bootph-all;
|
|
};
|
|
|
|
&combophy0 {
|
|
status = "okay";
|
|
bootph-all;
|
|
cdns,phy-use-ext-lpbk-dqs = <1>;
|
|
cdns,phy-use-lpbk-dqs = <1>;
|
|
cdns,phy-use-phony-dqs = <1>;
|
|
cdns,phy-use-phony-dqs-cmd = <1>;
|
|
cdns,phy-io-mask-always-on = <0>;
|
|
cdns,phy-io-mask-end = <5>;
|
|
cdns,phy-io-mask-start = <0>;
|
|
cdns,phy-data-select-oe-end = <1>;
|
|
cdns,phy-sync-method = <1>;
|
|
cdns,phy-sw-half-cycle-shift = <0>;
|
|
cdns,phy-rd-del-sel = <52>;
|
|
cdns,phy-underrun-suppress = <1>;
|
|
cdns,phy-gate-cfg-always-on = <1>;
|
|
cdns,phy-param-dll-bypass-mode = <1>;
|
|
cdns,phy-param-phase-detect-sel = <2>;
|
|
cdns,phy-param-dll-start-point = <254>;
|
|
cdns,phy-read-dqs-cmd-delay = <0>;
|
|
cdns,phy-clk-wrdqs-delay = <0>;
|
|
cdns,phy-clk-wr-delay = <0>;
|
|
cdns,phy-read-dqs-delay = <0>;
|
|
cdns,phy-phony-dqs-timing = <0>;
|
|
cdns,hrs09-rddata-en = <1>;
|
|
cdns,hrs09-rdcmd-en = <1>;
|
|
cdns,hrs09-extended-wr-mode = <1>;
|
|
cdns,hrs09-extended-rd-mode = <1>;
|
|
cdns,hrs10-hcsdclkadj = <3>;
|
|
cdns,hrs16-wrdata1-sdclk-dly = <0>;
|
|
cdns,hrs16-wrdata0-sdclk-dly = <0>;
|
|
cdns,hrs16-wrcmd1-sdclk-dly = <0>;
|
|
cdns,hrs16-wrcmd0-sdclk-dly = <0>;
|
|
cdns,hrs16-wrdata1-dly = <0>;
|
|
cdns,hrs16-wrdata0-dly = <0>;
|
|
cdns,hrs16-wrcmd1-dly = <0>;
|
|
cdns,hrs16-wrcmd0-dly = <0>;
|
|
cdns,hrs07-rw-compensate = <10>;
|
|
cdns,hrs07-idelay-val = <0>;
|
|
};
|
|
|
|
&qspi {
|
|
status = "okay";
|
|
};
|
|
|
|
&timer0 {
|
|
bootph-all;
|
|
};
|
|
|
|
&timer1 {
|
|
bootph-all;
|
|
};
|
|
|
|
&timer2 {
|
|
bootph-all;
|
|
};
|
|
|
|
&timer3 {
|
|
bootph-all;
|
|
};
|
|
|
|
&watchdog0 {
|
|
bootph-all;
|
|
};
|
|
|
|
&gmac0 {
|
|
status = "okay";
|
|
phy-mode = "rgmii";
|
|
phy-handle = <&emac0_phy0>;
|
|
|
|
max-frame-size = <9000>;
|
|
|
|
mdio0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
compatible = "snps,dwxgmac-mdio";
|
|
emac0_phy0: ethernet-phy@0 {
|
|
reg = <0>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&gmac2 {
|
|
status = "okay";
|
|
phy-mode = "rgmii";
|
|
phy-handle = <&emac2_phy0>;
|
|
|
|
max-frame-size = <9000>;
|
|
|
|
mdio0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
compatible = "snps,dwxgmac-mdio";
|
|
emac2_phy0: ethernet-phy@0 {
|
|
reg = <0>;
|
|
};
|
|
};
|
|
};
|