mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-02 09:46:37 +03:00
Merge tag 'u-boot-socfpga-next-20260213' of https://source.denx.de/u-boot/custodians/u-boot-socfpga into next
This pull request updates SoCFPGA platforms with DDR improvements, new
board support, Agilex5 enhancements and general cleanup across the
codebase.
DDR and memory handling
* Add DRAM size checking support for Arria10.
* Widen MEM_TOTAL_CAPACITY mask handling in IOSSM mailbox driver.
* Assign unit address to memory node for improved memory
representation and consistency.
Agilex / Agilex5 updates
* Restore multi-DTB support for NAND boot and fix NAND clock handling.
* Enable SD card UHS mode and eMMC HS200/HS400 mode support on Agilex5.
* Fix DT property naming conventions for Agilex5.
* Exclude AGILEX_L4_SYS_FREE_CLK from clock enable/disable operations
to avoid unintended clock control.
New board support
* Add support for CoreCourse Cyclone V boards:
* AC501
* AC550
Including device trees, QTS configuration, defconfigs and maintainers
entries.
Fixes and cleanup
* Fix GEN5 handoff script path.
* Remove incorrect CONFIG_SPL_LDSCRIPT settings.
* Replace legacy TARGET namespace and perform related cleanup across
SoCFPGA code.
* General Kconfig, build and SoCFPGA maintenance updates.
Overall this pull request improves platform robustness, adds new board
coverage and cleans up legacy configuration usage across the SoCFPGA
U-Boot codebase.
[trini: Change TARGET_SOCFPGA_CYCLONE5 to ARCH_SOCFPGA_CYCLONE5 in the
new platforms this added]
Signed-off-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
4
Kconfig
4
Kconfig
@@ -524,8 +524,8 @@ config BUILD_TARGET
|
||||
default "u-boot-with-spl.bin" if MPC85xx && !E500MC && !E5500 && !E6500 && SPL
|
||||
default "u-boot-with-spl.imx" if ARCH_MX6 && SPL
|
||||
default "u-boot-with-spl.kwb" if ARMADA_32BIT && SPL
|
||||
default "u-boot-with-spl.sfp" if TARGET_SOCFPGA_ARRIA10
|
||||
default "u-boot-with-spl.sfp" if TARGET_SOCFPGA_GEN5
|
||||
default "u-boot-with-spl.sfp" if ARCH_SOCFPGA_ARRIA10
|
||||
default "u-boot-with-spl.sfp" if ARCH_SOCFPGA_GEN5
|
||||
default "u-boot.itb" if !BINMAN && SPL_LOAD_FIT && (ARCH_ROCKCHIP || \
|
||||
RISCV || ARCH_ZYNQMP)
|
||||
default "u-boot.kwb" if (ARCH_KIRKWOOD || ARMADA_32BIT) && !SPL
|
||||
|
||||
@@ -30,7 +30,7 @@ config COUNTER_FREQUENCY
|
||||
ROCKCHIP_RK3288 || ROCKCHIP_RK322X || ROCKCHIP_RK3036
|
||||
default 25000000 if ARCH_LX2160A || ARCH_LX2162A || ARCH_LS1088A
|
||||
default 100000000 if ARCH_ZYNQMP
|
||||
default 200000000 if TARGET_SOCFPGA_AGILEX5 || TARGET_SOCFPGA_AGILEX7M
|
||||
default 200000000 if ARCH_SOCFPGA_AGILEX5 || ARCH_SOCFPGA_AGILEX7M
|
||||
default 0
|
||||
help
|
||||
For platforms with ARMv8-A and ARMv7-A which features a system
|
||||
@@ -1145,35 +1145,35 @@ config ARCH_SNAPDRAGON
|
||||
config ARCH_SOCFPGA
|
||||
bool "Altera SOCFPGA family"
|
||||
select ARCH_EARLY_INIT_R
|
||||
select ARCH_MISC_INIT if !TARGET_SOCFPGA_ARRIA10
|
||||
select ARM64 if TARGET_SOCFPGA_SOC64
|
||||
select CPU_V7A if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
|
||||
select ARCH_MISC_INIT if !ARCH_SOCFPGA_ARRIA10
|
||||
select ARM64 if ARCH_SOCFPGA_SOC64
|
||||
select CPU_V7A if ARCH_SOCFPGA_GEN5 || ARCH_SOCFPGA_ARRIA10
|
||||
select DM
|
||||
select DM_SERIAL
|
||||
select GPIO_EXTRA_HEADER
|
||||
select ENABLE_ARM_SOC_BOOT0_HOOK if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
|
||||
select LMB_ARCH_MEM_MAP if TARGET_SOCFPGA_SOC64
|
||||
select ENABLE_ARM_SOC_BOOT0_HOOK if ARCH_SOCFPGA_GEN5 || ARCH_SOCFPGA_ARRIA10
|
||||
select LMB_ARCH_MEM_MAP if ARCH_SOCFPGA_SOC64
|
||||
select OF_CONTROL
|
||||
select SPL_DM_RESET if DM_RESET
|
||||
select SPL_DM_SERIAL
|
||||
select SPL_LIBCOMMON_SUPPORT
|
||||
select SPL_LIBGENERIC_SUPPORT
|
||||
select SPL_OF_CONTROL
|
||||
select SPL_SEPARATE_BSS if TARGET_SOCFPGA_SOC64
|
||||
select SPL_DRIVERS_MISC if TARGET_SOCFPGA_SOC64
|
||||
select SPL_SOCFPGA_DT_REG if TARGET_SOCFPGA_SOC64
|
||||
select SPL_SEPARATE_BSS if ARCH_SOCFPGA_SOC64
|
||||
select SPL_DRIVERS_MISC if ARCH_SOCFPGA_SOC64
|
||||
select SPL_SOCFPGA_DT_REG if ARCH_SOCFPGA_SOC64
|
||||
select SPL_SERIAL
|
||||
select SPL_SYSRESET
|
||||
select SPL_WATCHDOG
|
||||
select SUPPORT_SPL
|
||||
select SYS_NS16550
|
||||
select SYS_THUMB_BUILD if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
|
||||
select SYS_THUMB_BUILD if ARCH_SOCFPGA_GEN5 || ARCH_SOCFPGA_ARRIA10
|
||||
select SYSRESET
|
||||
select SYSRESET_SOCFPGA if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
|
||||
select SYSRESET_SOCFPGA_SOC64 if !TARGET_SOCFPGA_AGILEX5 && \
|
||||
TARGET_SOCFPGA_SOC64
|
||||
select SYSRESET_PSCI if TARGET_SOCFPGA_AGILEX5
|
||||
select USE_BOOTFILE if SPL_ATF && TARGET_SOCFPGA_SOC64
|
||||
select SYSRESET_SOCFPGA if ARCH_SOCFPGA_GEN5 || ARCH_SOCFPGA_ARRIA10
|
||||
select SYSRESET_SOCFPGA_SOC64 if !ARCH_SOCFPGA_AGILEX5 && \
|
||||
ARCH_SOCFPGA_SOC64
|
||||
select SYSRESET_PSCI if ARCH_SOCFPGA_AGILEX5
|
||||
select USE_BOOTFILE if SPL_ATF && ARCH_SOCFPGA_SOC64
|
||||
imply CMD_DM
|
||||
imply CMD_MTDPARTS
|
||||
imply CRC32_VERIFY
|
||||
|
||||
@@ -469,6 +469,8 @@ dtb-$(CONFIG_ARCH_SOCFPGA) += \
|
||||
socfpga_cyclone5_socrates.dtb \
|
||||
socfpga_cyclone5_sr1500.dtb \
|
||||
socfpga_cyclone5_vining_fpga.dtb \
|
||||
socfpga_cyclone5_ac501soc.dtb \
|
||||
socfpga_cyclone5_ac550soc.dtb \
|
||||
socfpga_n5x_socdk.dtb \
|
||||
socfpga_stratix10_socdk.dtb
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
* Copyright (c) 2019 Simon Goldschmidt
|
||||
*/
|
||||
/{
|
||||
memory {
|
||||
memory@0 {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
|
||||
@@ -264,7 +264,7 @@
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_TARGET_SOCFPGA_AGILEX7M
|
||||
#ifdef CONFIG_ARCH_SOCFPGA_AGILEX7M
|
||||
&sdr {
|
||||
compatible = "intel,sdr-ctl-agilex7m";
|
||||
reg = <0xf8020000 0x100>;
|
||||
|
||||
@@ -110,26 +110,49 @@
|
||||
status = "okay";
|
||||
|
||||
no-mmc;
|
||||
no-1-8-v;
|
||||
disable-wp;
|
||||
cap-sd-highspeed;
|
||||
sd-uhs-sdr50;
|
||||
sd-uhs-sdr104;
|
||||
vmmc-supply = <&sd_emmc_power>;
|
||||
vqmmc-supply = <&sd_io_1v8_reg>;
|
||||
max-frequency = <200000000>;
|
||||
sdhci-caps = <0x00000000 0x0000c800>;
|
||||
sdhci-caps-mask = <0x00002000 0x0000ff00>;
|
||||
|
||||
/* SD card default speed (DS) and UHS-I SDR12 mode timing configuration */
|
||||
cdns,phy-dqs-timing-delay-sd-ds = <0x00780000>;
|
||||
cdns,phy-gate-lpbk_ctrl-delay-sd-ds = <0x81a40040>;
|
||||
cdns,phy-gate-lpbk-ctrl-delay-sd-ds = <0x81a40040>;
|
||||
cdns,phy-dll-slave-ctrl-sd-ds = <0x00a000fe>;
|
||||
cdns,phy-dq-timing-delay-sd-ds = <0x28000001>;
|
||||
|
||||
/* SD card high speed and UHS-I SDR25 mode timing configuration */
|
||||
cdns,phy-dqs-timing-delay-sd-hs = <0x780001>;
|
||||
cdns,phy-gate-lpbk_ctrl-delay-sd-hs = <0x81a40040>;
|
||||
cdns,phy-gate-lpbk-ctrl-delay-sd-hs = <0x81a40040>;
|
||||
cdns,phy-dq-timing-delay-sd-hs = <0x10000001>;
|
||||
cdns,ctrl-hrs16-slave-ctrl-sd-hs = <0x101>;
|
||||
cdns,ctrl-hrs07-timing-delay-sd-hs = <0xA0001>;
|
||||
|
||||
/* SD card UHS-I SDR50 mode timing configuration */
|
||||
cdns,phy-dqs-timing-delay-emmc-sdr = <0x780004>;
|
||||
cdns,phy-gate-lpbk-ctrl-delay-emmc-sdr = <0x80a40040>;
|
||||
cdns,phy-dll-slave-ctrl-emmc-sdr = <0x4000004>;
|
||||
cdns,phy-dq-timing-delay-emmc-sdr = <0x38000001>;
|
||||
cdns,ctrl-hrs09-timing-delay-emmc-sdr = <0xf1c1800c>;
|
||||
cdns,ctrl-hrs10-lpbk-ctrl-delay-emmc-sdr = <0x20000>;
|
||||
cdns,ctrl-hrs16-slave-ctrl-emmc-sdr = <0x101>;
|
||||
cdns,ctrl-hrs07-timing-delay-emmc-sdr = <0x90005>;
|
||||
|
||||
/* SD card UHS-I SDR104 mode timing configuration */
|
||||
cdns,phy-dqs-timing-delay-emmc-hs200 = <0x780004>;
|
||||
cdns,phy-gate-lpbk-ctrl-delay-emmc-hs200 = <0x81a40040>;
|
||||
cdns,phy-dll-slave-ctrl-emmc-hs200 = <0x4d4d00>;
|
||||
cdns,phy-dq-timing-delay-emmc-hs200 = <0x11000001>;
|
||||
cdns,ctrl-hrs09-timing-delay-emmc-hs200 = <0xf1c18000>;
|
||||
cdns,ctrl-hrs10-lpbk-ctrl-delay-emmc-hs200 = <0x90000>;
|
||||
cdns,ctrl-hrs16-slave-ctrl-emmc-hs200 = <0x101>;
|
||||
cdns,ctrl-hrs07-timing-delay-emmc-hs200 = <0xa0001>;
|
||||
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
|
||||
@@ -25,11 +25,14 @@
|
||||
disable-wp;
|
||||
non-removable;
|
||||
cap-mmc-highspeed;
|
||||
|
||||
mmc-hs200-1_8v;
|
||||
mmc-hs400-1_8v;
|
||||
bus-width = <8>;
|
||||
vmmc-supply = <&sd_emmc_power>;
|
||||
vqmmc-supply = <&emmc_io_1v8_reg>;
|
||||
max-frequency = <200000000>;
|
||||
sdhci-caps = <0x00000000 0x0004c800>; /* SDHCI_CAN_DO_8BIT */
|
||||
sdhci-caps-mask = <0x00000000 0x0000ff00>;
|
||||
|
||||
/* eMMC legacy mode timing configuration */
|
||||
cdns,phy-dqs-timing-delay-sd-ds = <0x00780000>;
|
||||
@@ -46,4 +49,26 @@
|
||||
cdns,ctrl-hrs10-lpbk-ctrl-delay-emmc-sdr = <0x30000>;
|
||||
cdns,ctrl-hrs16-slave-ctrl-emmc-sdr = <0x101>;
|
||||
cdns,ctrl-hrs07-timing-delay-emmc-sdr = <0xA0001>;
|
||||
|
||||
/* eMMC HS200 mode timing configuration */
|
||||
cdns,phy-dqs-timing-delay-emmc-hs200 = <0x780004>;
|
||||
cdns,phy-gate-lpbk-ctrl-delay-emmc-hs200 = <0x81a40040>;
|
||||
cdns,phy-dll-slave-ctrl-emmc-hs200 = <0x4d4d00>;
|
||||
cdns,phy-dq-timing-delay-emmc-hs200 = <0x10000001>;
|
||||
cdns,phy-dll-master-ctrl-emmc-hs200 = <0x4>;
|
||||
cdns,ctrl-hrs09-timing-delay-emmc-hs200 = <0xf1c18000>;
|
||||
cdns,ctrl-hrs10-lpbk-ctrl-delay-emmc-hs200 = <0x90000>;
|
||||
cdns,ctrl-hrs16-slave-ctrl-emmc-hs200 = <0x101>;
|
||||
cdns,ctrl-hrs07-timing-delay-emmc-hs200 = <0xa0001>;
|
||||
|
||||
/* eMMC HS400 mode timing configuration */
|
||||
cdns,phy-dqs-timing-delay-emmc-hs400 = <0x680004>;
|
||||
cdns,phy-gate-lpbk-ctrl-delay-emmc-hs400 = <0x81a40040>;
|
||||
cdns,phy-dll-slave-ctrl-emmc-hs400 = <0x4d4b40>;
|
||||
cdns,phy-dq-timing-delay-emmc-hs400 = <0x10000001>;
|
||||
cdns,phy-dll-master-ctrl-emmc-hs400 = <0x4>;
|
||||
cdns,ctrl-hrs09-timing-delay-emmc-hs400 = <0xf1c18000>;
|
||||
cdns,ctrl-hrs10-lpbk-ctrl-delay-emmc-hs400 = <0x80000>;
|
||||
cdns,ctrl-hrs16-slave-ctrl-emmc-hs400 = <0x11000001>;
|
||||
cdns,ctrl-hrs07-timing-delay-emmc-hs400 = <0x90001>;
|
||||
};
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
#include "socfpga_agilex-u-boot.dtsi"
|
||||
|
||||
#ifdef CONFIG_TARGET_SOCFPGA_AGILEX
|
||||
#ifdef CONFIG_ARCH_SOCFPGA_AGILEX
|
||||
/{
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
@@ -27,7 +27,7 @@
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_TARGET_SOCFPGA_AGILEX7M
|
||||
#ifdef CONFIG_ARCH_SOCFPGA_AGILEX7M
|
||||
/{
|
||||
model = "SoCFPGA Agilex7-M SoCDK";
|
||||
chosen {
|
||||
@@ -181,3 +181,41 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#if !defined(CONFIG_SOCFPGA_SECURE_VAB_AUTH)
|
||||
&fdt_0_blob {
|
||||
filename = "dts/upstream/src/arm64/intel/socfpga_agilex_socdk.dtb";
|
||||
};
|
||||
|
||||
&images {
|
||||
fdt-1 {
|
||||
description = "socfpga_socdk_nand";
|
||||
type = "flat_dt";
|
||||
compression = "none";
|
||||
fdt_1_blob: blob-ext {
|
||||
filename = "dts/upstream/src/arm64/intel/socfpga_agilex_socdk_nand.dtb";
|
||||
};
|
||||
hash {
|
||||
algo = "crc32";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&board_config {
|
||||
board-1 {
|
||||
description = "board_1";
|
||||
firmware = "atf";
|
||||
loadables = "uboot";
|
||||
fdt = "fdt-1";
|
||||
signature {
|
||||
algo = "crc32";
|
||||
key-name-hint = "dev";
|
||||
sign-images = "atf", "uboot", "fdt-1";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&binman {
|
||||
/delete-node/ kernel;
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
bootargs = "console=ttyS0,115200";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
name = "memory";
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x20000000>; /* 512MB */
|
||||
|
||||
44
arch/arm/dts/socfpga_cyclone5_ac501soc-u-boot.dtsi
Normal file
44
arch/arm/dts/socfpga_cyclone5_ac501soc-u-boot.dtsi
Normal file
@@ -0,0 +1,44 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* U-Boot additions
|
||||
*
|
||||
* Copyright Altera Corporation (C) 2015
|
||||
* Copyright (c) 2018 Simon Goldschmidt
|
||||
*/
|
||||
|
||||
#include "socfpga-common-u-boot.dtsi"
|
||||
|
||||
/{
|
||||
aliases {
|
||||
udc0 = &usb1;
|
||||
};
|
||||
};
|
||||
|
||||
&watchdog0 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&mmc {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
clock-frequency = <100000000>;
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
clock-frequency = <100000000>;
|
||||
};
|
||||
|
||||
&porta {
|
||||
bank-name = "porta";
|
||||
};
|
||||
|
||||
&portb {
|
||||
bank-name = "portb";
|
||||
};
|
||||
|
||||
&portc {
|
||||
bank-name = "portc";
|
||||
};
|
||||
72
arch/arm/dts/socfpga_cyclone5_ac501soc.dts
Normal file
72
arch/arm/dts/socfpga_cyclone5_ac501soc.dts
Normal file
@@ -0,0 +1,72 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2025, Brian Sune
|
||||
*
|
||||
* based on socfpga_cyclone5_socdk.dts
|
||||
*/
|
||||
|
||||
#include "socfpga_cyclone5.dtsi"
|
||||
|
||||
/ {
|
||||
model = "CoreCourse AC501SoC";
|
||||
compatible = "altr,socfpga-cyclone5", "altr,socfpga";
|
||||
|
||||
chosen {
|
||||
bootargs = "earlyprintk";
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
aliases {
|
||||
ethernet0 = &gmac1;
|
||||
udc0 = &usb1;
|
||||
};
|
||||
|
||||
memory@0 {
|
||||
name = "memory";
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x40000000>; /* 1GB */
|
||||
};
|
||||
|
||||
regulator_3_3v: 3-3-v-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3.3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
};
|
||||
|
||||
&gmac1 {
|
||||
status = "okay";
|
||||
phy-mode = "rgmii";
|
||||
|
||||
rxd0-skew-ps = <420>;
|
||||
rxd1-skew-ps = <420>;
|
||||
rxd2-skew-ps = <420>;
|
||||
rxd3-skew-ps = <420>;
|
||||
txen-skew-ps = <0>;
|
||||
txc-skew-ps = <1860>;
|
||||
rxdv-skew-ps = <420>;
|
||||
rxc-skew-ps = <1680>;
|
||||
};
|
||||
|
||||
&gpio0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&mmc0 {
|
||||
vmmc-supply = <®ulator_3_3v>;
|
||||
vqmmc-supply = <®ulator_3_3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb1 {
|
||||
status = "okay";
|
||||
};
|
||||
44
arch/arm/dts/socfpga_cyclone5_ac550soc-u-boot.dtsi
Normal file
44
arch/arm/dts/socfpga_cyclone5_ac550soc-u-boot.dtsi
Normal file
@@ -0,0 +1,44 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* U-Boot additions
|
||||
*
|
||||
* Copyright Altera Corporation (C) 2015
|
||||
* Copyright (c) 2018 Simon Goldschmidt
|
||||
*/
|
||||
|
||||
#include "socfpga-common-u-boot.dtsi"
|
||||
|
||||
/{
|
||||
aliases {
|
||||
udc0 = &usb1;
|
||||
};
|
||||
};
|
||||
|
||||
&watchdog0 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&mmc {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
clock-frequency = <100000000>;
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
clock-frequency = <100000000>;
|
||||
};
|
||||
|
||||
&porta {
|
||||
bank-name = "porta";
|
||||
};
|
||||
|
||||
&portb {
|
||||
bank-name = "portb";
|
||||
};
|
||||
|
||||
&portc {
|
||||
bank-name = "portc";
|
||||
};
|
||||
118
arch/arm/dts/socfpga_cyclone5_ac550soc.dts
Normal file
118
arch/arm/dts/socfpga_cyclone5_ac550soc.dts
Normal file
@@ -0,0 +1,118 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2025, Brian Sune
|
||||
*
|
||||
* based on socfpga_cyclone5_socdk.dts
|
||||
*/
|
||||
|
||||
#include "socfpga_cyclone5.dtsi"
|
||||
|
||||
/ {
|
||||
model = "CoreCourse AC550SoC,AC802-CVA6";
|
||||
compatible = "altr,socfpga-cyclone5", "altr,socfpga";
|
||||
|
||||
chosen {
|
||||
bootargs = "earlyprintk";
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
aliases {
|
||||
ethernet0 = &gmac1;
|
||||
udc0 = &usb1;
|
||||
};
|
||||
|
||||
memory@0 {
|
||||
name = "memory";
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x40000000>; /* 1GB */
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
hps0 {
|
||||
label = "hps_led0";
|
||||
gpios = <&portb 6 1>;
|
||||
};
|
||||
|
||||
hps1 {
|
||||
label = "hps_led1";
|
||||
gpios = <&porta 9 1>;
|
||||
};
|
||||
};
|
||||
|
||||
buttons {
|
||||
compatible = "gpio-keys";
|
||||
hps0 {
|
||||
label = "HPS GPIO0";
|
||||
gpios = <&porta 0 0>;
|
||||
};
|
||||
};
|
||||
|
||||
regulator_3_3v: 3-3-v-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3.3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "okay";
|
||||
clock-frequency = <100000>;
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
status = "okay";
|
||||
clock-frequency = <100000>;
|
||||
|
||||
i2c-sda-falling-time-ns = <5000>;
|
||||
i2c-scl-falling-time-ns = <5000>;
|
||||
|
||||
eeprom@50 {
|
||||
compatible = "atmel,24c64";
|
||||
reg = <0x50>;
|
||||
pagesize = <32>;
|
||||
};
|
||||
|
||||
rtc@51 {
|
||||
compatible = "nxp,pcf8563";
|
||||
reg = <0x51>;
|
||||
#clock-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&gmac1 {
|
||||
status = "okay";
|
||||
phy-mode = "rgmii";
|
||||
|
||||
rxd0-skew-ps = <420>;
|
||||
rxd1-skew-ps = <420>;
|
||||
rxd2-skew-ps = <420>;
|
||||
rxd3-skew-ps = <420>;
|
||||
txen-skew-ps = <0>;
|
||||
txc-skew-ps = <1860>;
|
||||
rxdv-skew-ps = <420>;
|
||||
rxc-skew-ps = <1680>;
|
||||
};
|
||||
|
||||
&gpio0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&mmc0 {
|
||||
vmmc-supply = <®ulator_3_3v>;
|
||||
vqmmc-supply = <®ulator_3_3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb1 {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -20,7 +20,7 @@
|
||||
udc0 = &usb1;
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
name = "memory";
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x40000000>; /* 1GB */
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
udc0 = &usb1;
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
name = "memory";
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x40000000>; /* 1GB */
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
udc0 = &usb1;
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
name = "memory";
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x40000000>; /* 1GB */
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
udc0 = &usb1;
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
name = "memory";
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x40000000>; /* 1GB */
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
name = "memory";
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x10000000>;
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
os = "U-Boot";
|
||||
arch = "arm64";
|
||||
compression = "none";
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
load = <0x80200000>;
|
||||
#else
|
||||
load = <0x00200000>;
|
||||
@@ -47,7 +47,7 @@
|
||||
os = "arm-trusted-firmware";
|
||||
arch = "arm64";
|
||||
compression = "none";
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
load = <0x80000000>;
|
||||
entry = <0x80000000>;
|
||||
#else
|
||||
@@ -106,7 +106,7 @@
|
||||
arch = "arm64";
|
||||
os = "linux";
|
||||
compression = "none";
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
load = <0x86000000>;
|
||||
entry = <0x86000000>;
|
||||
#else
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
if ARCH_SOCFPGA
|
||||
|
||||
config ERR_PTR_OFFSET
|
||||
default 0xfffec000 if TARGET_SOCFPGA_GEN5 # Boot ROM range
|
||||
default 0xfffec000 if ARCH_SOCFPGA_GEN5 # Boot ROM range
|
||||
|
||||
config NR_DRAM_BANKS
|
||||
default 1
|
||||
|
||||
config SOCFPGA_SECURE_VAB_AUTH
|
||||
bool "Enable boot image authentication with Secure Device Manager"
|
||||
depends on TARGET_SOCFPGA_AGILEX || TARGET_SOCFPGA_N5X || \
|
||||
TARGET_SOCFPGA_AGILEX5
|
||||
depends on ARCH_SOCFPGA_AGILEX || ARCH_SOCFPGA_N5X || \
|
||||
ARCH_SOCFPGA_AGILEX5
|
||||
select FIT_IMAGE_POST_PROCESS
|
||||
select SHA384
|
||||
select SHA512
|
||||
@@ -23,32 +23,32 @@ config SOCFPGA_SECURE_VAB_AUTH_ALLOW_NON_FIT_IMAGE
|
||||
depends on SOCFPGA_SECURE_VAB_AUTH
|
||||
|
||||
config SPL_SIZE_LIMIT
|
||||
default 0x10000 if TARGET_SOCFPGA_GEN5
|
||||
default 0x10000 if ARCH_SOCFPGA_GEN5
|
||||
|
||||
config SPL_SIZE_LIMIT_PROVIDE_STACK
|
||||
default 0x200 if TARGET_SOCFPGA_GEN5
|
||||
default 0x200 if ARCH_SOCFPGA_GEN5
|
||||
|
||||
config SPL_STACK_R_ADDR
|
||||
default 0x00800000 if TARGET_SOCFPGA_GEN5
|
||||
default 0x00800000 if ARCH_SOCFPGA_GEN5
|
||||
|
||||
config SPL_SYS_MALLOC_F
|
||||
default y if TARGET_SOCFPGA_GEN5
|
||||
default y if ARCH_SOCFPGA_GEN5
|
||||
|
||||
config SPL_SYS_MALLOC_F_LEN
|
||||
default 0x800 if TARGET_SOCFPGA_GEN5
|
||||
default 0x800 if ARCH_SOCFPGA_GEN5
|
||||
|
||||
config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE
|
||||
default 0xa2
|
||||
|
||||
config SYS_MALLOC_F_LEN
|
||||
default 0x2000 if TARGET_SOCFPGA_ARRIA10
|
||||
default 0x2000 if TARGET_SOCFPGA_GEN5
|
||||
default 0x2000 if ARCH_SOCFPGA_ARRIA10
|
||||
default 0x2000 if ARCH_SOCFPGA_GEN5
|
||||
|
||||
config TEXT_BASE
|
||||
default 0x01000040 if TARGET_SOCFPGA_ARRIA10
|
||||
default 0x01000040 if TARGET_SOCFPGA_GEN5
|
||||
default 0x01000040 if ARCH_SOCFPGA_ARRIA10
|
||||
default 0x01000040 if ARCH_SOCFPGA_GEN5
|
||||
|
||||
config TARGET_SOCFPGA_AGILEX
|
||||
config ARCH_SOCFPGA_AGILEX
|
||||
bool
|
||||
select ARMV8_MULTIENTRY
|
||||
select ARMV8_SET_SMPEN
|
||||
@@ -58,9 +58,9 @@ config TARGET_SOCFPGA_AGILEX
|
||||
select GICV2
|
||||
select NCORE_CACHE
|
||||
select SPL_CLK if SPL
|
||||
select TARGET_SOCFPGA_SOC64
|
||||
select ARCH_SOCFPGA_SOC64
|
||||
|
||||
config TARGET_SOCFPGA_AGILEX7M
|
||||
config ARCH_SOCFPGA_AGILEX7M
|
||||
bool
|
||||
select ARMV8_MULTIENTRY
|
||||
select ARMV8_SET_SMPEN
|
||||
@@ -70,21 +70,21 @@ config TARGET_SOCFPGA_AGILEX7M
|
||||
select GICV2
|
||||
select NCORE_CACHE
|
||||
select SPL_CLK if SPL
|
||||
select TARGET_SOCFPGA_SOC64
|
||||
select ARCH_SOCFPGA_SOC64
|
||||
|
||||
config TARGET_SOCFPGA_AGILEX5
|
||||
config ARCH_SOCFPGA_AGILEX5
|
||||
bool
|
||||
select BINMAN if SPL_ATF
|
||||
select CLK
|
||||
select FPGA_INTEL_SDM_MAILBOX
|
||||
select SPL_CLK if SPL
|
||||
select TARGET_SOCFPGA_SOC64
|
||||
select ARCH_SOCFPGA_SOC64
|
||||
|
||||
config TARGET_SOCFPGA_ARRIA5
|
||||
config ARCH_SOCFPGA_ARRIA5
|
||||
bool
|
||||
select TARGET_SOCFPGA_GEN5
|
||||
select ARCH_SOCFPGA_GEN5
|
||||
|
||||
config TARGET_SOCFPGA_ARRIA10
|
||||
config ARCH_SOCFPGA_ARRIA10
|
||||
bool
|
||||
select GICV2
|
||||
select SPL_ALTERA_SDRAM
|
||||
@@ -105,17 +105,17 @@ config TARGET_SOCFPGA_ARRIA10
|
||||
|
||||
config SOCFPGA_ARRIA10_ALWAYS_REPROGRAM
|
||||
bool "Always reprogram Arria 10 FPGA"
|
||||
depends on TARGET_SOCFPGA_ARRIA10
|
||||
depends on ARCH_SOCFPGA_ARRIA10
|
||||
help
|
||||
Arria 10 FPGA is only programmed during the cold boot.
|
||||
This option forces the FPGA to be reprogrammed every reboot,
|
||||
allowing to change the bitstream and apply it with warm reboot.
|
||||
|
||||
config TARGET_SOCFPGA_CYCLONE5
|
||||
config ARCH_SOCFPGA_CYCLONE5
|
||||
bool
|
||||
select TARGET_SOCFPGA_GEN5
|
||||
select ARCH_SOCFPGA_GEN5
|
||||
|
||||
config TARGET_SOCFPGA_GEN5
|
||||
config ARCH_SOCFPGA_GEN5
|
||||
bool
|
||||
select SPL_ALTERA_SDRAM
|
||||
imply FPGA_SOCFPGA
|
||||
@@ -125,7 +125,7 @@ config TARGET_SOCFPGA_GEN5
|
||||
imply SPL_SYS_MALLOC_SIMPLE
|
||||
imply SPL_USE_TINY_PRINTF
|
||||
|
||||
config TARGET_SOCFPGA_N5X
|
||||
config ARCH_SOCFPGA_N5X
|
||||
bool
|
||||
select ARMV8_MULTIENTRY
|
||||
select ARMV8_SET_SMPEN
|
||||
@@ -135,23 +135,23 @@ config TARGET_SOCFPGA_N5X
|
||||
select NCORE_CACHE
|
||||
select SPL_ALTERA_SDRAM
|
||||
select SPL_CLK if SPL
|
||||
select TARGET_SOCFPGA_SOC64
|
||||
select ARCH_SOCFPGA_SOC64
|
||||
|
||||
config TARGET_SOCFPGA_N5X_SOCDK
|
||||
bool "Intel eASIC SoCDK (N5X)"
|
||||
select TARGET_SOCFPGA_N5X
|
||||
select ARCH_SOCFPGA_N5X
|
||||
|
||||
config TARGET_SOCFPGA_SOC64
|
||||
config ARCH_SOCFPGA_SOC64
|
||||
bool
|
||||
|
||||
config TARGET_SOCFPGA_STRATIX10
|
||||
config ARCH_SOCFPGA_STRATIX10
|
||||
bool
|
||||
select ARMV8_MULTIENTRY
|
||||
select ARMV8_SET_SMPEN
|
||||
select BINMAN if SPL_ATF
|
||||
select FPGA_INTEL_SDM_MAILBOX
|
||||
select GICV2
|
||||
select TARGET_SOCFPGA_SOC64
|
||||
select ARCH_SOCFPGA_SOC64
|
||||
|
||||
choice
|
||||
prompt "Altera SOCFPGA board select"
|
||||
@@ -159,85 +159,93 @@ choice
|
||||
|
||||
config TARGET_SOCFPGA_AGILEX_SOCDK
|
||||
bool "Intel SOCFPGA SoCDK (Agilex)"
|
||||
select TARGET_SOCFPGA_AGILEX
|
||||
select ARCH_SOCFPGA_AGILEX
|
||||
|
||||
config TARGET_SOCFPGA_AGILEX7M_SOCDK
|
||||
bool "Intel SOCFPGA SoCDK (Agilex7 M-series)"
|
||||
select TARGET_SOCFPGA_AGILEX7M
|
||||
select ARCH_SOCFPGA_AGILEX7M
|
||||
|
||||
config TARGET_SOCFPGA_AGILEX5_SOCDK
|
||||
bool "Intel SOCFPGA SoCDK (Agilex5)"
|
||||
select TARGET_SOCFPGA_AGILEX5
|
||||
select ARCH_SOCFPGA_AGILEX5
|
||||
|
||||
config TARGET_SOCFPGA_ARIES_MCVEVK
|
||||
bool "Aries MCVEVK (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_ARRIA10_SOCDK
|
||||
bool "Altera SOCFPGA SoCDK (Arria 10)"
|
||||
select TARGET_SOCFPGA_ARRIA10
|
||||
select ARCH_SOCFPGA_ARRIA10
|
||||
|
||||
config TARGET_SOCFPGA_ARRIA5_SECU1
|
||||
bool "ABB SECU1 (Arria V)"
|
||||
select TARGET_SOCFPGA_ARRIA5
|
||||
select ARCH_SOCFPGA_ARRIA5
|
||||
select VENDOR_KM
|
||||
|
||||
config TARGET_SOCFPGA_ARRIA5_SOCDK
|
||||
bool "Altera SOCFPGA SoCDK (Arria V)"
|
||||
select TARGET_SOCFPGA_ARRIA5
|
||||
select ARCH_SOCFPGA_ARRIA5
|
||||
|
||||
config TARGET_SOCFPGA_CHAMELEONV3
|
||||
bool "Google Chameleon v3 (Arria 10)"
|
||||
select TARGET_SOCFPGA_ARRIA10
|
||||
select ARCH_SOCFPGA_ARRIA10
|
||||
|
||||
config TARGET_SOCFPGA_CYCLONE5_SOCDK
|
||||
bool "Altera SOCFPGA SoCDK (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
|
||||
bool "Devboards DBM-SoC1 (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_EBV_SOCRATES
|
||||
bool "EBV SoCrates (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_IS1
|
||||
bool "IS1 (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_SOFTING_VINING_FPGA
|
||||
bool "Softing VIN|ING FPGA (Cyclone V)"
|
||||
select BOARD_LATE_INIT
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_SR1500
|
||||
bool "SR1500 (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_STRATIX10_SOCDK
|
||||
bool "Intel SOCFPGA SoCDK (Stratix 10)"
|
||||
select TARGET_SOCFPGA_STRATIX10
|
||||
select ARCH_SOCFPGA_STRATIX10
|
||||
|
||||
config TARGET_SOCFPGA_TERASIC_DE0_NANO
|
||||
bool "Terasic DE0-Nano-Atlas (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_TERASIC_DE10_NANO
|
||||
bool "Terasic DE10-Nano (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_TERASIC_DE10_STANDARD
|
||||
bool "Terasic DE10-Standard (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_TERASIC_DE1_SOC
|
||||
bool "Terasic DE1-SoC (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_TERASIC_SOCKIT
|
||||
bool "Terasic SoCkit (Cyclone V)"
|
||||
select TARGET_SOCFPGA_CYCLONE5
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_CORECOURSE_AC501SOC
|
||||
bool "CoreCourse AC501SoC (Cyclone V)"
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
config TARGET_SOCFPGA_CORECOURSE_AC550SOC
|
||||
bool "CoreCourse AC550SoC (Cyclone V)"
|
||||
select ARCH_SOCFPGA_CYCLONE5
|
||||
|
||||
endchoice
|
||||
|
||||
@@ -263,6 +271,8 @@ config SYS_BOARD
|
||||
default "sr1500" if TARGET_SOCFPGA_SR1500
|
||||
default "stratix10-socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
|
||||
default "vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
|
||||
default "ac501soc" if TARGET_SOCFPGA_CORECOURSE_AC501SOC
|
||||
default "ac550soc" if TARGET_SOCFPGA_CORECOURSE_AC550SOC
|
||||
|
||||
config SYS_VENDOR
|
||||
default "intel" if TARGET_SOCFPGA_AGILEX7M_SOCDK
|
||||
@@ -284,6 +294,8 @@ config SYS_VENDOR
|
||||
default "terasic" if TARGET_SOCFPGA_TERASIC_DE10_NANO
|
||||
default "terasic" if TARGET_SOCFPGA_TERASIC_DE10_STANDARD
|
||||
default "terasic" if TARGET_SOCFPGA_TERASIC_SOCKIT
|
||||
default "corecourse" if TARGET_SOCFPGA_CORECOURSE_AC501SOC
|
||||
default "corecourse" if TARGET_SOCFPGA_CORECOURSE_AC550SOC
|
||||
|
||||
config SYS_SOC
|
||||
default "socfpga"
|
||||
@@ -310,5 +322,7 @@ config SYS_CONFIG_NAME
|
||||
default "socfpga_sr1500" if TARGET_SOCFPGA_SR1500
|
||||
default "socfpga_stratix10_socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
|
||||
default "socfpga_vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
|
||||
default "socfpga_ac501soc" if TARGET_SOCFPGA_CORECOURSE_AC501SOC
|
||||
default "socfpga_ac550soc" if TARGET_SOCFPGA_CORECOURSE_AC550SOC
|
||||
|
||||
endif
|
||||
|
||||
@@ -10,7 +10,7 @@ obj-y += board.o
|
||||
obj-y += clock_manager.o
|
||||
obj-y += misc.o
|
||||
|
||||
ifdef CONFIG_TARGET_SOCFPGA_GEN5
|
||||
ifdef CONFIG_ARCH_SOCFPGA_GEN5
|
||||
obj-y += clock_manager_gen5.o
|
||||
obj-y += misc_gen5.o
|
||||
obj-y += reset_manager_gen5.o
|
||||
@@ -21,14 +21,14 @@ obj-y += wrap_pll_config.o
|
||||
obj-y += fpga_manager.o
|
||||
endif
|
||||
|
||||
ifdef CONFIG_TARGET_SOCFPGA_ARRIA10
|
||||
ifdef CONFIG_ARCH_SOCFPGA_ARRIA10
|
||||
obj-y += clock_manager_arria10.o
|
||||
obj-y += misc_arria10.o
|
||||
obj-y += pinmux_arria10.o
|
||||
obj-y += reset_manager_arria10.o
|
||||
endif
|
||||
|
||||
ifdef CONFIG_TARGET_SOCFPGA_STRATIX10
|
||||
ifdef CONFIG_ARCH_SOCFPGA_STRATIX10
|
||||
obj-y += clock_manager_s10.o
|
||||
obj-y += lowlevel_init_soc64.o
|
||||
obj-y += mailbox_s10.o
|
||||
@@ -41,7 +41,7 @@ obj-y += wrap_handoff_soc64.o
|
||||
obj-y += wrap_pll_config_soc64.o
|
||||
endif
|
||||
|
||||
ifdef CONFIG_TARGET_SOCFPGA_AGILEX
|
||||
ifdef CONFIG_ARCH_SOCFPGA_AGILEX
|
||||
obj-y += clock_manager_agilex.o
|
||||
obj-y += lowlevel_init_soc64.o
|
||||
obj-y += mailbox_s10.o
|
||||
@@ -57,7 +57,7 @@ obj-y += wrap_pll_config_soc64.o
|
||||
obj-y += altera-sysmgr.o
|
||||
endif
|
||||
|
||||
ifdef CONFIG_TARGET_SOCFPGA_AGILEX5
|
||||
ifdef CONFIG_ARCH_SOCFPGA_AGILEX5
|
||||
obj-y += clock_manager_agilex5.o
|
||||
obj-y += mailbox_s10.o
|
||||
obj-y += misc_soc64.o
|
||||
@@ -73,7 +73,7 @@ obj-$(CONFIG_SOCFPGA_SECURE_VAB_AUTH) += secure_vab.o
|
||||
obj-$(CONFIG_SOCFPGA_SECURE_VAB_AUTH) += vab.o
|
||||
endif
|
||||
|
||||
ifdef CONFIG_TARGET_SOCFPGA_AGILEX7M
|
||||
ifdef CONFIG_ARCH_SOCFPGA_AGILEX7M
|
||||
obj-y += clock_manager_agilex.o
|
||||
obj-y += lowlevel_init_soc64.o
|
||||
obj-y += mailbox_s10.o
|
||||
@@ -89,7 +89,7 @@ obj-y += wrap_pll_config_soc64.o
|
||||
obj-y += altera-sysmgr.o
|
||||
endif
|
||||
|
||||
ifdef CONFIG_TARGET_SOCFPGA_N5X
|
||||
ifdef CONFIG_ARCH_SOCFPGA_N5X
|
||||
obj-y += clock_manager_n5x.o
|
||||
obj-y += lowlevel_init_soc64.o
|
||||
obj-y += mailbox_s10.o
|
||||
@@ -105,34 +105,34 @@ obj-y += wrap_pll_config_soc64.o
|
||||
endif
|
||||
|
||||
ifdef CONFIG_XPL_BUILD
|
||||
ifdef CONFIG_TARGET_SOCFPGA_GEN5
|
||||
ifdef CONFIG_ARCH_SOCFPGA_GEN5
|
||||
obj-y += spl_gen5.o
|
||||
obj-y += freeze_controller.o
|
||||
obj-y += wrap_iocsr_config.o
|
||||
obj-y += wrap_pinmux_config.o
|
||||
obj-y += wrap_sdram_config.o
|
||||
endif
|
||||
ifdef CONFIG_TARGET_SOCFPGA_SOC64
|
||||
ifdef CONFIG_ARCH_SOCFPGA_SOC64
|
||||
obj-y += firewall.o
|
||||
obj-y += spl_soc64.o
|
||||
endif
|
||||
ifdef CONFIG_TARGET_SOCFPGA_ARRIA10
|
||||
ifdef CONFIG_ARCH_SOCFPGA_ARRIA10
|
||||
obj-y += spl_a10.o
|
||||
endif
|
||||
ifdef CONFIG_TARGET_SOCFPGA_STRATIX10
|
||||
ifdef CONFIG_ARCH_SOCFPGA_STRATIX10
|
||||
obj-y += spl_s10.o
|
||||
endif
|
||||
ifdef CONFIG_TARGET_SOCFPGA_AGILEX
|
||||
ifdef CONFIG_ARCH_SOCFPGA_AGILEX
|
||||
obj-y += spl_agilex.o
|
||||
endif
|
||||
ifdef CONFIG_TARGET_SOCFPGA_N5X
|
||||
ifdef CONFIG_ARCH_SOCFPGA_N5X
|
||||
obj-y += spl_n5x.o
|
||||
endif
|
||||
ifdef CONFIG_TARGET_SOCFPGA_AGILEX5
|
||||
ifdef CONFIG_ARCH_SOCFPGA_AGILEX5
|
||||
obj-y += spl_soc64.o
|
||||
obj-y += spl_agilex5.o
|
||||
endif
|
||||
ifdef CONFIG_TARGET_SOCFPGA_AGILEX7M
|
||||
ifdef CONFIG_ARCH_SOCFPGA_AGILEX7M
|
||||
obj-y += spl_agilex7m.o
|
||||
endif
|
||||
else
|
||||
@@ -140,7 +140,7 @@ obj-$(CONFIG_SPL_ATF) += secure_reg_helper.o
|
||||
obj-$(CONFIG_SPL_ATF) += smc_api.o
|
||||
endif
|
||||
|
||||
ifdef CONFIG_TARGET_SOCFPGA_GEN5
|
||||
ifdef CONFIG_ARCH_SOCFPGA_GEN5
|
||||
# QTS-generated config file wrappers
|
||||
CFLAGS_wrap_iocsr_config.o += -I$(srctree)/board/$(BOARDDIR)
|
||||
CFLAGS_wrap_pinmux_config.o += -I$(srctree)/board/$(BOARDDIR)
|
||||
|
||||
@@ -61,7 +61,7 @@ int board_init(void)
|
||||
|
||||
int dram_init_banksize(void)
|
||||
{
|
||||
#if CONFIG_IS_ENABLED(HANDOFF) && IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if CONFIG_IS_ENABLED(HANDOFF) && IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#ifndef CONFIG_SPL_BUILD
|
||||
struct spl_handoff *ho;
|
||||
|
||||
@@ -72,7 +72,7 @@ int dram_init_banksize(void)
|
||||
#endif
|
||||
#else
|
||||
fdtdec_setup_memory_banksize();
|
||||
#endif /* HANDOFF && CONFIG_TARGET_SOCFPGA_AGILEX5 */
|
||||
#endif /* HANDOFF && CONFIG_ARCH_SOCFPGA_AGILEX5 */
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -145,7 +145,7 @@ u8 socfpga_get_board_id(void)
|
||||
return board_id;
|
||||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_XPL_BUILD) && IS_ENABLED(CONFIG_TARGET_SOCFPGA_SOC64)
|
||||
#if IS_ENABLED(CONFIG_XPL_BUILD) && IS_ENABLED(CONFIG_ARCH_SOCFPGA_SOC64)
|
||||
int board_fit_config_name_match(const char *name)
|
||||
{
|
||||
char board_name[10];
|
||||
|
||||
@@ -18,7 +18,7 @@ void cm_wait_for_lock(u32 mask)
|
||||
u32 inter_val;
|
||||
u32 retry = 0;
|
||||
do {
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_GEN5)
|
||||
inter_val = readl(socfpga_get_clkmgr_addr() +
|
||||
CLKMGR_INTER) & mask;
|
||||
#else
|
||||
@@ -45,7 +45,7 @@ int cm_wait_for_fsm(void)
|
||||
|
||||
int set_cpu_clk_info(void)
|
||||
{
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_GEN5)
|
||||
/* Calculate the clock frequencies required for drivers */
|
||||
cm_get_l4_sp_clk_hz();
|
||||
cm_get_mmc_controller_clk_hz();
|
||||
@@ -54,7 +54,7 @@ int set_cpu_clk_info(void)
|
||||
gd->bd->bi_arm_freq = cm_get_mpu_clk_hz() / 1000000;
|
||||
gd->bd->bi_dsp_freq = 0;
|
||||
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_GEN5)
|
||||
gd->bd->bi_ddr_freq = cm_get_sdram_clk_hz() / 1000000;
|
||||
#else
|
||||
gd->bd->bi_ddr_freq = 0;
|
||||
@@ -63,7 +63,7 @@ int set_cpu_clk_info(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_SOC64)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_SOC64)
|
||||
int cm_set_qspi_controller_clk_hz(u32 clk_hz)
|
||||
{
|
||||
u32 reg;
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
#
|
||||
# Brian Sune <briansune@gmail.com>
|
||||
|
||||
ifeq ($(CONFIG_TARGET_SOCFPGA_CYCLONE5),y)
|
||||
ifeq ($(CONFIG_ARCH_SOCFPGA_CYCLONE5),y)
|
||||
archprepare: socfpga_g5_handoff_prepare
|
||||
else ifeq ($(CONFIG_TARGET_SOCFPGA_ARRIA5),y)
|
||||
else ifeq ($(CONFIG_ARCH_SOCFPGA_ARRIA5),y)
|
||||
archprepare: socfpga_g5_handoff_prepare
|
||||
endif
|
||||
|
||||
@@ -23,7 +23,7 @@ socfpga_g5_handoff_prepare:
|
||||
if [ -z "$$VENDOR" ] || [ -z "$$BOARD" ]; then \
|
||||
exit 0; \
|
||||
fi; \
|
||||
BOARD_DIR=$(src)/board/$$VENDOR/$$BOARD; \
|
||||
BOARD_DIR=$(srctree)/board/$$VENDOR/$$BOARD; \
|
||||
if [ "$$HANDOFF_PATH" ]; then \
|
||||
echo "[INFO] Using manually specified handoff folder: $$HANDOFF_PATH"; \
|
||||
else \
|
||||
@@ -44,5 +44,5 @@ socfpga_g5_handoff_prepare:
|
||||
fi; \
|
||||
echo "[INFO] Found hiof file: $$HIOF_FILE"; \
|
||||
echo "[INFO] Running BSP generator..."; \
|
||||
python3 $(src)/tools/cv_bsp_generator/cv_bsp_generator.py -i "$$HANDOFF_PATH" -o "$$BOARD_DIR/qts" || echo "[WARN] BSP generator failed, continuing..."; \
|
||||
python3 $(srctree)/tools/cv_bsp_generator/cv_bsp_generator.py -i "$$HANDOFF_PATH" -o "$$BOARD_DIR/qts" || echo "[WARN] BSP generator failed, continuing..."; \
|
||||
echo "[DONE] SoCFPGA QTS handoff conversion complete."
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#ifndef _SOCFPGA_SOC64_BASE_HARDWARE_H_
|
||||
#define _SOCFPGA_SOC64_BASE_HARDWARE_H_
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define SOCFPGA_CCU_ADDRESS 0x1c000000
|
||||
#define SOCFPGA_F2SDRAM_MGR_ADDRESS 0x18001000
|
||||
#define SOCFPGA_SMMU_ADDRESS 0x16000000
|
||||
@@ -47,9 +47,9 @@
|
||||
#define SOCFPGA_HMC_MMR_IO48_ADDRESS 0xf8010000
|
||||
#define SOCFPGA_SDR_ADDRESS 0xf8011000
|
||||
#define SOCFPGA_FW_MPFE_SCR_ADDRESS 0xf8020000
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX) || \
|
||||
IS_ENABLED(CONFIG_TARGET_SOCFPGA_N5X) || \
|
||||
IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX) || \
|
||||
IS_ENABLED(CONFIG_ARCH_SOCFPGA_N5X) || \
|
||||
IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M)
|
||||
#define SOCFPGA_FW_MPU_DDR_SCR_ADDRESS 0xf8020200
|
||||
#else
|
||||
#define SOCFPGA_FW_MPU_DDR_SCR_ADDRESS 0xf8020100
|
||||
@@ -84,6 +84,6 @@
|
||||
#define SOCFPGA_OCRAM_ADDRESS 0xffe00000
|
||||
#define GICD_BASE 0xfffc1000
|
||||
#define GICC_BASE 0xfffc2000
|
||||
#endif /* IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5) */
|
||||
#endif /* IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5) */
|
||||
|
||||
#endif /* _SOCFPGA_SOC64_BASE_HARDWARE_H_ */
|
||||
|
||||
@@ -17,22 +17,22 @@ void cm_print_clock_quick_summary(void);
|
||||
unsigned long cm_get_mpu_clk_hz(void);
|
||||
unsigned int cm_get_qspi_controller_clk_hz(void);
|
||||
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_SOC64)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_SOC64)
|
||||
int cm_set_qspi_controller_clk_hz(u32 clk_hz);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_GEN5)
|
||||
#include <asm/arch/clock_manager_gen5.h>
|
||||
#elif defined(CONFIG_TARGET_SOCFPGA_ARRIA10)
|
||||
#elif defined(CONFIG_ARCH_SOCFPGA_ARRIA10)
|
||||
#include <asm/arch/clock_manager_arria10.h>
|
||||
#elif defined(CONFIG_TARGET_SOCFPGA_STRATIX10)
|
||||
#elif defined(CONFIG_ARCH_SOCFPGA_STRATIX10)
|
||||
#include <asm/arch/clock_manager_s10.h>
|
||||
#elif IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX) || IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M)
|
||||
#elif IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX) || IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M)
|
||||
#include <asm/arch/clock_manager_agilex.h>
|
||||
#elif IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#elif IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#include <asm/arch/clock_manager_agilex5.h>
|
||||
#elif IS_ENABLED(CONFIG_TARGET_SOCFPGA_N5X)
|
||||
#elif IS_ENABLED(CONFIG_ARCH_SOCFPGA_N5X)
|
||||
#include <asm/arch/clock_manager_n5x.h>
|
||||
#endif
|
||||
|
||||
|
||||
@@ -138,7 +138,7 @@ struct socfpga_firwall_l4_sys {
|
||||
#define MPUREGION0_ENABLE BIT(0)
|
||||
#define NONMPUREGION0_ENABLE BIT(8)
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define FW_MPU_DDR_SCR_WRITEL(data, reg) \
|
||||
writel(data, SOCFPGA_FW_DDR_CCU_DMI0_ADDRESS + (reg)); \
|
||||
writel(data, SOCFPGA_FW_DDR_CCU_DMI1_ADDRESS + (reg))
|
||||
|
||||
@@ -9,9 +9,9 @@
|
||||
|
||||
#include <altera.h>
|
||||
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_GEN5)
|
||||
#include <asm/arch/fpga_manager_gen5.h>
|
||||
#elif defined(CONFIG_TARGET_SOCFPGA_ARRIA10)
|
||||
#elif defined(CONFIG_ARCH_SOCFPGA_ARRIA10)
|
||||
#include <asm/arch/fpga_manager_arria10.h>
|
||||
#endif
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
#define SOC64_HANDOFF_MAGIC_DELAY 0x444C4159
|
||||
#define SOC64_HANDOFF_MAGIC_CLOCK 0x434C4B53
|
||||
#define SOC64_HANDOFF_MAGIC_SDRAM 0x5344524D
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define SOC64_HANDOFF_MAGIC_PERI 0x50455249
|
||||
#else
|
||||
#define SOC64_HANDOFF_MAGIC_MISC 0x4D495343
|
||||
@@ -29,11 +29,11 @@
|
||||
#define SOC64_HANDOFF_OFFSET_DATA 0x10
|
||||
#define SOC64_HANDOFF_SIZE 4096
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_STRATIX10) || \
|
||||
IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX) || \
|
||||
IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_STRATIX10) || \
|
||||
IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX) || \
|
||||
IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M)
|
||||
#define SOC64_HANDOFF_BASE 0xFFE3F000
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M)
|
||||
#define SOC64_HANDOFF_MISC (SOC64_HANDOFF_BASE + 0x634)
|
||||
/* DDR handoff */
|
||||
#define SOC64_HANDOFF_DDR_BASE (SOC64_HANDOFF_BASE + 0x610)
|
||||
@@ -43,9 +43,9 @@
|
||||
#else
|
||||
#define SOC64_HANDOFF_MISC (SOC64_HANDOFF_BASE + 0x610)
|
||||
#endif
|
||||
#elif IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#elif IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define SOC64_HANDOFF_BASE 0x0007F000
|
||||
#elif IS_ENABLED(CONFIG_TARGET_SOCFPGA_N5X)
|
||||
#elif IS_ENABLED(CONFIG_ARCH_SOCFPGA_N5X)
|
||||
#define SOC64_HANDOFF_BASE 0xFFE5F000
|
||||
#define SOC64_HANDOFF_MISC (SOC64_HANDOFF_BASE + 0x630)
|
||||
|
||||
@@ -76,17 +76,17 @@
|
||||
#define SOC64_HANDOFF_FPGA (SOC64_HANDOFF_BASE + 0x330)
|
||||
#define SOC64_HANDOFF_DELAY (SOC64_HANDOFF_BASE + 0x3F0)
|
||||
#define SOC64_HANDOFF_CLOCK (SOC64_HANDOFF_BASE + 0x580)
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define SOC64_HANDOFF_PERI (SOC64_HANDOFF_BASE + 0x620)
|
||||
#define SOC64_HANDOFF_PERI_LEN 1
|
||||
#define SOC64_HANDOFF_SDRAM (SOC64_HANDOFF_BASE + 0x634)
|
||||
#define SOC64_HANDOFF_SDRAM_LEN 5
|
||||
#endif
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_STRATIX10)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_STRATIX10)
|
||||
#define SOC64_HANDOFF_CLOCK_OSC (SOC64_HANDOFF_BASE + 0x608)
|
||||
#define SOC64_HANDOFF_CLOCK_FPGA (SOC64_HANDOFF_BASE + 0x60C)
|
||||
#elif IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#elif IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define SOC64_HANDOFF_CLOCK_OSC (SOC64_HANDOFF_BASE + 0x60c)
|
||||
#define SOC64_HANDOFF_CLOCK_FPGA (SOC64_HANDOFF_BASE + 0x610)
|
||||
#else
|
||||
@@ -96,9 +96,9 @@
|
||||
|
||||
#define SOC64_HANDOFF_MUX_LEN 96
|
||||
#define SOC64_HANDOFF_IOCTL_LEN 96
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_STRATIX10)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_STRATIX10)
|
||||
#define SOC64_HANDOFF_FPGA_LEN 42
|
||||
#elif IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#elif IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define SOC64_HANDOFF_FPGA_LEN 44
|
||||
#else
|
||||
#define SOC64_HANDOFF_FPGA_LEN 40
|
||||
|
||||
@@ -24,7 +24,7 @@ void socfpga_fpga_add(void *fpga_desc);
|
||||
static inline void socfpga_fpga_add(void *fpga_desc) {}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_TARGET_SOCFPGA_GEN5
|
||||
#ifdef CONFIG_ARCH_SOCFPGA_GEN5
|
||||
void socfpga_sdram_remap_zero(void);
|
||||
static inline bool socfpga_is_booting_from_fpga(void)
|
||||
{
|
||||
@@ -35,14 +35,14 @@ static inline bool socfpga_is_booting_from_fpga(void)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_TARGET_SOCFPGA_ARRIA10
|
||||
#ifdef CONFIG_ARCH_SOCFPGA_ARRIA10
|
||||
void socfpga_init_security_policies(void);
|
||||
void socfpga_sdram_remap_zero(void);
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_STRATIX10) || \
|
||||
defined(CONFIG_TARGET_SOCFPGA_AGILEX) || \
|
||||
defined(CONFIG_TARGET_SOCFPGA_AGILEX7M)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_STRATIX10) || \
|
||||
defined(CONFIG_ARCH_SOCFPGA_AGILEX) || \
|
||||
defined(CONFIG_ARCH_SOCFPGA_AGILEX7M)
|
||||
int is_fpga_config_ready(void);
|
||||
#endif
|
||||
|
||||
|
||||
@@ -39,11 +39,11 @@ void socfpga_per_reset_all(void);
|
||||
/* Create a human-readable reference to SoCFPGA reset. */
|
||||
#define SOCFPGA_RESET(_name) RSTMGR_##_name
|
||||
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_GEN5)
|
||||
#include <asm/arch/reset_manager_gen5.h>
|
||||
#elif defined(CONFIG_TARGET_SOCFPGA_ARRIA10)
|
||||
#elif defined(CONFIG_ARCH_SOCFPGA_ARRIA10)
|
||||
#include <asm/arch/reset_manager_arria10.h>
|
||||
#elif defined(CONFIG_TARGET_SOCFPGA_SOC64)
|
||||
#elif defined(CONFIG_ARCH_SOCFPGA_SOC64)
|
||||
#include <asm/arch/reset_manager_soc64.h>
|
||||
#endif
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ void socfpga_bridges_reset(int enable, unsigned int mask);
|
||||
#define RSTMGR_STAT_SDMWARMRST 0x2
|
||||
#define RSTMGR_STAT_MPU0RST_BITPOS 8
|
||||
#define RSTMGR_STAT_L4WD0RST_BITPOS 16
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define RSTMGR_STAT_L4WD0RST_BIT 0x1F0000
|
||||
#define RSTMGR_L4WD_MPU_WARMRESET_MASK (RSTMGR_STAT_SDMWARMRST | \
|
||||
RSTMGR_STAT_L4WD0RST_BIT)
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_GEN5)
|
||||
#include <asm/arch/sdram_gen5.h>
|
||||
#elif defined(CONFIG_TARGET_SOCFPGA_ARRIA10)
|
||||
#elif defined(CONFIG_ARCH_SOCFPGA_ARRIA10)
|
||||
#include <asm/arch/sdram_arria10.h>
|
||||
#endif
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
phys_addr_t socfpga_get_sysmgr_addr(void);
|
||||
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_SOC64)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_SOC64)
|
||||
#include <asm/arch/system_manager_soc64.h>
|
||||
#else
|
||||
#define SYSMGR_ROMCODEGRP_CTRL_WARMRSTCFGPINMUX BIT(0)
|
||||
@@ -85,9 +85,9 @@ phys_addr_t socfpga_get_sysmgr_addr(void);
|
||||
#define ALT_SYSMGR_ECC_INTSTAT_SERR_OCRAM_SET_MSK BIT(1)
|
||||
#define ALT_SYSMGR_ECC_INTSTAT_DERR_OCRAM_SET_MSK BIT(1)
|
||||
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_GEN5)
|
||||
#include <asm/arch/system_manager_gen5.h>
|
||||
#elif defined(CONFIG_TARGET_SOCFPGA_ARRIA10)
|
||||
#elif defined(CONFIG_ARCH_SOCFPGA_ARRIA10)
|
||||
#include <asm/arch/system_manager_arria10.h>
|
||||
#endif
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ void sysmgr_pinmux_init(void);
|
||||
void populate_sysmgr_fpgaintf_module(void);
|
||||
void populate_sysmgr_pinmux(void);
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define SYSMGR_SOC64_SILICONID_1 0x00
|
||||
#define SYSMGR_SOC64_SILICONID_2 0x04
|
||||
#define SYSMGR_SOC64_MPU_STATUS 0x10
|
||||
@@ -62,7 +62,7 @@ void populate_sysmgr_pinmux(void);
|
||||
#else
|
||||
#define SYSMGR_SOC64_NAND_AXUSER 0x5c
|
||||
#define SYSMGR_SOC64_DMA_L3MASTER 0x74
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_N5X)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_N5X)
|
||||
#define SYSMGR_SOC64_DDR_MODE 0xb8
|
||||
#else
|
||||
#define SYSMGR_SOC64_HMC_CLK 0xb4
|
||||
@@ -73,7 +73,7 @@ void populate_sysmgr_pinmux(void);
|
||||
#define SYSMGR_SOC64_GPI 0xe8
|
||||
#define SYSMGR_SOC64_MPU 0xf0
|
||||
#define SYSMGR_SCRATCH_REG_0_QSPI_REFCLK_MASK GENMASK(27, 0)
|
||||
#endif /*CONFIG_TARGET_SOCFPGA_AGILEX5*/
|
||||
#endif /*CONFIG_ARCH_SOCFPGA_AGILEX5*/
|
||||
|
||||
#define SYSMGR_SOC64_DMA 0x20
|
||||
#define SYSMGR_SOC64_DMA_PERIPH 0x24
|
||||
@@ -218,7 +218,7 @@ void populate_sysmgr_pinmux(void);
|
||||
|
||||
#define SYSMGR_WDDBG_PAUSE_ALL_CPU 0xFF0F0F0F
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_N5X)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_N5X)
|
||||
#define SYSMGR_SOC64_DDR_MODE_MSK BIT(0)
|
||||
#endif
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ struct bsel bsel_str[] = {
|
||||
|
||||
int dram_init(void)
|
||||
{
|
||||
#if CONFIG_IS_ENABLED(HANDOFF) && IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if CONFIG_IS_ENABLED(HANDOFF) && IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
struct spl_handoff *ho;
|
||||
|
||||
ho = bloblist_find(BLOBLISTT_U_BOOT_SPL_HANDOFF, sizeof(*ho));
|
||||
@@ -65,7 +65,7 @@ int dram_init(void)
|
||||
#else
|
||||
if (fdtdec_setup_mem_size_base() != 0)
|
||||
return -EINVAL;
|
||||
#endif /* HANDOFF && CONFIG_TARGET_SOCFPGA_AGILEX5 */
|
||||
#endif /* HANDOFF && CONFIG_ARCH_SOCFPGA_AGILEX5 */
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -261,21 +261,21 @@ void socfpga_get_managers_addr(void)
|
||||
if (ret)
|
||||
hang();
|
||||
|
||||
if (!IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX) &&
|
||||
!IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M) &&
|
||||
!IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)) {
|
||||
if (!IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX) &&
|
||||
!IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M) &&
|
||||
!IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)) {
|
||||
ret = socfpga_get_base_addr("altr,sys-mgr",
|
||||
&socfpga_sysmgr_base);
|
||||
if (ret)
|
||||
hang();
|
||||
}
|
||||
|
||||
if (IS_ENABLED(CONFIG_TARGET_SOCFPGA_N5X))
|
||||
if (IS_ENABLED(CONFIG_ARCH_SOCFPGA_N5X))
|
||||
ret = socfpga_get_base_addr("intel,n5x-clkmgr",
|
||||
&socfpga_clkmgr_base);
|
||||
else if (!IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX) &&
|
||||
!IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M) &&
|
||||
!IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5))
|
||||
else if (!IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX) &&
|
||||
!IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M) &&
|
||||
!IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5))
|
||||
ret = socfpga_get_base_addr("altr,clk-mgr",
|
||||
&socfpga_clkmgr_base);
|
||||
|
||||
|
||||
@@ -94,7 +94,7 @@ void save_boot_params(unsigned long r0, unsigned long r1, unsigned long r2,
|
||||
int print_cpuinfo(void)
|
||||
{
|
||||
printf("CPU: Altera FPGA SoCFPGA Platform (ARMv8 64bit Cortex-%s)\n",
|
||||
IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5) ? "A55/A76" : "A53");
|
||||
IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5) ? "A55/A76" : "A53");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
static struct mm_region socfpga_agilex5_mem_map[] = {
|
||||
{
|
||||
/* OCRAM 512KB */
|
||||
|
||||
@@ -79,7 +79,7 @@ static void socfpga_f2s_bridges_reset(int enable, unsigned int mask)
|
||||
u32 flaginstatus_idleack = 0;
|
||||
u32 flaginstatus_respempty = 0;
|
||||
|
||||
if (CONFIG_IS_ENABLED(TARGET_SOCFPGA_STRATIX10)) {
|
||||
if (CONFIG_IS_ENABLED(ARCH_SOCFPGA_STRATIX10)) {
|
||||
/* Support fpga2soc and f2sdram */
|
||||
brg_mask = mask & (RSTMGR_BRGMODRST_FPGA2SOC_MASK |
|
||||
RSTMGR_BRGMODRST_F2SDRAM0_MASK |
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
/*
|
||||
* Setting RESET_PULSE_OVERRIDE bit for successful reset staggering pulse
|
||||
* generation and setting PORT_OVERCURRENT bit so that until we turn on the
|
||||
@@ -39,7 +39,7 @@ void sysmgr_pinmux_init(void)
|
||||
populate_sysmgr_pinmux();
|
||||
populate_sysmgr_fpgaintf_module();
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
sysmgr_config_usb3();
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -29,13 +29,13 @@ static enum endianness check_endianness(u32 handoff)
|
||||
case SOC64_HANDOFF_MAGIC_DELAY:
|
||||
case SOC64_HANDOFF_MAGIC_CLOCK:
|
||||
case SOC64_HANDOFF_MAGIC_SDRAM:
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
case SOC64_HANDOFF_MAGIC_PERI:
|
||||
#else
|
||||
case SOC64_HANDOFF_MAGIC_MISC:
|
||||
#endif
|
||||
return BIG_ENDIAN;
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_N5X)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_N5X)
|
||||
case SOC64_HANDOFF_DDR_UMCTL2_MAGIC:
|
||||
debug("%s: umctl2 handoff data\n", __func__);
|
||||
return LITTLE_ENDIAN;
|
||||
|
||||
6
board/corecourse/ac501soc/MAINTAINERS
Normal file
6
board/corecourse/ac501soc/MAINTAINERS
Normal file
@@ -0,0 +1,6 @@
|
||||
SOCFPGA BOARD
|
||||
M: Brian Sune <briansune@gmail.com>
|
||||
S: Maintained
|
||||
F: board/corecourse/ac501soc/
|
||||
F: include/configs/socfpga_ac501soc.h
|
||||
F: configs/socfpga_ac501soc_defconfig
|
||||
664
board/corecourse/ac501soc/qts/iocsr_config.h
Normal file
664
board/corecourse/ac501soc/qts/iocsr_config.h
Normal file
@@ -0,0 +1,664 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2022 Intel Corporation <www.intel.com>
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Altera SoCFPGA IOCSR configuration
|
||||
*/
|
||||
|
||||
#ifndef __SOCFPGA_IOCSR_CONFIG_H__
|
||||
#define __SOCFPGA_IOCSR_CONFIG_H__
|
||||
|
||||
#define CFG_HPS_IOCSR_SCANCHAIN0_LENGTH 764
|
||||
#define CFG_HPS_IOCSR_SCANCHAIN1_LENGTH 1719
|
||||
#define CFG_HPS_IOCSR_SCANCHAIN2_LENGTH 955
|
||||
#define CFG_HPS_IOCSR_SCANCHAIN3_LENGTH 16766
|
||||
|
||||
const unsigned long iocsr_scan_chain0_table[] = {
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x0FF00000,
|
||||
0xC0000000,
|
||||
0x0000003F,
|
||||
0x00008000,
|
||||
0x00060180,
|
||||
0x18060000,
|
||||
0x18000000,
|
||||
0x00018060,
|
||||
0x00000000,
|
||||
0x00004000,
|
||||
0x000300C0,
|
||||
0x0C030000,
|
||||
0x0C000000,
|
||||
0x00000030,
|
||||
0x0000C030,
|
||||
0x00002000,
|
||||
0x00018060,
|
||||
0x06018000,
|
||||
0x06000000,
|
||||
0x00000018,
|
||||
0x00006018,
|
||||
0x00001000,
|
||||
};
|
||||
|
||||
const unsigned long iocsr_scan_chain1_table[] = {
|
||||
0x000C0300,
|
||||
0x300C0000,
|
||||
0x300000C0,
|
||||
0x000000C0,
|
||||
0x000300C0,
|
||||
0x80008000,
|
||||
0x0000007F,
|
||||
0x0001FE00,
|
||||
0x07F80000,
|
||||
0xE0000000,
|
||||
0x0000001F,
|
||||
0x00004000,
|
||||
0x000300C0,
|
||||
0x0C030000,
|
||||
0x0C000000,
|
||||
0x00000030,
|
||||
0x0000C030,
|
||||
0x00002000,
|
||||
0x00018060,
|
||||
0x00007F80,
|
||||
0x01FE0000,
|
||||
0xF8000000,
|
||||
0x00000007,
|
||||
0x00001000,
|
||||
0x0000C030,
|
||||
0x0300C000,
|
||||
0x00000000,
|
||||
0x00000010,
|
||||
0x0000300C,
|
||||
0x00000800,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x01800000,
|
||||
0x00000006,
|
||||
0x00002000,
|
||||
0x00000400,
|
||||
0x00000000,
|
||||
0x00C03000,
|
||||
0x00000003,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000200,
|
||||
0x00601806,
|
||||
0x00000000,
|
||||
0x80600000,
|
||||
0x80000601,
|
||||
0x00000601,
|
||||
0x00000100,
|
||||
0x00300C03,
|
||||
0xC0300C00,
|
||||
0xC0300000,
|
||||
0xC0000300,
|
||||
0x000C0300,
|
||||
0x00000080,
|
||||
};
|
||||
|
||||
const unsigned long iocsr_scan_chain2_table[] = {
|
||||
0x300C0300,
|
||||
0x00000000,
|
||||
0x0FF00000,
|
||||
0x00000000,
|
||||
0x0C0300C0,
|
||||
0x00008000,
|
||||
0x18060180,
|
||||
0x18060000,
|
||||
0x18000000,
|
||||
0x00018060,
|
||||
0x00018060,
|
||||
0x00004000,
|
||||
0x200300C0,
|
||||
0x0C030000,
|
||||
0x00000030,
|
||||
0x00000000,
|
||||
0x0300C030,
|
||||
0x00002000,
|
||||
0x10018060,
|
||||
0x00000000,
|
||||
0x06000000,
|
||||
0x00010018,
|
||||
0x01806018,
|
||||
0x00001000,
|
||||
0x0000C030,
|
||||
0x00000000,
|
||||
0x03000000,
|
||||
0x0000800C,
|
||||
0x00C0300C,
|
||||
0x00000800,
|
||||
};
|
||||
|
||||
const unsigned long iocsr_scan_chain3_table[] = {
|
||||
0x0C420D80,
|
||||
0x082000FF,
|
||||
0x0A804001,
|
||||
0x07900000,
|
||||
0x08020000,
|
||||
0x00100000,
|
||||
0x0A800000,
|
||||
0x07900000,
|
||||
0x08020000,
|
||||
0x00100000,
|
||||
0xC8800000,
|
||||
0x00003001,
|
||||
0x00C00722,
|
||||
0x00000000,
|
||||
0x00000021,
|
||||
0x82000004,
|
||||
0x05400000,
|
||||
0x03C80000,
|
||||
0x04010000,
|
||||
0x00080000,
|
||||
0x05400000,
|
||||
0x03C80000,
|
||||
0x05400000,
|
||||
0x03C80000,
|
||||
0xE4400000,
|
||||
0x00001800,
|
||||
0x00600391,
|
||||
0x800E4400,
|
||||
0x00000001,
|
||||
0x40000002,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x72200000,
|
||||
0x80000C00,
|
||||
0x003001C8,
|
||||
0xC0072200,
|
||||
0x1C880000,
|
||||
0x20000300,
|
||||
0x00040000,
|
||||
0x50670000,
|
||||
0x00000010,
|
||||
0x24590000,
|
||||
0x00001000,
|
||||
0xA0000034,
|
||||
0x0D000001,
|
||||
0xC0680A28,
|
||||
0x41034030,
|
||||
0x02081A00,
|
||||
0x80A280D0,
|
||||
0x34030C06,
|
||||
0x01A02490,
|
||||
0x280D0000,
|
||||
0x30C0680A,
|
||||
0x00410340,
|
||||
0xD000001A,
|
||||
0x0680A280,
|
||||
0x10040000,
|
||||
0x00200000,
|
||||
0x10040000,
|
||||
0x00200000,
|
||||
0x15000000,
|
||||
0x0F200000,
|
||||
0x15000000,
|
||||
0x0F200000,
|
||||
0x01FE0000,
|
||||
0x00000000,
|
||||
0x01800E44,
|
||||
0x00391000,
|
||||
0x007F8006,
|
||||
0x00000000,
|
||||
0x0A800001,
|
||||
0x07900000,
|
||||
0x0A800000,
|
||||
0x07900000,
|
||||
0x0A800000,
|
||||
0x07900000,
|
||||
0x08020000,
|
||||
0x00100000,
|
||||
0xC8800000,
|
||||
0x00003001,
|
||||
0x00C00722,
|
||||
0x00000FF0,
|
||||
0x72200000,
|
||||
0x80000C00,
|
||||
0x05400000,
|
||||
0x02480000,
|
||||
0x04000000,
|
||||
0x00080000,
|
||||
0x05400000,
|
||||
0x03C80000,
|
||||
0x05400000,
|
||||
0x03C80000,
|
||||
0x6A1C0000,
|
||||
0x00001800,
|
||||
0x00600391,
|
||||
0x800E4400,
|
||||
0x1A870001,
|
||||
0x40000600,
|
||||
0x02A00040,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x72200000,
|
||||
0x80000C00,
|
||||
0x003001C8,
|
||||
0xC0072200,
|
||||
0x1C880000,
|
||||
0x20000300,
|
||||
0x00040000,
|
||||
0x50670000,
|
||||
0x00000010,
|
||||
0x24590000,
|
||||
0x00001000,
|
||||
0xA0000034,
|
||||
0x0D000001,
|
||||
0xC0680A28,
|
||||
0x49034030,
|
||||
0x12481A02,
|
||||
0x80A280D0,
|
||||
0x34030C06,
|
||||
0x01A00040,
|
||||
0x280D0002,
|
||||
0x30C0680A,
|
||||
0x02490340,
|
||||
0xD012481A,
|
||||
0x0680A280,
|
||||
0x10040000,
|
||||
0x00200000,
|
||||
0x10040000,
|
||||
0x00200000,
|
||||
0x15000000,
|
||||
0x0F200000,
|
||||
0x15000000,
|
||||
0x0F200000,
|
||||
0x01FE0000,
|
||||
0x00000000,
|
||||
0x01800E44,
|
||||
0x00391000,
|
||||
0x007F8006,
|
||||
0x00000000,
|
||||
0x99300001,
|
||||
0x34343400,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0x00040100,
|
||||
0x00000800,
|
||||
0x00000000,
|
||||
0x00001208,
|
||||
0x00482000,
|
||||
0x01000000,
|
||||
0x00000000,
|
||||
0x00410482,
|
||||
0x0006A000,
|
||||
0x0001B400,
|
||||
0x00020000,
|
||||
0x00000400,
|
||||
0x0002A000,
|
||||
0x0001E400,
|
||||
0x5506A000,
|
||||
0x00E1D400,
|
||||
0x00000000,
|
||||
0xC880090C,
|
||||
0x00003001,
|
||||
0x90400000,
|
||||
0x00000000,
|
||||
0x2020C243,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x00010040,
|
||||
0x00000200,
|
||||
0x00000000,
|
||||
0x00000482,
|
||||
0x00120800,
|
||||
0x00002000,
|
||||
0x80000000,
|
||||
0x00104120,
|
||||
0x00000200,
|
||||
0xAC0D5F80,
|
||||
0xFFFFFFFF,
|
||||
0x14F3690D,
|
||||
0x1A041414,
|
||||
0x00D00000,
|
||||
0x14864000,
|
||||
0x69A47A05,
|
||||
0xF228A3D9,
|
||||
0xF4D1451E,
|
||||
0x0352D348,
|
||||
0x821A0000,
|
||||
0x0000D000,
|
||||
0x05140680,
|
||||
0xD969A47A,
|
||||
0x1EF228A3,
|
||||
0x48F4D145,
|
||||
0x00035292,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x000A8000,
|
||||
0x00075000,
|
||||
0x541A8000,
|
||||
0x03875001,
|
||||
0x0000FF00,
|
||||
0x00000000,
|
||||
0x0080C000,
|
||||
0x41000000,
|
||||
0x00003FC2,
|
||||
0x00820000,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0x00040100,
|
||||
0x00000800,
|
||||
0x00000000,
|
||||
0x00001208,
|
||||
0xF8482000,
|
||||
0x00000007,
|
||||
0x00000000,
|
||||
0x00410482,
|
||||
0x0006A000,
|
||||
0x0001B400,
|
||||
0x00020000,
|
||||
0x00000400,
|
||||
0x00020080,
|
||||
0x00000400,
|
||||
0x5506A000,
|
||||
0x00E1D400,
|
||||
0x00000000,
|
||||
0x0000090C,
|
||||
0x00000010,
|
||||
0x90400000,
|
||||
0x00000000,
|
||||
0x2020C243,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x00015000,
|
||||
0x0000F200,
|
||||
0x00000000,
|
||||
0x00000482,
|
||||
0x00120800,
|
||||
0x00600391,
|
||||
0x80000000,
|
||||
0x00104120,
|
||||
0x00000200,
|
||||
0xAC0D5F80,
|
||||
0xFFFFFFFF,
|
||||
0x14F3690D,
|
||||
0x1A041414,
|
||||
0x00D00000,
|
||||
0x04864000,
|
||||
0x69A47A01,
|
||||
0xF228A3D9,
|
||||
0xF4D1451E,
|
||||
0x0352D348,
|
||||
0x821A028A,
|
||||
0x0000D000,
|
||||
0x00000680,
|
||||
0xD559647A,
|
||||
0x1EF228A3,
|
||||
0x48F4D145,
|
||||
0x000352D3,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x000A8000,
|
||||
0x00075000,
|
||||
0x541A8000,
|
||||
0x03875001,
|
||||
0x0000FF00,
|
||||
0x00000000,
|
||||
0x0080C000,
|
||||
0x41000000,
|
||||
0x00003FC2,
|
||||
0x00820000,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0x00040100,
|
||||
0x00000800,
|
||||
0x00000000,
|
||||
0x00001208,
|
||||
0xF8482000,
|
||||
0x00000007,
|
||||
0x00000000,
|
||||
0x00410482,
|
||||
0x0006A000,
|
||||
0x0001B400,
|
||||
0x00020000,
|
||||
0x00000400,
|
||||
0x0002A000,
|
||||
0x0001E400,
|
||||
0x5506A000,
|
||||
0x00E1D400,
|
||||
0x00000000,
|
||||
0xC880090C,
|
||||
0x00003001,
|
||||
0x90400000,
|
||||
0x00000000,
|
||||
0x2020C243,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x00010040,
|
||||
0x00000200,
|
||||
0x00000000,
|
||||
0x00000482,
|
||||
0xFE120800,
|
||||
0x00000001,
|
||||
0x80000000,
|
||||
0x00104120,
|
||||
0x00000200,
|
||||
0xAC0D5F80,
|
||||
0xFFFFFFFF,
|
||||
0x14F3690D,
|
||||
0x1A041414,
|
||||
0x00D00000,
|
||||
0x14864000,
|
||||
0x59647A05,
|
||||
0xF228A3D5,
|
||||
0xF4D1451E,
|
||||
0x03429248,
|
||||
0x821A0000,
|
||||
0x0000D000,
|
||||
0x00000680,
|
||||
0xD969A47A,
|
||||
0x1EF228A3,
|
||||
0x48F4D145,
|
||||
0x00034AD3,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x000A8000,
|
||||
0x00075000,
|
||||
0x541A8000,
|
||||
0x03875001,
|
||||
0x0000FF00,
|
||||
0x00000000,
|
||||
0x0080C000,
|
||||
0x41000000,
|
||||
0x00003FC2,
|
||||
0x00820000,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0x00040100,
|
||||
0x00000800,
|
||||
0x00000000,
|
||||
0x00001208,
|
||||
0xF8482000,
|
||||
0x00000007,
|
||||
0x00000000,
|
||||
0x00410482,
|
||||
0x0006A000,
|
||||
0x0001B400,
|
||||
0x00020000,
|
||||
0x00000400,
|
||||
0x00020080,
|
||||
0x00000400,
|
||||
0x5506A000,
|
||||
0x00E1D400,
|
||||
0x00000000,
|
||||
0x00FF090C,
|
||||
0x00000000,
|
||||
0x90400000,
|
||||
0x00000000,
|
||||
0x2020C243,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x00010040,
|
||||
0x00000200,
|
||||
0x00000000,
|
||||
0x00000482,
|
||||
0x00120800,
|
||||
0x00400000,
|
||||
0x80000000,
|
||||
0x00104120,
|
||||
0x00000200,
|
||||
0xAC0D5F80,
|
||||
0xFFFFFFFF,
|
||||
0x14F1690D,
|
||||
0x1A041414,
|
||||
0x00D00000,
|
||||
0x14864000,
|
||||
0x69A47A05,
|
||||
0xF228A3D9,
|
||||
0xF4D1451E,
|
||||
0x0352D348,
|
||||
0x821A0000,
|
||||
0x0000D000,
|
||||
0x00000680,
|
||||
0xD969A47A,
|
||||
0x1EF228A3,
|
||||
0x48F4D145,
|
||||
0x00035292,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x000A8000,
|
||||
0x00075000,
|
||||
0x541A8000,
|
||||
0x03875001,
|
||||
0x0000FF00,
|
||||
0x00000000,
|
||||
0x0080C000,
|
||||
0x41000000,
|
||||
0x00003FC2,
|
||||
0x00820000,
|
||||
0x00489800,
|
||||
0x801A1A1A,
|
||||
0x00000200,
|
||||
0x80000004,
|
||||
0x00000200,
|
||||
0x80000004,
|
||||
0x00000200,
|
||||
0x80000004,
|
||||
0x00000200,
|
||||
0xC0000004,
|
||||
0x0000003F,
|
||||
0x0000FF00,
|
||||
0x03FC0000,
|
||||
0xF0000000,
|
||||
0x0000000F,
|
||||
0x40002000,
|
||||
0x00000100,
|
||||
0x40000002,
|
||||
0x00000100,
|
||||
0x40000002,
|
||||
0x00000100,
|
||||
0x40000002,
|
||||
0x00000100,
|
||||
0xE0000002,
|
||||
0x0000001F,
|
||||
0x00007F80,
|
||||
0x01FE0000,
|
||||
0xF8000000,
|
||||
0x00000007,
|
||||
0x20001000,
|
||||
0x00000080,
|
||||
0x20000001,
|
||||
0x00000080,
|
||||
0x20000001,
|
||||
0x00000080,
|
||||
0x20000001,
|
||||
0x00000080,
|
||||
0xF0000001,
|
||||
0x0000000F,
|
||||
0x00003FC0,
|
||||
0x00FF0000,
|
||||
0xFC000000,
|
||||
0x00000003,
|
||||
0x00000800,
|
||||
0xC0000001,
|
||||
0x00041419,
|
||||
0x40000000,
|
||||
0x04000816,
|
||||
0x000D0000,
|
||||
0x00006800,
|
||||
0x00000340,
|
||||
0xD000001A,
|
||||
0x06800000,
|
||||
0x00340000,
|
||||
0x0001A000,
|
||||
0x00000D00,
|
||||
0x40000068,
|
||||
0x1A000003,
|
||||
0x00D00000,
|
||||
0x00068000,
|
||||
0x00003400,
|
||||
0x000001A0,
|
||||
0x00000401,
|
||||
0x00000008,
|
||||
0x00000401,
|
||||
0x00000008,
|
||||
0x00000401,
|
||||
0x00000008,
|
||||
0x00000401,
|
||||
0x80000008,
|
||||
0x0000007F,
|
||||
0x0001FE00,
|
||||
0x07F80000,
|
||||
0xE0000000,
|
||||
0x0000001F,
|
||||
0x00004000,
|
||||
};
|
||||
|
||||
|
||||
|
||||
#endif /* __SOCFPGA_IOCSR_CONFIG_H__ */
|
||||
222
board/corecourse/ac501soc/qts/pinmux_config.h
Normal file
222
board/corecourse/ac501soc/qts/pinmux_config.h
Normal file
@@ -0,0 +1,222 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2022 Intel Corporation <www.intel.com>
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Altera SoCFPGA PinMux configuration
|
||||
*/
|
||||
|
||||
#ifndef __SOCFPGA_PINMUX_CONFIG_H__
|
||||
#define __SOCFPGA_PINMUX_CONFIG_H__
|
||||
|
||||
const u8 sys_mgr_init_table[] = {
|
||||
0, /* EMACIO0 */
|
||||
2, /* EMACIO1 */
|
||||
2, /* EMACIO2 */
|
||||
2, /* EMACIO3 */
|
||||
2, /* EMACIO4 */
|
||||
2, /* EMACIO5 */
|
||||
2, /* EMACIO6 */
|
||||
2, /* EMACIO7 */
|
||||
2, /* EMACIO8 */
|
||||
0, /* EMACIO9 */
|
||||
2, /* EMACIO10 */
|
||||
2, /* EMACIO11 */
|
||||
2, /* EMACIO12 */
|
||||
2, /* EMACIO13 */
|
||||
0, /* EMACIO14 */
|
||||
0, /* EMACIO15 */
|
||||
0, /* EMACIO16 */
|
||||
0, /* EMACIO17 */
|
||||
0, /* EMACIO18 */
|
||||
0, /* EMACIO19 */
|
||||
3, /* FLASHIO0 */
|
||||
0, /* FLASHIO1 */
|
||||
3, /* FLASHIO2 */
|
||||
3, /* FLASHIO3 */
|
||||
0, /* FLASHIO4 */
|
||||
0, /* FLASHIO5 */
|
||||
0, /* FLASHIO6 */
|
||||
0, /* FLASHIO7 */
|
||||
0, /* FLASHIO8 */
|
||||
3, /* FLASHIO9 */
|
||||
3, /* FLASHIO10 */
|
||||
3, /* FLASHIO11 */
|
||||
0, /* GENERALIO0 */
|
||||
1, /* GENERALIO1 */
|
||||
1, /* GENERALIO2 */
|
||||
1, /* GENERALIO3 */
|
||||
1, /* GENERALIO4 */
|
||||
1, /* GENERALIO5 */
|
||||
1, /* GENERALIO6 */
|
||||
1, /* GENERALIO7 */
|
||||
1, /* GENERALIO8 */
|
||||
3, /* GENERALIO9 */
|
||||
3, /* GENERALIO10 */
|
||||
3, /* GENERALIO11 */
|
||||
3, /* GENERALIO12 */
|
||||
0, /* GENERALIO13 */
|
||||
0, /* GENERALIO14 */
|
||||
1, /* GENERALIO15 */
|
||||
1, /* GENERALIO16 */
|
||||
1, /* GENERALIO17 */
|
||||
1, /* GENERALIO18 */
|
||||
0, /* GENERALIO19 */
|
||||
0, /* GENERALIO20 */
|
||||
0, /* GENERALIO21 */
|
||||
0, /* GENERALIO22 */
|
||||
0, /* GENERALIO23 */
|
||||
0, /* GENERALIO24 */
|
||||
0, /* GENERALIO25 */
|
||||
0, /* GENERALIO26 */
|
||||
0, /* GENERALIO27 */
|
||||
0, /* GENERALIO28 */
|
||||
0, /* GENERALIO29 */
|
||||
0, /* GENERALIO30 */
|
||||
0, /* GENERALIO31 */
|
||||
2, /* MIXED1IO0 */
|
||||
2, /* MIXED1IO1 */
|
||||
2, /* MIXED1IO2 */
|
||||
2, /* MIXED1IO3 */
|
||||
2, /* MIXED1IO4 */
|
||||
2, /* MIXED1IO5 */
|
||||
2, /* MIXED1IO6 */
|
||||
2, /* MIXED1IO7 */
|
||||
2, /* MIXED1IO8 */
|
||||
2, /* MIXED1IO9 */
|
||||
2, /* MIXED1IO10 */
|
||||
2, /* MIXED1IO11 */
|
||||
2, /* MIXED1IO12 */
|
||||
2, /* MIXED1IO13 */
|
||||
0, /* MIXED1IO14 */
|
||||
0, /* MIXED1IO15 */
|
||||
0, /* MIXED1IO16 */
|
||||
0, /* MIXED1IO17 */
|
||||
0, /* MIXED1IO18 */
|
||||
0, /* MIXED1IO19 */
|
||||
0, /* MIXED1IO20 */
|
||||
0, /* MIXED1IO21 */
|
||||
0, /* MIXED2IO0 */
|
||||
0, /* MIXED2IO1 */
|
||||
0, /* MIXED2IO2 */
|
||||
0, /* MIXED2IO3 */
|
||||
0, /* MIXED2IO4 */
|
||||
0, /* MIXED2IO5 */
|
||||
0, /* MIXED2IO6 */
|
||||
0, /* MIXED2IO7 */
|
||||
0, /* GPLINMUX48 */
|
||||
0, /* GPLINMUX49 */
|
||||
0, /* GPLINMUX50 */
|
||||
0, /* GPLINMUX51 */
|
||||
0, /* GPLINMUX52 */
|
||||
0, /* GPLINMUX53 */
|
||||
0, /* GPLINMUX54 */
|
||||
0, /* GPLINMUX55 */
|
||||
0, /* GPLINMUX56 */
|
||||
0, /* GPLINMUX57 */
|
||||
0, /* GPLINMUX58 */
|
||||
0, /* GPLINMUX59 */
|
||||
0, /* GPLINMUX60 */
|
||||
0, /* GPLINMUX61 */
|
||||
0, /* GPLINMUX62 */
|
||||
0, /* GPLINMUX63 */
|
||||
0, /* GPLINMUX64 */
|
||||
0, /* GPLINMUX65 */
|
||||
0, /* GPLINMUX66 */
|
||||
0, /* GPLINMUX67 */
|
||||
0, /* GPLINMUX68 */
|
||||
0, /* GPLINMUX69 */
|
||||
0, /* GPLINMUX70 */
|
||||
1, /* GPLMUX0 */
|
||||
1, /* GPLMUX1 */
|
||||
1, /* GPLMUX2 */
|
||||
1, /* GPLMUX3 */
|
||||
1, /* GPLMUX4 */
|
||||
1, /* GPLMUX5 */
|
||||
1, /* GPLMUX6 */
|
||||
1, /* GPLMUX7 */
|
||||
1, /* GPLMUX8 */
|
||||
1, /* GPLMUX9 */
|
||||
1, /* GPLMUX10 */
|
||||
1, /* GPLMUX11 */
|
||||
1, /* GPLMUX12 */
|
||||
1, /* GPLMUX13 */
|
||||
1, /* GPLMUX14 */
|
||||
1, /* GPLMUX15 */
|
||||
1, /* GPLMUX16 */
|
||||
1, /* GPLMUX17 */
|
||||
1, /* GPLMUX18 */
|
||||
1, /* GPLMUX19 */
|
||||
1, /* GPLMUX20 */
|
||||
1, /* GPLMUX21 */
|
||||
1, /* GPLMUX22 */
|
||||
1, /* GPLMUX23 */
|
||||
1, /* GPLMUX24 */
|
||||
1, /* GPLMUX25 */
|
||||
1, /* GPLMUX26 */
|
||||
1, /* GPLMUX27 */
|
||||
1, /* GPLMUX28 */
|
||||
1, /* GPLMUX29 */
|
||||
1, /* GPLMUX30 */
|
||||
1, /* GPLMUX31 */
|
||||
1, /* GPLMUX32 */
|
||||
1, /* GPLMUX33 */
|
||||
1, /* GPLMUX34 */
|
||||
1, /* GPLMUX35 */
|
||||
1, /* GPLMUX36 */
|
||||
1, /* GPLMUX37 */
|
||||
1, /* GPLMUX38 */
|
||||
1, /* GPLMUX39 */
|
||||
1, /* GPLMUX40 */
|
||||
1, /* GPLMUX41 */
|
||||
1, /* GPLMUX42 */
|
||||
1, /* GPLMUX43 */
|
||||
1, /* GPLMUX44 */
|
||||
1, /* GPLMUX45 */
|
||||
1, /* GPLMUX46 */
|
||||
1, /* GPLMUX47 */
|
||||
1, /* GPLMUX48 */
|
||||
1, /* GPLMUX49 */
|
||||
1, /* GPLMUX50 */
|
||||
1, /* GPLMUX51 */
|
||||
1, /* GPLMUX52 */
|
||||
1, /* GPLMUX53 */
|
||||
1, /* GPLMUX54 */
|
||||
1, /* GPLMUX55 */
|
||||
1, /* GPLMUX56 */
|
||||
1, /* GPLMUX57 */
|
||||
1, /* GPLMUX58 */
|
||||
1, /* GPLMUX59 */
|
||||
1, /* GPLMUX60 */
|
||||
1, /* GPLMUX61 */
|
||||
1, /* GPLMUX62 */
|
||||
1, /* GPLMUX63 */
|
||||
1, /* GPLMUX64 */
|
||||
1, /* GPLMUX65 */
|
||||
1, /* GPLMUX66 */
|
||||
1, /* GPLMUX67 */
|
||||
1, /* GPLMUX68 */
|
||||
1, /* GPLMUX69 */
|
||||
1, /* GPLMUX70 */
|
||||
0, /* NANDUSEFPGA */
|
||||
0, /* UART0USEFPGA */
|
||||
0, /* RGMII1USEFPGA */
|
||||
0, /* SPIS0USEFPGA */
|
||||
0, /* CAN0USEFPGA */
|
||||
0, /* I2C0USEFPGA */
|
||||
0, /* SDMMCUSEFPGA */
|
||||
0, /* QSPIUSEFPGA */
|
||||
0, /* SPIS1USEFPGA */
|
||||
0, /* RGMII0USEFPGA */
|
||||
0, /* UART1USEFPGA */
|
||||
0, /* CAN1USEFPGA */
|
||||
0, /* USB1USEFPGA */
|
||||
0, /* I2C3USEFPGA */
|
||||
0, /* I2C2USEFPGA */
|
||||
0, /* I2C1USEFPGA */
|
||||
0, /* SPIM1USEFPGA */
|
||||
0, /* USB0USEFPGA */
|
||||
0 /* SPIM0USEFPGA */
|
||||
};
|
||||
#endif /* __SOCFPGA_PINMUX_CONFIG_H__ */
|
||||
86
board/corecourse/ac501soc/qts/pll_config.h
Normal file
86
board/corecourse/ac501soc/qts/pll_config.h
Normal file
@@ -0,0 +1,86 @@
|
||||
/* SPDX-License-Identifier: BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2022 Intel Corporation <www.intel.com>
|
||||
*/
|
||||
/*
|
||||
* Altera SoCFPGA Clock and PLL configuration
|
||||
*/
|
||||
|
||||
#ifndef __SOCFPGA_PLL_CONFIG_H__
|
||||
#define __SOCFPGA_PLL_CONFIG_H__
|
||||
|
||||
#define CFG_HPS_DBCTRL_STAYOSC1 1
|
||||
|
||||
#define CFG_HPS_MAINPLLGRP_VCO_DENOM 0
|
||||
#define CFG_HPS_MAINPLLGRP_VCO_NUMER 63
|
||||
#define CFG_HPS_MAINPLLGRP_MPUCLK_CNT 0
|
||||
#define CFG_HPS_MAINPLLGRP_MAINCLK_CNT 0
|
||||
#define CFG_HPS_MAINPLLGRP_DBGATCLK_CNT 0
|
||||
#define CFG_HPS_MAINPLLGRP_MAINQSPICLK_CNT 511
|
||||
#define CFG_HPS_MAINPLLGRP_MAINNANDSDMMCCLK_CNT 511
|
||||
#define CFG_HPS_MAINPLLGRP_CFGS2FUSER0CLK_CNT 15
|
||||
#define CFG_HPS_MAINPLLGRP_MAINDIV_L3MPCLK 1
|
||||
#define CFG_HPS_MAINPLLGRP_MAINDIV_L3SPCLK 1
|
||||
#define CFG_HPS_MAINPLLGRP_MAINDIV_L4MPCLK 1
|
||||
#define CFG_HPS_MAINPLLGRP_MAINDIV_L4SPCLK 1
|
||||
#define CFG_HPS_MAINPLLGRP_DBGDIV_DBGATCLK 0
|
||||
#define CFG_HPS_MAINPLLGRP_DBGDIV_DBGCLK 1
|
||||
#define CFG_HPS_MAINPLLGRP_TRACEDIV_TRACECLK 0
|
||||
#define CFG_HPS_MAINPLLGRP_L4SRC_L4MP 1
|
||||
#define CFG_HPS_MAINPLLGRP_L4SRC_L4SP 1
|
||||
|
||||
#define CFG_HPS_PERPLLGRP_VCO_DENOM 0
|
||||
#define CFG_HPS_PERPLLGRP_VCO_NUMER 39
|
||||
#define CFG_HPS_PERPLLGRP_VCO_PSRC 0
|
||||
#define CFG_HPS_PERPLLGRP_EMAC0CLK_CNT 511
|
||||
#define CFG_HPS_PERPLLGRP_EMAC1CLK_CNT 3
|
||||
#define CFG_HPS_PERPLLGRP_PERQSPICLK_CNT 511
|
||||
#define CFG_HPS_PERPLLGRP_PERNANDSDMMCCLK_CNT 4
|
||||
#define CFG_HPS_PERPLLGRP_PERBASECLK_CNT 4
|
||||
#define CFG_HPS_PERPLLGRP_S2FUSER1CLK_CNT 511
|
||||
#define CFG_HPS_PERPLLGRP_DIV_USBCLK 0
|
||||
#define CFG_HPS_PERPLLGRP_DIV_SPIMCLK 0
|
||||
#define CFG_HPS_PERPLLGRP_DIV_CAN0CLK 4
|
||||
#define CFG_HPS_PERPLLGRP_DIV_CAN1CLK 1
|
||||
#define CFG_HPS_PERPLLGRP_GPIODIV_GPIODBCLK 6249
|
||||
#define CFG_HPS_PERPLLGRP_SRC_SDMMC 2
|
||||
#define CFG_HPS_PERPLLGRP_SRC_NAND 2
|
||||
#define CFG_HPS_PERPLLGRP_SRC_QSPI 1
|
||||
|
||||
#define CFG_HPS_SDRPLLGRP_VCO_DENOM 0
|
||||
#define CFG_HPS_SDRPLLGRP_VCO_NUMER 31
|
||||
#define CFG_HPS_SDRPLLGRP_VCO_SSRC 0
|
||||
#define CFG_HPS_SDRPLLGRP_DDRDQSCLK_CNT 1
|
||||
#define CFG_HPS_SDRPLLGRP_DDRDQSCLK_PHASE 0
|
||||
#define CFG_HPS_SDRPLLGRP_DDR2XDQSCLK_CNT 0
|
||||
#define CFG_HPS_SDRPLLGRP_DDR2XDQSCLK_PHASE 0
|
||||
#define CFG_HPS_SDRPLLGRP_DDRDQCLK_CNT 1
|
||||
#define CFG_HPS_SDRPLLGRP_DDRDQCLK_PHASE 4
|
||||
#define CFG_HPS_SDRPLLGRP_S2FUSER2CLK_CNT 5
|
||||
#define CFG_HPS_SDRPLLGRP_S2FUSER2CLK_PHASE 0
|
||||
|
||||
#define CFG_HPS_CLK_OSC1_HZ 25000000
|
||||
#define CFG_HPS_CLK_OSC2_HZ 25000000
|
||||
#define CFG_HPS_CLK_F2S_SDR_REF_HZ 0
|
||||
#define CFG_HPS_CLK_F2S_PER_REF_HZ 0
|
||||
#define CFG_HPS_CLK_MAINVCO_HZ 1600000000
|
||||
#define CFG_HPS_CLK_PERVCO_HZ 1000000000
|
||||
#define CFG_HPS_CLK_SDRVCO_HZ 800000000
|
||||
#define CFG_HPS_CLK_EMAC0_HZ 1953125
|
||||
#define CFG_HPS_CLK_EMAC1_HZ 250000000
|
||||
#define CFG_HPS_CLK_USBCLK_HZ 200000000
|
||||
#define CFG_HPS_CLK_NAND_HZ 50000000
|
||||
#define CFG_HPS_CLK_SDMMC_HZ 200000000
|
||||
#define CFG_HPS_CLK_QSPI_HZ 3125000
|
||||
#define CFG_HPS_CLK_SPIM_HZ 200000000
|
||||
#define CFG_HPS_CLK_CAN0_HZ 12500000
|
||||
#define CFG_HPS_CLK_CAN1_HZ 100000000
|
||||
#define CFG_HPS_CLK_GPIODB_HZ 32000
|
||||
#define CFG_HPS_CLK_L4_MP_HZ 100000000
|
||||
#define CFG_HPS_CLK_L4_SP_HZ 100000000
|
||||
|
||||
#define CFG_HPS_ALTERAGRP_MPUCLK 1
|
||||
#define CFG_HPS_ALTERAGRP_MAINCLK 3
|
||||
#define CFG_HPS_ALTERAGRP_DBGATCLK 3
|
||||
|
||||
#endif /* __SOCFPGA_PLL_CONFIG_H__ */
|
||||
349
board/corecourse/ac501soc/qts/sdram_config.h
Normal file
349
board/corecourse/ac501soc/qts/sdram_config.h
Normal file
@@ -0,0 +1,349 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2022 Intel Corporation <www.intel.com>
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Altera SoCFPGA SDRAM configuration
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __SOCFPGA_SDRAM_CONFIG_H__
|
||||
#define __SOCFPGA_SDRAM_CONFIG_H__
|
||||
|
||||
/* SDRAM configuration */
|
||||
#define CFG_HPS_SDR_CTRLCFG_CPORTRDWR_CPORTRDWR 0x5A56A
|
||||
#define CFG_HPS_SDR_CTRLCFG_CPORTRMAP_CPORTRMAP 0xB00088
|
||||
#define CFG_HPS_SDR_CTRLCFG_CPORTWIDTH_CPORTWIDTH 0x44555
|
||||
#define CFG_HPS_SDR_CTRLCFG_CPORTWMAP_CPORTWMAP 0x2C011000
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_ADDRORDER 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_DQSTRKEN 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_ECCCORREN 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_ECCEN 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_MEMBL 8
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_MEMTYPE 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_NODMPINS 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_REORDEREN 1
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_STARVELIMIT 10
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLWIDTH_CTRLWIDTH 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMADDRW_BANKBITS 3
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMADDRW_COLBITS 10
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMADDRW_CSBITS 1
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMADDRW_ROWBITS 15
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMDEVWIDTH_DEVWIDTH 8
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMIFWIDTH_IFWIDTH 32
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMINTR_INTREN 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMODT_READ 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMODT_WRITE 1
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_AL 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_TCL 11
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_TCWL 8
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_TFAW 12
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_TRFC 104
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_TRRD 3
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TRCD 6
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TREFI 3120
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TRP 6
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TWR 6
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TWTR 4
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING3_TCCD 4
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING3_TMRD 4
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRAS 14
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRC 20
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRTP 3
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING4_PWRDOWNEXIT 3
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING4_SELFRFSHEXIT 512
|
||||
#define CFG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR_BC 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR_DIFF_CHIP 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_FIFOCFG_INCSYNC 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_FIFOCFG_SYNCMODE 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_FPGAPORTRST 0x0
|
||||
#define CFG_HPS_SDR_CTRLCFG_LOWPWREQ_SELFRFSHMASK 3
|
||||
#define CFG_HPS_SDR_CTRLCFG_LOWPWRTIMING_AUTOPDCYCLES 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_LOWPWRTIMING_CLKDISABLECYCLES 8
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPACING_0_THRESHOLD1_31_0 0x20820820
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPACING_1_THRESHOLD1_59_32 0x8208208
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPACING_1_THRESHOLD2_3_0 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPACING_2_THRESHOLD2_35_4 0x41041041
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPACING_3_THRESHOLD2_59_36 0x410410
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPRIORITY_USERPRIORITY 0x0
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_0_THRESHOLDRSTCYCLES_31_0 0x01010101
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_1_THRESHOLDRSTCYCLES_63_32 0x01010101
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_2_THRESHOLDRSTCYCLES_79_64 0x0101
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPWIEIGHT_0_STATICWEIGHT_31_0 0x21084210
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_STATICWEIGHT_49_32 0x10441
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_SUMOFWEIGHT_13_0 0x78
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPWIEIGHT_2_SUMOFWEIGHT_45_14 0x0
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPWIEIGHT_3_SUMOFWEIGHT_63_46 0x0
|
||||
#define CFG_HPS_SDR_CTRLCFG_PHYCTRL_PHYCTRL_0 0x200
|
||||
#define CFG_HPS_SDR_CTRLCFG_PORTCFG_AUTOPCHEN 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_RFIFOCMAP_RFIFOCMAP 0x760210
|
||||
#define CFG_HPS_SDR_CTRLCFG_STATICCFG_MEMBL 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_STATICCFG_USEECCASDATA 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_WFIFOCMAP_WFIFOCMAP 0x980543
|
||||
|
||||
/* Sequencer auto configuration */
|
||||
#define RW_MGR_ACTIVATE_0_AND_1 0x0D
|
||||
#define RW_MGR_ACTIVATE_0_AND_1_WAIT1 0x0E
|
||||
#define RW_MGR_ACTIVATE_0_AND_1_WAIT2 0x10
|
||||
#define RW_MGR_ACTIVATE_1 0x0F
|
||||
#define RW_MGR_CLEAR_DQS_ENABLE 0x49
|
||||
#define RW_MGR_GUARANTEED_READ 0x4C
|
||||
#define RW_MGR_GUARANTEED_READ_CONT 0x54
|
||||
#define RW_MGR_GUARANTEED_WRITE 0x18
|
||||
#define RW_MGR_GUARANTEED_WRITE_WAIT0 0x1B
|
||||
#define RW_MGR_GUARANTEED_WRITE_WAIT1 0x1F
|
||||
#define RW_MGR_GUARANTEED_WRITE_WAIT2 0x19
|
||||
#define RW_MGR_GUARANTEED_WRITE_WAIT3 0x1D
|
||||
#define RW_MGR_IDLE 0x00
|
||||
#define RW_MGR_IDLE_LOOP1 0x7B
|
||||
#define RW_MGR_IDLE_LOOP2 0x7A
|
||||
#define RW_MGR_INIT_RESET_0_CKE_0 0x6F
|
||||
#define RW_MGR_INIT_RESET_1_CKE_0 0x74
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0 0x22
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0_DATA 0x25
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0_DQS 0x24
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0_NOP 0x23
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0_WAIT 0x32
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0_WL_1 0x21
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0 0x36
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0_DATA 0x39
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0_DQS 0x38
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0_NOP 0x37
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0_WAIT 0x46
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0_WL_1 0x35
|
||||
#define RW_MGR_MRS0_DLL_RESET 0x02
|
||||
#define RW_MGR_MRS0_DLL_RESET_MIRR 0x08
|
||||
#define RW_MGR_MRS0_USER 0x07
|
||||
#define RW_MGR_MRS0_USER_MIRR 0x0C
|
||||
#define RW_MGR_MRS1 0x03
|
||||
#define RW_MGR_MRS1_MIRR 0x09
|
||||
#define RW_MGR_MRS2 0x04
|
||||
#define RW_MGR_MRS2_MIRR 0x0A
|
||||
#define RW_MGR_MRS3 0x05
|
||||
#define RW_MGR_MRS3_MIRR 0x0B
|
||||
#define RW_MGR_PRECHARGE_ALL 0x12
|
||||
#define RW_MGR_READ_B2B 0x59
|
||||
#define RW_MGR_READ_B2B_WAIT1 0x61
|
||||
#define RW_MGR_READ_B2B_WAIT2 0x6B
|
||||
#define RW_MGR_REFRESH_ALL 0x14
|
||||
#define RW_MGR_RETURN 0x01
|
||||
#define RW_MGR_SGLE_READ 0x7D
|
||||
#define RW_MGR_ZQCL 0x06
|
||||
|
||||
/* Sequencer defines configuration */
|
||||
#define AFI_CLK_FREQ 401
|
||||
#define AFI_RATE_RATIO 1
|
||||
#define CALIB_LFIFO_OFFSET 12
|
||||
#define CALIB_VFIFO_OFFSET 10
|
||||
#define ENABLE_SUPER_QUICK_CALIBRATION 0
|
||||
#define IO_DELAY_PER_DCHAIN_TAP 25
|
||||
#define IO_DELAY_PER_DQS_EN_DCHAIN_TAP 25
|
||||
#define IO_DELAY_PER_OPA_TAP 312
|
||||
#define IO_DLL_CHAIN_LENGTH 8
|
||||
#define IO_DQDQS_OUT_PHASE_MAX 0
|
||||
#define IO_DQS_EN_DELAY_MAX 31
|
||||
#define IO_DQS_EN_DELAY_OFFSET 0
|
||||
#define IO_DQS_EN_PHASE_MAX 7
|
||||
#define IO_DQS_IN_DELAY_MAX 31
|
||||
#define IO_DQS_IN_RESERVE 4
|
||||
#define IO_DQS_OUT_RESERVE 4
|
||||
#define IO_IO_IN_DELAY_MAX 31
|
||||
#define IO_IO_OUT1_DELAY_MAX 31
|
||||
#define IO_IO_OUT2_DELAY_MAX 0
|
||||
#define IO_SHIFT_DQS_EN_WHEN_SHIFT_DQS 0
|
||||
#define MAX_LATENCY_COUNT_WIDTH 5
|
||||
#define READ_VALID_FIFO_SIZE 16
|
||||
#define REG_FILE_INIT_SEQ_SIGNATURE 0x555504b5
|
||||
#define RW_MGR_MEM_ADDRESS_MIRRORING 0
|
||||
#define RW_MGR_MEM_DATA_MASK_WIDTH 4
|
||||
#define RW_MGR_MEM_DATA_WIDTH 32
|
||||
#define RW_MGR_MEM_DQ_PER_READ_DQS 8
|
||||
#define RW_MGR_MEM_DQ_PER_WRITE_DQS 8
|
||||
#define RW_MGR_MEM_IF_READ_DQS_WIDTH 4
|
||||
#define RW_MGR_MEM_IF_WRITE_DQS_WIDTH 4
|
||||
#define RW_MGR_MEM_NUMBER_OF_CS_PER_DIMM 1
|
||||
#define RW_MGR_MEM_NUMBER_OF_RANKS 1
|
||||
#define RW_MGR_MEM_VIRTUAL_GROUPS_PER_READ_DQS 1
|
||||
#define RW_MGR_MEM_VIRTUAL_GROUPS_PER_WRITE_DQS 1
|
||||
#define RW_MGR_TRUE_MEM_DATA_MASK_WIDTH 4
|
||||
#define TINIT_CNTR0_VAL 99
|
||||
#define TINIT_CNTR1_VAL 32
|
||||
#define TINIT_CNTR2_VAL 32
|
||||
#define TRESET_CNTR0_VAL 99
|
||||
#define TRESET_CNTR1_VAL 99
|
||||
#define TRESET_CNTR2_VAL 10
|
||||
|
||||
/* Sequencer ac_rom_init configuration */
|
||||
const u32 ac_rom_init[] = {
|
||||
0x20700000,
|
||||
0x20780000,
|
||||
0x10080471,
|
||||
0x10080570,
|
||||
0x10090006,
|
||||
0x100a0218,
|
||||
0x100b0000,
|
||||
0x10380400,
|
||||
0x10080469,
|
||||
0x100804e8,
|
||||
0x100a0006,
|
||||
0x10090218,
|
||||
0x100b0000,
|
||||
0x30780000,
|
||||
0x38780000,
|
||||
0x30780000,
|
||||
0x10680000,
|
||||
0x106b0000,
|
||||
0x10280400,
|
||||
0x10480000,
|
||||
0x1c980000,
|
||||
0x1c9b0000,
|
||||
0x1c980008,
|
||||
0x1c9b0008,
|
||||
0x38f80000,
|
||||
0x3cf80000,
|
||||
0x38780000,
|
||||
0x18180000,
|
||||
0x18980000,
|
||||
0x13580000,
|
||||
0x135b0000,
|
||||
0x13580008,
|
||||
0x135b0008,
|
||||
0x33780000,
|
||||
0x10580008,
|
||||
0x10780000
|
||||
};
|
||||
|
||||
/* Sequencer inst_rom_init configuration */
|
||||
const u32 inst_rom_init[] = {
|
||||
0x80000,
|
||||
0x80680,
|
||||
0x8180,
|
||||
0x8200,
|
||||
0x8280,
|
||||
0x8300,
|
||||
0x8380,
|
||||
0x8100,
|
||||
0x8480,
|
||||
0x8500,
|
||||
0x8580,
|
||||
0x8600,
|
||||
0x8400,
|
||||
0x800,
|
||||
0x8680,
|
||||
0x880,
|
||||
0xa680,
|
||||
0x80680,
|
||||
0x900,
|
||||
0x80680,
|
||||
0x980,
|
||||
0xa680,
|
||||
0x8680,
|
||||
0x80680,
|
||||
0xb68,
|
||||
0xcce8,
|
||||
0xae8,
|
||||
0x8ce8,
|
||||
0xb88,
|
||||
0xec88,
|
||||
0xa08,
|
||||
0xac88,
|
||||
0x80680,
|
||||
0xce00,
|
||||
0xcd80,
|
||||
0xe700,
|
||||
0xc00,
|
||||
0x20ce0,
|
||||
0x20ce0,
|
||||
0x20ce0,
|
||||
0x20ce0,
|
||||
0xd00,
|
||||
0x680,
|
||||
0x680,
|
||||
0x680,
|
||||
0x680,
|
||||
0x60e80,
|
||||
0x61080,
|
||||
0x61080,
|
||||
0x61080,
|
||||
0xa680,
|
||||
0x8680,
|
||||
0x80680,
|
||||
0xce00,
|
||||
0xcd80,
|
||||
0xe700,
|
||||
0xc00,
|
||||
0x30ce0,
|
||||
0x30ce0,
|
||||
0x30ce0,
|
||||
0x30ce0,
|
||||
0xd00,
|
||||
0x680,
|
||||
0x680,
|
||||
0x680,
|
||||
0x680,
|
||||
0x70e80,
|
||||
0x71080,
|
||||
0x71080,
|
||||
0x71080,
|
||||
0xa680,
|
||||
0x8680,
|
||||
0x80680,
|
||||
0x1158,
|
||||
0x6d8,
|
||||
0x80680,
|
||||
0x1168,
|
||||
0x7e8,
|
||||
0x7e8,
|
||||
0x87e8,
|
||||
0x40fe8,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0x1168,
|
||||
0x7e8,
|
||||
0x7e8,
|
||||
0xa7e8,
|
||||
0x80680,
|
||||
0x40e88,
|
||||
0x41088,
|
||||
0x41088,
|
||||
0x41088,
|
||||
0x40f68,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0xa680,
|
||||
0x40fe8,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0x41008,
|
||||
0x41088,
|
||||
0x41088,
|
||||
0x41088,
|
||||
0x1100,
|
||||
0xc680,
|
||||
0x8680,
|
||||
0xe680,
|
||||
0x80680,
|
||||
0x0,
|
||||
0x8000,
|
||||
0xa000,
|
||||
0xc000,
|
||||
0x80000,
|
||||
0x80,
|
||||
0x8080,
|
||||
0xa080,
|
||||
0xc080,
|
||||
0x80080,
|
||||
0x9180,
|
||||
0x8680,
|
||||
0xa680,
|
||||
0x80680,
|
||||
0x40f08,
|
||||
0x80680
|
||||
};
|
||||
|
||||
#endif /* __SOCFPGA_SDRAM_CONFIG_H__ */
|
||||
6
board/corecourse/ac550soc/MAINTAINERS
Normal file
6
board/corecourse/ac550soc/MAINTAINERS
Normal file
@@ -0,0 +1,6 @@
|
||||
SOCFPGA BOARD
|
||||
M: Brian Sune <briansune@gmail.com>
|
||||
S: Maintained
|
||||
F: board/corecourse/ac550soc/
|
||||
F: include/configs/socfpga_ac550soc.h
|
||||
F: configs/socfpga_ac550soc_defconfig
|
||||
664
board/corecourse/ac550soc/qts/iocsr_config.h
Normal file
664
board/corecourse/ac550soc/qts/iocsr_config.h
Normal file
@@ -0,0 +1,664 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2022 Intel Corporation <www.intel.com>
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Altera SoCFPGA IOCSR configuration
|
||||
*/
|
||||
|
||||
#ifndef __SOCFPGA_IOCSR_CONFIG_H__
|
||||
#define __SOCFPGA_IOCSR_CONFIG_H__
|
||||
|
||||
#define CFG_HPS_IOCSR_SCANCHAIN0_LENGTH 764
|
||||
#define CFG_HPS_IOCSR_SCANCHAIN1_LENGTH 1719
|
||||
#define CFG_HPS_IOCSR_SCANCHAIN2_LENGTH 955
|
||||
#define CFG_HPS_IOCSR_SCANCHAIN3_LENGTH 16766
|
||||
|
||||
const unsigned long iocsr_scan_chain0_table[] = {
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x0FF00000,
|
||||
0xC0000000,
|
||||
0x0000003F,
|
||||
0x00008000,
|
||||
0x00060180,
|
||||
0x18060000,
|
||||
0x18000000,
|
||||
0x00018060,
|
||||
0x00000000,
|
||||
0x00004000,
|
||||
0x000300C0,
|
||||
0x0C030000,
|
||||
0x0C000000,
|
||||
0x00000030,
|
||||
0x0000C030,
|
||||
0x00002000,
|
||||
0x00018060,
|
||||
0x06018000,
|
||||
0x06000000,
|
||||
0x00000018,
|
||||
0x00006018,
|
||||
0x00001000,
|
||||
};
|
||||
|
||||
const unsigned long iocsr_scan_chain1_table[] = {
|
||||
0x00100000,
|
||||
0x300C0000,
|
||||
0x300000C0,
|
||||
0x000000C0,
|
||||
0x000300C0,
|
||||
0x00008000,
|
||||
0x00080000,
|
||||
0x20000000,
|
||||
0x00000000,
|
||||
0x00000080,
|
||||
0x00020000,
|
||||
0x00004000,
|
||||
0x000300C0,
|
||||
0x10000000,
|
||||
0x0C000000,
|
||||
0x00000030,
|
||||
0x0000C030,
|
||||
0x00002000,
|
||||
0x06018060,
|
||||
0x06018000,
|
||||
0x01FE0000,
|
||||
0xF8000000,
|
||||
0x00000007,
|
||||
0x00001000,
|
||||
0x0000C030,
|
||||
0x0300C000,
|
||||
0x03000000,
|
||||
0x0000300C,
|
||||
0x0000300C,
|
||||
0x00000800,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x01800000,
|
||||
0x00000006,
|
||||
0x00002000,
|
||||
0x00000400,
|
||||
0x00000000,
|
||||
0x00C03000,
|
||||
0x00000003,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000200,
|
||||
0x00601806,
|
||||
0x00000000,
|
||||
0x80600000,
|
||||
0x80000601,
|
||||
0x00000601,
|
||||
0x00000100,
|
||||
0x00300C03,
|
||||
0xC0300C00,
|
||||
0xC0300000,
|
||||
0xC0000300,
|
||||
0x000C0300,
|
||||
0x00000080,
|
||||
};
|
||||
|
||||
const unsigned long iocsr_scan_chain2_table[] = {
|
||||
0x000C0300,
|
||||
0x300C0000,
|
||||
0x0FF00000,
|
||||
0x00000000,
|
||||
0x000300C0,
|
||||
0x00008000,
|
||||
0x00080000,
|
||||
0x20000000,
|
||||
0x18000000,
|
||||
0x00000060,
|
||||
0x00018060,
|
||||
0x00004000,
|
||||
0x200300C0,
|
||||
0x0C030000,
|
||||
0x0C000000,
|
||||
0x00000030,
|
||||
0x0000C030,
|
||||
0x00002000,
|
||||
0x00018060,
|
||||
0x06018000,
|
||||
0x06000000,
|
||||
0x00010018,
|
||||
0x00006018,
|
||||
0x00001000,
|
||||
0x0000C030,
|
||||
0x00000000,
|
||||
0x03000000,
|
||||
0x0000000C,
|
||||
0x00C0300C,
|
||||
0x00000800,
|
||||
};
|
||||
|
||||
const unsigned long iocsr_scan_chain3_table[] = {
|
||||
0x0C820D80,
|
||||
0x082000FF,
|
||||
0x0A804001,
|
||||
0x07900000,
|
||||
0x08020000,
|
||||
0x00100000,
|
||||
0x0A800000,
|
||||
0x07900000,
|
||||
0x08020000,
|
||||
0x00100000,
|
||||
0xC8800000,
|
||||
0x00003001,
|
||||
0x00C00722,
|
||||
0x00000000,
|
||||
0x00000021,
|
||||
0x82000004,
|
||||
0x05400000,
|
||||
0x03C80000,
|
||||
0x04010000,
|
||||
0x00080000,
|
||||
0x05400000,
|
||||
0x03C80000,
|
||||
0x05400000,
|
||||
0x03C80000,
|
||||
0xE4400000,
|
||||
0x00001800,
|
||||
0x00600391,
|
||||
0x800E4400,
|
||||
0x00000001,
|
||||
0x40000002,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x72200000,
|
||||
0x80000C00,
|
||||
0x003001C8,
|
||||
0xC0072200,
|
||||
0x1C880000,
|
||||
0x20000300,
|
||||
0x00040000,
|
||||
0x50670000,
|
||||
0x00000010,
|
||||
0x24590000,
|
||||
0x00001000,
|
||||
0xA0000034,
|
||||
0x0D000001,
|
||||
0x40680208,
|
||||
0x49034051,
|
||||
0x12481A02,
|
||||
0x802080D0,
|
||||
0x34051406,
|
||||
0x01A02490,
|
||||
0x280D0000,
|
||||
0x30C0680A,
|
||||
0x02490340,
|
||||
0xD000001A,
|
||||
0x0680A280,
|
||||
0x10040000,
|
||||
0x00200000,
|
||||
0x10040000,
|
||||
0x00200000,
|
||||
0x15000000,
|
||||
0x0F200000,
|
||||
0x15000000,
|
||||
0x0F200000,
|
||||
0x01FE0000,
|
||||
0x00000000,
|
||||
0x01800E44,
|
||||
0x00391000,
|
||||
0x007F8006,
|
||||
0x00000000,
|
||||
0x0A800001,
|
||||
0x07900000,
|
||||
0x0A800000,
|
||||
0x07900000,
|
||||
0x0A800000,
|
||||
0x07900000,
|
||||
0x08020000,
|
||||
0x00100000,
|
||||
0xC8800000,
|
||||
0x00003001,
|
||||
0x00C00722,
|
||||
0x00000FF0,
|
||||
0x72200000,
|
||||
0x80000C00,
|
||||
0x05400000,
|
||||
0x02480000,
|
||||
0x04000000,
|
||||
0x00080000,
|
||||
0x05400000,
|
||||
0x03C80000,
|
||||
0x05400000,
|
||||
0x03C80000,
|
||||
0x6A1C0000,
|
||||
0x00001800,
|
||||
0x00600391,
|
||||
0x800E4400,
|
||||
0x1A870001,
|
||||
0x40000600,
|
||||
0x02A00040,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x02A00000,
|
||||
0x01E40000,
|
||||
0x72200000,
|
||||
0x80000C00,
|
||||
0x003001C8,
|
||||
0xC0072200,
|
||||
0x1C880000,
|
||||
0x20000300,
|
||||
0x00040000,
|
||||
0x50670000,
|
||||
0x00000010,
|
||||
0x24590000,
|
||||
0x00001000,
|
||||
0xA0000034,
|
||||
0x0D000001,
|
||||
0x40680208,
|
||||
0x41034051,
|
||||
0x02081A00,
|
||||
0x80A280D0,
|
||||
0x34051406,
|
||||
0x01A00040,
|
||||
0x080D0002,
|
||||
0x51406802,
|
||||
0x02490340,
|
||||
0xD012481A,
|
||||
0x06802080,
|
||||
0x10040000,
|
||||
0x00200000,
|
||||
0x10040000,
|
||||
0x00200000,
|
||||
0x15000000,
|
||||
0x0F200000,
|
||||
0x15000000,
|
||||
0x0F200000,
|
||||
0x01FE0000,
|
||||
0x00000000,
|
||||
0x01800E44,
|
||||
0x00391000,
|
||||
0x007F8006,
|
||||
0x00000000,
|
||||
0x99300001,
|
||||
0x34343400,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A890,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0x00040100,
|
||||
0x00000800,
|
||||
0x00000000,
|
||||
0x00001208,
|
||||
0x00482000,
|
||||
0x01000000,
|
||||
0x00000000,
|
||||
0x00410482,
|
||||
0x0006A000,
|
||||
0x0001B400,
|
||||
0x00020000,
|
||||
0x00000400,
|
||||
0x0002A000,
|
||||
0x0001E400,
|
||||
0x5506A000,
|
||||
0x00E1D448,
|
||||
0x00000000,
|
||||
0xC880090C,
|
||||
0x00003001,
|
||||
0x90400000,
|
||||
0x00000000,
|
||||
0x2020C243,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA24,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x00010040,
|
||||
0x00000200,
|
||||
0x00000000,
|
||||
0x00000482,
|
||||
0x00120800,
|
||||
0x00002000,
|
||||
0x80000000,
|
||||
0x00104120,
|
||||
0x00000200,
|
||||
0xAC0D5F80,
|
||||
0xFFFFFFFF,
|
||||
0x14F3690D,
|
||||
0x1A041414,
|
||||
0x00D00000,
|
||||
0x14864000,
|
||||
0xD9647A05,
|
||||
0xBB2CA3D0,
|
||||
0xF711451E,
|
||||
0x035E9248,
|
||||
0x821A0000,
|
||||
0x0000D000,
|
||||
0x01040680,
|
||||
0xD069A47A,
|
||||
0x1EBB2CA3,
|
||||
0x48F71145,
|
||||
0x00035ED3,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x000A8000,
|
||||
0x00075000,
|
||||
0x541A8000,
|
||||
0x03875001,
|
||||
0x10000000,
|
||||
0x00000000,
|
||||
0x0080C000,
|
||||
0x41000000,
|
||||
0x00003FC2,
|
||||
0x00820000,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A890,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0x00040100,
|
||||
0x00000800,
|
||||
0x00000000,
|
||||
0x00001208,
|
||||
0x00482000,
|
||||
0x00008000,
|
||||
0x00000000,
|
||||
0x00410482,
|
||||
0x0006A000,
|
||||
0x0001B400,
|
||||
0x00020000,
|
||||
0x00000400,
|
||||
0x00020080,
|
||||
0x00000400,
|
||||
0x5506A000,
|
||||
0x00E1D448,
|
||||
0x00000000,
|
||||
0x0000090C,
|
||||
0x00000010,
|
||||
0x90400000,
|
||||
0x00000000,
|
||||
0x2020C243,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA24,
|
||||
0x2A835000,
|
||||
0x0070EA24,
|
||||
0x00015000,
|
||||
0x0000F200,
|
||||
0x00000000,
|
||||
0x00000482,
|
||||
0x00120800,
|
||||
0x00600391,
|
||||
0x80000000,
|
||||
0x00104120,
|
||||
0x00000200,
|
||||
0xAC0D5F80,
|
||||
0xFFFFFFFF,
|
||||
0x14F3690D,
|
||||
0x1A041414,
|
||||
0x00D00000,
|
||||
0x14864000,
|
||||
0xD9647A05,
|
||||
0xDA28A3D0,
|
||||
0xF711451E,
|
||||
0x0340D348,
|
||||
0x821A0186,
|
||||
0x0000D000,
|
||||
0x00000680,
|
||||
0xD069A47A,
|
||||
0x1EBB2CA3,
|
||||
0x48F71145,
|
||||
0x00035ED3,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x000A8000,
|
||||
0x00075000,
|
||||
0x541A8000,
|
||||
0x03875001,
|
||||
0x10000000,
|
||||
0x00000000,
|
||||
0x0080C000,
|
||||
0x41000000,
|
||||
0x04000002,
|
||||
0x00820000,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A890,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0x00040100,
|
||||
0x00000800,
|
||||
0x00000000,
|
||||
0x00001208,
|
||||
0x00482000,
|
||||
0x00008000,
|
||||
0x00000000,
|
||||
0x00410482,
|
||||
0x0006A000,
|
||||
0x0001B400,
|
||||
0x00020000,
|
||||
0x00000400,
|
||||
0x0002A000,
|
||||
0x0001E400,
|
||||
0x5506A000,
|
||||
0x00E1D448,
|
||||
0x00000000,
|
||||
0xC880090C,
|
||||
0x00003001,
|
||||
0x90400000,
|
||||
0x00000000,
|
||||
0x2020C243,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA24,
|
||||
0x2A835000,
|
||||
0x0070EA24,
|
||||
0x00010040,
|
||||
0x00000200,
|
||||
0x00000000,
|
||||
0x00000482,
|
||||
0x00120800,
|
||||
0x00002000,
|
||||
0x80000000,
|
||||
0x00104120,
|
||||
0x00000200,
|
||||
0xAC0D5F80,
|
||||
0xFFFFFFFF,
|
||||
0x14F3690D,
|
||||
0x1A041414,
|
||||
0x00D00000,
|
||||
0x04864000,
|
||||
0x69A47A01,
|
||||
0xBB2CA3DF,
|
||||
0xF51E791E,
|
||||
0x0340D348,
|
||||
0x821A0000,
|
||||
0x0000D000,
|
||||
0x00000680,
|
||||
0xD069A47A,
|
||||
0x1EBB2CA3,
|
||||
0x48F71145,
|
||||
0x00035E92,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x000A8000,
|
||||
0x00075000,
|
||||
0x541A8000,
|
||||
0x03875001,
|
||||
0x10000000,
|
||||
0x00000000,
|
||||
0x0080C000,
|
||||
0x41000000,
|
||||
0x04000002,
|
||||
0x00820000,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0xAA0D4000,
|
||||
0x01C3A890,
|
||||
0xAA0D4000,
|
||||
0x01C3A800,
|
||||
0x00040100,
|
||||
0x00000800,
|
||||
0x00000000,
|
||||
0x00001208,
|
||||
0x00482000,
|
||||
0x00008000,
|
||||
0x00000000,
|
||||
0x00410482,
|
||||
0x0006A000,
|
||||
0x0001B400,
|
||||
0x00020000,
|
||||
0x00000400,
|
||||
0x00020080,
|
||||
0x00000400,
|
||||
0x5506A000,
|
||||
0x00E1D400,
|
||||
0x00000000,
|
||||
0x0000090C,
|
||||
0x00000010,
|
||||
0x90400000,
|
||||
0x00000000,
|
||||
0x2020C243,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x2A835000,
|
||||
0x0070EA24,
|
||||
0x2A835000,
|
||||
0x0070EA00,
|
||||
0x00010040,
|
||||
0x00000200,
|
||||
0x00000000,
|
||||
0x00000482,
|
||||
0x00120800,
|
||||
0x00400000,
|
||||
0x80000000,
|
||||
0x00104120,
|
||||
0x00000200,
|
||||
0xAC0D5F80,
|
||||
0xFFFFFFFF,
|
||||
0x14F1690D,
|
||||
0x1A041414,
|
||||
0x00D00000,
|
||||
0x18864000,
|
||||
0x69A47A06,
|
||||
0xDA28A3DF,
|
||||
0xF51E791E,
|
||||
0x034E9248,
|
||||
0x821A0000,
|
||||
0x0000D000,
|
||||
0x00000680,
|
||||
0xDF69A47A,
|
||||
0x1EDA28A3,
|
||||
0x48F51E79,
|
||||
0x00034E92,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x00080200,
|
||||
0x00001000,
|
||||
0x000A8000,
|
||||
0x00075000,
|
||||
0x541A8000,
|
||||
0x03875001,
|
||||
0x10000000,
|
||||
0x00000000,
|
||||
0x0080C000,
|
||||
0x41000000,
|
||||
0x04000002,
|
||||
0x00820000,
|
||||
0x00489800,
|
||||
0x801A1A1A,
|
||||
0x00000200,
|
||||
0x80000004,
|
||||
0x00000200,
|
||||
0x80000004,
|
||||
0x00000200,
|
||||
0x80000004,
|
||||
0x00000200,
|
||||
0x00000004,
|
||||
0x00040000,
|
||||
0x10000000,
|
||||
0x00000000,
|
||||
0x00000040,
|
||||
0x00010000,
|
||||
0x40002000,
|
||||
0x00000100,
|
||||
0x40000002,
|
||||
0x00000100,
|
||||
0x40000002,
|
||||
0x00000100,
|
||||
0x40000002,
|
||||
0x00000100,
|
||||
0x00000002,
|
||||
0x00020000,
|
||||
0x08000000,
|
||||
0x00000000,
|
||||
0x00000020,
|
||||
0x00008000,
|
||||
0x20001000,
|
||||
0x00000080,
|
||||
0x20000001,
|
||||
0x00000080,
|
||||
0x20000001,
|
||||
0x00000080,
|
||||
0x20000001,
|
||||
0x00000080,
|
||||
0x00000001,
|
||||
0x00010000,
|
||||
0x04000000,
|
||||
0x00FF0000,
|
||||
0x00000000,
|
||||
0x00004000,
|
||||
0x00000800,
|
||||
0xC0000001,
|
||||
0x00041419,
|
||||
0x40000000,
|
||||
0x04000816,
|
||||
0x000D0000,
|
||||
0x00006800,
|
||||
0x00000340,
|
||||
0xD000001A,
|
||||
0x06800000,
|
||||
0x00340000,
|
||||
0x0001A000,
|
||||
0x00000D00,
|
||||
0x40000068,
|
||||
0x1A000003,
|
||||
0x00D00000,
|
||||
0x00068000,
|
||||
0x00003400,
|
||||
0x000001A0,
|
||||
0x00000401,
|
||||
0x00000008,
|
||||
0x00000401,
|
||||
0x00000008,
|
||||
0x00000401,
|
||||
0x00000008,
|
||||
0x00000401,
|
||||
0x80000008,
|
||||
0x0000007F,
|
||||
0x20000000,
|
||||
0x00000000,
|
||||
0xE0000080,
|
||||
0x0000001F,
|
||||
0x00004000,
|
||||
};
|
||||
|
||||
|
||||
|
||||
#endif /* __SOCFPGA_IOCSR_CONFIG_H__ */
|
||||
222
board/corecourse/ac550soc/qts/pinmux_config.h
Normal file
222
board/corecourse/ac550soc/qts/pinmux_config.h
Normal file
@@ -0,0 +1,222 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2022 Intel Corporation <www.intel.com>
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Altera SoCFPGA PinMux configuration
|
||||
*/
|
||||
|
||||
#ifndef __SOCFPGA_PINMUX_CONFIG_H__
|
||||
#define __SOCFPGA_PINMUX_CONFIG_H__
|
||||
|
||||
const u8 sys_mgr_init_table[] = {
|
||||
0, /* EMACIO0 */
|
||||
2, /* EMACIO1 */
|
||||
2, /* EMACIO2 */
|
||||
2, /* EMACIO3 */
|
||||
2, /* EMACIO4 */
|
||||
2, /* EMACIO5 */
|
||||
2, /* EMACIO6 */
|
||||
2, /* EMACIO7 */
|
||||
2, /* EMACIO8 */
|
||||
0, /* EMACIO9 */
|
||||
2, /* EMACIO10 */
|
||||
2, /* EMACIO11 */
|
||||
2, /* EMACIO12 */
|
||||
2, /* EMACIO13 */
|
||||
0, /* EMACIO14 */
|
||||
0, /* EMACIO15 */
|
||||
0, /* EMACIO16 */
|
||||
0, /* EMACIO17 */
|
||||
0, /* EMACIO18 */
|
||||
0, /* EMACIO19 */
|
||||
3, /* FLASHIO0 */
|
||||
0, /* FLASHIO1 */
|
||||
3, /* FLASHIO2 */
|
||||
3, /* FLASHIO3 */
|
||||
0, /* FLASHIO4 */
|
||||
0, /* FLASHIO5 */
|
||||
0, /* FLASHIO6 */
|
||||
0, /* FLASHIO7 */
|
||||
0, /* FLASHIO8 */
|
||||
3, /* FLASHIO9 */
|
||||
3, /* FLASHIO10 */
|
||||
3, /* FLASHIO11 */
|
||||
0, /* GENERALIO0 */
|
||||
1, /* GENERALIO1 */
|
||||
1, /* GENERALIO2 */
|
||||
0, /* GENERALIO3 */
|
||||
0, /* GENERALIO4 */
|
||||
0, /* GENERALIO5 */
|
||||
0, /* GENERALIO6 */
|
||||
1, /* GENERALIO7 */
|
||||
1, /* GENERALIO8 */
|
||||
0, /* GENERALIO9 */
|
||||
0, /* GENERALIO10 */
|
||||
0, /* GENERALIO11 */
|
||||
0, /* GENERALIO12 */
|
||||
0, /* GENERALIO13 */
|
||||
0, /* GENERALIO14 */
|
||||
0, /* GENERALIO15 */
|
||||
0, /* GENERALIO16 */
|
||||
0, /* GENERALIO17 */
|
||||
0, /* GENERALIO18 */
|
||||
0, /* GENERALIO19 */
|
||||
0, /* GENERALIO20 */
|
||||
0, /* GENERALIO21 */
|
||||
0, /* GENERALIO22 */
|
||||
0, /* GENERALIO23 */
|
||||
0, /* GENERALIO24 */
|
||||
0, /* GENERALIO25 */
|
||||
0, /* GENERALIO26 */
|
||||
0, /* GENERALIO27 */
|
||||
0, /* GENERALIO28 */
|
||||
0, /* GENERALIO29 */
|
||||
0, /* GENERALIO30 */
|
||||
0, /* GENERALIO31 */
|
||||
2, /* MIXED1IO0 */
|
||||
2, /* MIXED1IO1 */
|
||||
2, /* MIXED1IO2 */
|
||||
2, /* MIXED1IO3 */
|
||||
2, /* MIXED1IO4 */
|
||||
2, /* MIXED1IO5 */
|
||||
2, /* MIXED1IO6 */
|
||||
2, /* MIXED1IO7 */
|
||||
2, /* MIXED1IO8 */
|
||||
2, /* MIXED1IO9 */
|
||||
2, /* MIXED1IO10 */
|
||||
2, /* MIXED1IO11 */
|
||||
2, /* MIXED1IO12 */
|
||||
2, /* MIXED1IO13 */
|
||||
0, /* MIXED1IO14 */
|
||||
3, /* MIXED1IO15 */
|
||||
3, /* MIXED1IO16 */
|
||||
3, /* MIXED1IO17 */
|
||||
3, /* MIXED1IO18 */
|
||||
3, /* MIXED1IO19 */
|
||||
3, /* MIXED1IO20 */
|
||||
0, /* MIXED1IO21 */
|
||||
0, /* MIXED2IO0 */
|
||||
0, /* MIXED2IO1 */
|
||||
0, /* MIXED2IO2 */
|
||||
0, /* MIXED2IO3 */
|
||||
0, /* MIXED2IO4 */
|
||||
0, /* MIXED2IO5 */
|
||||
0, /* MIXED2IO6 */
|
||||
0, /* MIXED2IO7 */
|
||||
0, /* GPLINMUX48 */
|
||||
0, /* GPLINMUX49 */
|
||||
0, /* GPLINMUX50 */
|
||||
0, /* GPLINMUX51 */
|
||||
0, /* GPLINMUX52 */
|
||||
0, /* GPLINMUX53 */
|
||||
0, /* GPLINMUX54 */
|
||||
0, /* GPLINMUX55 */
|
||||
0, /* GPLINMUX56 */
|
||||
0, /* GPLINMUX57 */
|
||||
0, /* GPLINMUX58 */
|
||||
0, /* GPLINMUX59 */
|
||||
0, /* GPLINMUX60 */
|
||||
0, /* GPLINMUX61 */
|
||||
0, /* GPLINMUX62 */
|
||||
0, /* GPLINMUX63 */
|
||||
0, /* GPLINMUX64 */
|
||||
0, /* GPLINMUX65 */
|
||||
0, /* GPLINMUX66 */
|
||||
0, /* GPLINMUX67 */
|
||||
0, /* GPLINMUX68 */
|
||||
0, /* GPLINMUX69 */
|
||||
0, /* GPLINMUX70 */
|
||||
1, /* GPLMUX0 */
|
||||
1, /* GPLMUX1 */
|
||||
1, /* GPLMUX2 */
|
||||
1, /* GPLMUX3 */
|
||||
1, /* GPLMUX4 */
|
||||
1, /* GPLMUX5 */
|
||||
1, /* GPLMUX6 */
|
||||
1, /* GPLMUX7 */
|
||||
1, /* GPLMUX8 */
|
||||
1, /* GPLMUX9 */
|
||||
1, /* GPLMUX10 */
|
||||
1, /* GPLMUX11 */
|
||||
1, /* GPLMUX12 */
|
||||
1, /* GPLMUX13 */
|
||||
1, /* GPLMUX14 */
|
||||
1, /* GPLMUX15 */
|
||||
1, /* GPLMUX16 */
|
||||
1, /* GPLMUX17 */
|
||||
1, /* GPLMUX18 */
|
||||
1, /* GPLMUX19 */
|
||||
1, /* GPLMUX20 */
|
||||
1, /* GPLMUX21 */
|
||||
1, /* GPLMUX22 */
|
||||
1, /* GPLMUX23 */
|
||||
1, /* GPLMUX24 */
|
||||
1, /* GPLMUX25 */
|
||||
1, /* GPLMUX26 */
|
||||
1, /* GPLMUX27 */
|
||||
1, /* GPLMUX28 */
|
||||
1, /* GPLMUX29 */
|
||||
1, /* GPLMUX30 */
|
||||
1, /* GPLMUX31 */
|
||||
1, /* GPLMUX32 */
|
||||
1, /* GPLMUX33 */
|
||||
1, /* GPLMUX34 */
|
||||
1, /* GPLMUX35 */
|
||||
1, /* GPLMUX36 */
|
||||
1, /* GPLMUX37 */
|
||||
1, /* GPLMUX38 */
|
||||
1, /* GPLMUX39 */
|
||||
1, /* GPLMUX40 */
|
||||
1, /* GPLMUX41 */
|
||||
1, /* GPLMUX42 */
|
||||
1, /* GPLMUX43 */
|
||||
1, /* GPLMUX44 */
|
||||
1, /* GPLMUX45 */
|
||||
1, /* GPLMUX46 */
|
||||
1, /* GPLMUX47 */
|
||||
1, /* GPLMUX48 */
|
||||
1, /* GPLMUX49 */
|
||||
1, /* GPLMUX50 */
|
||||
1, /* GPLMUX51 */
|
||||
1, /* GPLMUX52 */
|
||||
1, /* GPLMUX53 */
|
||||
1, /* GPLMUX54 */
|
||||
1, /* GPLMUX55 */
|
||||
1, /* GPLMUX56 */
|
||||
1, /* GPLMUX57 */
|
||||
1, /* GPLMUX58 */
|
||||
1, /* GPLMUX59 */
|
||||
1, /* GPLMUX60 */
|
||||
1, /* GPLMUX61 */
|
||||
1, /* GPLMUX62 */
|
||||
1, /* GPLMUX63 */
|
||||
1, /* GPLMUX64 */
|
||||
1, /* GPLMUX65 */
|
||||
1, /* GPLMUX66 */
|
||||
1, /* GPLMUX67 */
|
||||
1, /* GPLMUX68 */
|
||||
1, /* GPLMUX69 */
|
||||
1, /* GPLMUX70 */
|
||||
0, /* NANDUSEFPGA */
|
||||
0, /* UART0USEFPGA */
|
||||
0, /* RGMII1USEFPGA */
|
||||
0, /* SPIS0USEFPGA */
|
||||
1, /* CAN0USEFPGA */
|
||||
0, /* I2C0USEFPGA */
|
||||
0, /* SDMMCUSEFPGA */
|
||||
0, /* QSPIUSEFPGA */
|
||||
0, /* SPIS1USEFPGA */
|
||||
0, /* RGMII0USEFPGA */
|
||||
1, /* UART1USEFPGA */
|
||||
1, /* CAN1USEFPGA */
|
||||
0, /* USB1USEFPGA */
|
||||
1, /* I2C3USEFPGA */
|
||||
1, /* I2C2USEFPGA */
|
||||
0, /* I2C1USEFPGA */
|
||||
0, /* SPIM1USEFPGA */
|
||||
0, /* USB0USEFPGA */
|
||||
0 /* SPIM0USEFPGA */
|
||||
};
|
||||
#endif /* __SOCFPGA_PINMUX_CONFIG_H__ */
|
||||
86
board/corecourse/ac550soc/qts/pll_config.h
Normal file
86
board/corecourse/ac550soc/qts/pll_config.h
Normal file
@@ -0,0 +1,86 @@
|
||||
/* SPDX-License-Identifier: BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2022 Intel Corporation <www.intel.com>
|
||||
*/
|
||||
/*
|
||||
* Altera SoCFPGA Clock and PLL configuration
|
||||
*/
|
||||
|
||||
#ifndef __SOCFPGA_PLL_CONFIG_H__
|
||||
#define __SOCFPGA_PLL_CONFIG_H__
|
||||
|
||||
#define CFG_HPS_DBCTRL_STAYOSC1 1
|
||||
|
||||
#define CFG_HPS_MAINPLLGRP_VCO_DENOM 0
|
||||
#define CFG_HPS_MAINPLLGRP_VCO_NUMER 71
|
||||
#define CFG_HPS_MAINPLLGRP_MPUCLK_CNT 0
|
||||
#define CFG_HPS_MAINPLLGRP_MAINCLK_CNT 0
|
||||
#define CFG_HPS_MAINPLLGRP_DBGATCLK_CNT 0
|
||||
#define CFG_HPS_MAINPLLGRP_MAINQSPICLK_CNT 4
|
||||
#define CFG_HPS_MAINPLLGRP_MAINNANDSDMMCCLK_CNT 511
|
||||
#define CFG_HPS_MAINPLLGRP_CFGS2FUSER0CLK_CNT 17
|
||||
#define CFG_HPS_MAINPLLGRP_MAINDIV_L3MPCLK 1
|
||||
#define CFG_HPS_MAINPLLGRP_MAINDIV_L3SPCLK 1
|
||||
#define CFG_HPS_MAINPLLGRP_MAINDIV_L4MPCLK 1
|
||||
#define CFG_HPS_MAINPLLGRP_MAINDIV_L4SPCLK 1
|
||||
#define CFG_HPS_MAINPLLGRP_DBGDIV_DBGATCLK 0
|
||||
#define CFG_HPS_MAINPLLGRP_DBGDIV_DBGCLK 1
|
||||
#define CFG_HPS_MAINPLLGRP_TRACEDIV_TRACECLK 0
|
||||
#define CFG_HPS_MAINPLLGRP_L4SRC_L4MP 1
|
||||
#define CFG_HPS_MAINPLLGRP_L4SRC_L4SP 1
|
||||
|
||||
#define CFG_HPS_PERPLLGRP_VCO_DENOM 0
|
||||
#define CFG_HPS_PERPLLGRP_VCO_NUMER 39
|
||||
#define CFG_HPS_PERPLLGRP_VCO_PSRC 0
|
||||
#define CFG_HPS_PERPLLGRP_EMAC0CLK_CNT 511
|
||||
#define CFG_HPS_PERPLLGRP_EMAC1CLK_CNT 3
|
||||
#define CFG_HPS_PERPLLGRP_PERQSPICLK_CNT 511
|
||||
#define CFG_HPS_PERPLLGRP_PERNANDSDMMCCLK_CNT 4
|
||||
#define CFG_HPS_PERPLLGRP_PERBASECLK_CNT 4
|
||||
#define CFG_HPS_PERPLLGRP_S2FUSER1CLK_CNT 511
|
||||
#define CFG_HPS_PERPLLGRP_DIV_USBCLK 0
|
||||
#define CFG_HPS_PERPLLGRP_DIV_SPIMCLK 4
|
||||
#define CFG_HPS_PERPLLGRP_DIV_CAN0CLK 1
|
||||
#define CFG_HPS_PERPLLGRP_DIV_CAN1CLK 1
|
||||
#define CFG_HPS_PERPLLGRP_GPIODIV_GPIODBCLK 6249
|
||||
#define CFG_HPS_PERPLLGRP_SRC_SDMMC 2
|
||||
#define CFG_HPS_PERPLLGRP_SRC_NAND 2
|
||||
#define CFG_HPS_PERPLLGRP_SRC_QSPI 1
|
||||
|
||||
#define CFG_HPS_SDRPLLGRP_VCO_DENOM 2
|
||||
#define CFG_HPS_SDRPLLGRP_VCO_NUMER 127
|
||||
#define CFG_HPS_SDRPLLGRP_VCO_SSRC 0
|
||||
#define CFG_HPS_SDRPLLGRP_DDRDQSCLK_CNT 1
|
||||
#define CFG_HPS_SDRPLLGRP_DDRDQSCLK_PHASE 0
|
||||
#define CFG_HPS_SDRPLLGRP_DDR2XDQSCLK_CNT 0
|
||||
#define CFG_HPS_SDRPLLGRP_DDR2XDQSCLK_PHASE 0
|
||||
#define CFG_HPS_SDRPLLGRP_DDRDQCLK_CNT 1
|
||||
#define CFG_HPS_SDRPLLGRP_DDRDQCLK_PHASE 4
|
||||
#define CFG_HPS_SDRPLLGRP_S2FUSER2CLK_CNT 5
|
||||
#define CFG_HPS_SDRPLLGRP_S2FUSER2CLK_PHASE 0
|
||||
|
||||
#define CFG_HPS_CLK_OSC1_HZ 25000000
|
||||
#define CFG_HPS_CLK_OSC2_HZ 25000000
|
||||
#define CFG_HPS_CLK_F2S_SDR_REF_HZ 0
|
||||
#define CFG_HPS_CLK_F2S_PER_REF_HZ 0
|
||||
#define CFG_HPS_CLK_MAINVCO_HZ 1800000000
|
||||
#define CFG_HPS_CLK_PERVCO_HZ 1000000000
|
||||
#define CFG_HPS_CLK_SDRVCO_HZ 1066666667
|
||||
#define CFG_HPS_CLK_EMAC0_HZ 1953125
|
||||
#define CFG_HPS_CLK_EMAC1_HZ 250000000
|
||||
#define CFG_HPS_CLK_USBCLK_HZ 200000000
|
||||
#define CFG_HPS_CLK_NAND_HZ 50000000
|
||||
#define CFG_HPS_CLK_SDMMC_HZ 200000000
|
||||
#define CFG_HPS_CLK_QSPI_HZ 360000000
|
||||
#define CFG_HPS_CLK_SPIM_HZ 12500000
|
||||
#define CFG_HPS_CLK_CAN0_HZ 100000000
|
||||
#define CFG_HPS_CLK_CAN1_HZ 100000000
|
||||
#define CFG_HPS_CLK_GPIODB_HZ 32000
|
||||
#define CFG_HPS_CLK_L4_MP_HZ 100000000
|
||||
#define CFG_HPS_CLK_L4_SP_HZ 100000000
|
||||
|
||||
#define CFG_HPS_ALTERAGRP_MPUCLK 1
|
||||
#define CFG_HPS_ALTERAGRP_MAINCLK 4
|
||||
#define CFG_HPS_ALTERAGRP_DBGATCLK 4
|
||||
|
||||
#endif /* __SOCFPGA_PLL_CONFIG_H__ */
|
||||
349
board/corecourse/ac550soc/qts/sdram_config.h
Normal file
349
board/corecourse/ac550soc/qts/sdram_config.h
Normal file
@@ -0,0 +1,349 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2022 Intel Corporation <www.intel.com>
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Altera SoCFPGA SDRAM configuration
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __SOCFPGA_SDRAM_CONFIG_H__
|
||||
#define __SOCFPGA_SDRAM_CONFIG_H__
|
||||
|
||||
/* SDRAM configuration */
|
||||
#define CFG_HPS_SDR_CTRLCFG_CPORTRDWR_CPORTRDWR 0x5A56A
|
||||
#define CFG_HPS_SDR_CTRLCFG_CPORTRMAP_CPORTRMAP 0xB00088
|
||||
#define CFG_HPS_SDR_CTRLCFG_CPORTWIDTH_CPORTWIDTH 0x44555
|
||||
#define CFG_HPS_SDR_CTRLCFG_CPORTWMAP_CPORTWMAP 0x2C011000
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_ADDRORDER 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_DQSTRKEN 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_ECCCORREN 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_ECCEN 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_MEMBL 8
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_MEMTYPE 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_NODMPINS 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_REORDEREN 1
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLCFG_STARVELIMIT 10
|
||||
#define CFG_HPS_SDR_CTRLCFG_CTRLWIDTH_CTRLWIDTH 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMADDRW_BANKBITS 3
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMADDRW_COLBITS 10
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMADDRW_CSBITS 1
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMADDRW_ROWBITS 15
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMDEVWIDTH_DEVWIDTH 8
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMIFWIDTH_IFWIDTH 32
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMINTR_INTREN 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMODT_READ 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMODT_WRITE 1
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_AL 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_TCL 7
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_TCWL 6
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_TFAW 27
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_TRFC 187
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING1_TRRD 6
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TRCD 7
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TREFI 4160
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TRP 7
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TWR 8
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TWTR 4
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING3_TCCD 4
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING3_TMRD 4
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRAS 20
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRC 27
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRTP 4
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING4_PWRDOWNEXIT 3
|
||||
#define CFG_HPS_SDR_CTRLCFG_DRAMTIMING4_SELFRFSHEXIT 512
|
||||
#define CFG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR_BC 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR_DIFF_CHIP 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_FIFOCFG_INCSYNC 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_FIFOCFG_SYNCMODE 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_FPGAPORTRST 0x3FF
|
||||
#define CFG_HPS_SDR_CTRLCFG_LOWPWREQ_SELFRFSHMASK 3
|
||||
#define CFG_HPS_SDR_CTRLCFG_LOWPWRTIMING_AUTOPDCYCLES 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_LOWPWRTIMING_CLKDISABLECYCLES 8
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPACING_0_THRESHOLD1_31_0 0x20820820
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPACING_1_THRESHOLD1_59_32 0x8208208
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPACING_1_THRESHOLD2_3_0 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPACING_2_THRESHOLD2_35_4 0x41041041
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPACING_3_THRESHOLD2_59_36 0x410410
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPPRIORITY_USERPRIORITY 0x0
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_0_THRESHOLDRSTCYCLES_31_0 0x01010101
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_1_THRESHOLDRSTCYCLES_63_32 0x01010101
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_2_THRESHOLDRSTCYCLES_79_64 0x0101
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPWIEIGHT_0_STATICWEIGHT_31_0 0x21084210
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_STATICWEIGHT_49_32 0x10441
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_SUMOFWEIGHT_13_0 0x78
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPWIEIGHT_2_SUMOFWEIGHT_45_14 0x0
|
||||
#define CFG_HPS_SDR_CTRLCFG_MPWIEIGHT_3_SUMOFWEIGHT_63_46 0x0
|
||||
#define CFG_HPS_SDR_CTRLCFG_PHYCTRL_PHYCTRL_0 0x200
|
||||
#define CFG_HPS_SDR_CTRLCFG_PORTCFG_AUTOPCHEN 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_RFIFOCMAP_RFIFOCMAP 0x760210
|
||||
#define CFG_HPS_SDR_CTRLCFG_STATICCFG_MEMBL 2
|
||||
#define CFG_HPS_SDR_CTRLCFG_STATICCFG_USEECCASDATA 0
|
||||
#define CFG_HPS_SDR_CTRLCFG_WFIFOCMAP_WFIFOCMAP 0x980543
|
||||
|
||||
/* Sequencer auto configuration */
|
||||
#define RW_MGR_ACTIVATE_0_AND_1 0x0D
|
||||
#define RW_MGR_ACTIVATE_0_AND_1_WAIT1 0x0E
|
||||
#define RW_MGR_ACTIVATE_0_AND_1_WAIT2 0x10
|
||||
#define RW_MGR_ACTIVATE_1 0x0F
|
||||
#define RW_MGR_CLEAR_DQS_ENABLE 0x49
|
||||
#define RW_MGR_GUARANTEED_READ 0x4C
|
||||
#define RW_MGR_GUARANTEED_READ_CONT 0x54
|
||||
#define RW_MGR_GUARANTEED_WRITE 0x18
|
||||
#define RW_MGR_GUARANTEED_WRITE_WAIT0 0x1B
|
||||
#define RW_MGR_GUARANTEED_WRITE_WAIT1 0x1F
|
||||
#define RW_MGR_GUARANTEED_WRITE_WAIT2 0x19
|
||||
#define RW_MGR_GUARANTEED_WRITE_WAIT3 0x1D
|
||||
#define RW_MGR_IDLE 0x00
|
||||
#define RW_MGR_IDLE_LOOP1 0x7B
|
||||
#define RW_MGR_IDLE_LOOP2 0x7A
|
||||
#define RW_MGR_INIT_RESET_0_CKE_0 0x6F
|
||||
#define RW_MGR_INIT_RESET_1_CKE_0 0x74
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0 0x22
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0_DATA 0x25
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0_DQS 0x24
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0_NOP 0x23
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0_WAIT 0x32
|
||||
#define RW_MGR_LFSR_WR_RD_BANK_0_WL_1 0x21
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0 0x36
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0_DATA 0x39
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0_DQS 0x38
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0_NOP 0x37
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0_WAIT 0x46
|
||||
#define RW_MGR_LFSR_WR_RD_DM_BANK_0_WL_1 0x35
|
||||
#define RW_MGR_MRS0_DLL_RESET 0x02
|
||||
#define RW_MGR_MRS0_DLL_RESET_MIRR 0x08
|
||||
#define RW_MGR_MRS0_USER 0x07
|
||||
#define RW_MGR_MRS0_USER_MIRR 0x0C
|
||||
#define RW_MGR_MRS1 0x03
|
||||
#define RW_MGR_MRS1_MIRR 0x09
|
||||
#define RW_MGR_MRS2 0x04
|
||||
#define RW_MGR_MRS2_MIRR 0x0A
|
||||
#define RW_MGR_MRS3 0x05
|
||||
#define RW_MGR_MRS3_MIRR 0x0B
|
||||
#define RW_MGR_PRECHARGE_ALL 0x12
|
||||
#define RW_MGR_READ_B2B 0x59
|
||||
#define RW_MGR_READ_B2B_WAIT1 0x61
|
||||
#define RW_MGR_READ_B2B_WAIT2 0x6B
|
||||
#define RW_MGR_REFRESH_ALL 0x14
|
||||
#define RW_MGR_RETURN 0x01
|
||||
#define RW_MGR_SGLE_READ 0x7D
|
||||
#define RW_MGR_ZQCL 0x06
|
||||
|
||||
/* Sequencer defines configuration */
|
||||
#define AFI_CLK_FREQ 534
|
||||
#define AFI_RATE_RATIO 1
|
||||
#define CALIB_LFIFO_OFFSET 8
|
||||
#define CALIB_VFIFO_OFFSET 6
|
||||
#define ENABLE_SUPER_QUICK_CALIBRATION 0
|
||||
#define IO_DELAY_PER_DCHAIN_TAP 25
|
||||
#define IO_DELAY_PER_DQS_EN_DCHAIN_TAP 25
|
||||
#define IO_DELAY_PER_OPA_TAP 234
|
||||
#define IO_DLL_CHAIN_LENGTH 8
|
||||
#define IO_DQDQS_OUT_PHASE_MAX 0
|
||||
#define IO_DQS_EN_DELAY_MAX 15
|
||||
#define IO_DQS_EN_DELAY_OFFSET 16
|
||||
#define IO_DQS_EN_PHASE_MAX 7
|
||||
#define IO_DQS_IN_DELAY_MAX 31
|
||||
#define IO_DQS_IN_RESERVE 4
|
||||
#define IO_DQS_OUT_RESERVE 4
|
||||
#define IO_IO_IN_DELAY_MAX 31
|
||||
#define IO_IO_OUT1_DELAY_MAX 31
|
||||
#define IO_IO_OUT2_DELAY_MAX 0
|
||||
#define IO_SHIFT_DQS_EN_WHEN_SHIFT_DQS 0
|
||||
#define MAX_LATENCY_COUNT_WIDTH 5
|
||||
#define READ_VALID_FIFO_SIZE 16
|
||||
#define REG_FILE_INIT_SEQ_SIGNATURE 0x555504b5
|
||||
#define RW_MGR_MEM_ADDRESS_MIRRORING 0
|
||||
#define RW_MGR_MEM_DATA_MASK_WIDTH 4
|
||||
#define RW_MGR_MEM_DATA_WIDTH 32
|
||||
#define RW_MGR_MEM_DQ_PER_READ_DQS 8
|
||||
#define RW_MGR_MEM_DQ_PER_WRITE_DQS 8
|
||||
#define RW_MGR_MEM_IF_READ_DQS_WIDTH 4
|
||||
#define RW_MGR_MEM_IF_WRITE_DQS_WIDTH 4
|
||||
#define RW_MGR_MEM_NUMBER_OF_CS_PER_DIMM 1
|
||||
#define RW_MGR_MEM_NUMBER_OF_RANKS 1
|
||||
#define RW_MGR_MEM_VIRTUAL_GROUPS_PER_READ_DQS 1
|
||||
#define RW_MGR_MEM_VIRTUAL_GROUPS_PER_WRITE_DQS 1
|
||||
#define RW_MGR_TRUE_MEM_DATA_MASK_WIDTH 4
|
||||
#define TINIT_CNTR0_VAL 132
|
||||
#define TINIT_CNTR1_VAL 32
|
||||
#define TINIT_CNTR2_VAL 32
|
||||
#define TRESET_CNTR0_VAL 132
|
||||
#define TRESET_CNTR1_VAL 99
|
||||
#define TRESET_CNTR2_VAL 10
|
||||
|
||||
/* Sequencer ac_rom_init configuration */
|
||||
const u32 ac_rom_init[] = {
|
||||
0x20700000,
|
||||
0x20780000,
|
||||
0x10080831,
|
||||
0x10080930,
|
||||
0x10090006,
|
||||
0x100a0208,
|
||||
0x100b0000,
|
||||
0x10380400,
|
||||
0x10080849,
|
||||
0x100808c8,
|
||||
0x100a0006,
|
||||
0x10090210,
|
||||
0x100b0000,
|
||||
0x30780000,
|
||||
0x38780000,
|
||||
0x30780000,
|
||||
0x10680000,
|
||||
0x106b0000,
|
||||
0x10280400,
|
||||
0x10480000,
|
||||
0x1c980000,
|
||||
0x1c9b0000,
|
||||
0x1c980008,
|
||||
0x1c9b0008,
|
||||
0x38f80000,
|
||||
0x3cf80000,
|
||||
0x38780000,
|
||||
0x18180000,
|
||||
0x18980000,
|
||||
0x13580000,
|
||||
0x135b0000,
|
||||
0x13580008,
|
||||
0x135b0008,
|
||||
0x33780000,
|
||||
0x10580008,
|
||||
0x10780000
|
||||
};
|
||||
|
||||
/* Sequencer inst_rom_init configuration */
|
||||
const u32 inst_rom_init[] = {
|
||||
0x80000,
|
||||
0x80680,
|
||||
0x8180,
|
||||
0x8200,
|
||||
0x8280,
|
||||
0x8300,
|
||||
0x8380,
|
||||
0x8100,
|
||||
0x8480,
|
||||
0x8500,
|
||||
0x8580,
|
||||
0x8600,
|
||||
0x8400,
|
||||
0x800,
|
||||
0x8680,
|
||||
0x880,
|
||||
0xa680,
|
||||
0x80680,
|
||||
0x900,
|
||||
0x80680,
|
||||
0x980,
|
||||
0xa680,
|
||||
0x8680,
|
||||
0x80680,
|
||||
0xb68,
|
||||
0xcce8,
|
||||
0xae8,
|
||||
0x8ce8,
|
||||
0xb88,
|
||||
0xec88,
|
||||
0xa08,
|
||||
0xac88,
|
||||
0x80680,
|
||||
0xce00,
|
||||
0xcd80,
|
||||
0xe700,
|
||||
0xc00,
|
||||
0x20ce0,
|
||||
0x20ce0,
|
||||
0x20ce0,
|
||||
0x20ce0,
|
||||
0xd00,
|
||||
0x680,
|
||||
0x680,
|
||||
0x680,
|
||||
0x680,
|
||||
0x60e80,
|
||||
0x61080,
|
||||
0x61080,
|
||||
0x61080,
|
||||
0xa680,
|
||||
0x8680,
|
||||
0x80680,
|
||||
0xce00,
|
||||
0xcd80,
|
||||
0xe700,
|
||||
0xc00,
|
||||
0x30ce0,
|
||||
0x30ce0,
|
||||
0x30ce0,
|
||||
0x30ce0,
|
||||
0xd00,
|
||||
0x680,
|
||||
0x680,
|
||||
0x680,
|
||||
0x680,
|
||||
0x70e80,
|
||||
0x71080,
|
||||
0x71080,
|
||||
0x71080,
|
||||
0xa680,
|
||||
0x8680,
|
||||
0x80680,
|
||||
0x1158,
|
||||
0x6d8,
|
||||
0x80680,
|
||||
0x1168,
|
||||
0x7e8,
|
||||
0x7e8,
|
||||
0x87e8,
|
||||
0x40fe8,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0x1168,
|
||||
0x7e8,
|
||||
0x7e8,
|
||||
0xa7e8,
|
||||
0x80680,
|
||||
0x40e88,
|
||||
0x41088,
|
||||
0x41088,
|
||||
0x41088,
|
||||
0x40f68,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0xa680,
|
||||
0x40fe8,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0x410e8,
|
||||
0x41008,
|
||||
0x41088,
|
||||
0x41088,
|
||||
0x41088,
|
||||
0x1100,
|
||||
0xc680,
|
||||
0x8680,
|
||||
0xe680,
|
||||
0x80680,
|
||||
0x0,
|
||||
0x8000,
|
||||
0xa000,
|
||||
0xc000,
|
||||
0x80000,
|
||||
0x80,
|
||||
0x8080,
|
||||
0xa080,
|
||||
0xc080,
|
||||
0x80080,
|
||||
0x9180,
|
||||
0x8680,
|
||||
0xa680,
|
||||
0x80680,
|
||||
0x40f08,
|
||||
0x80680
|
||||
};
|
||||
|
||||
#endif /* __SOCFPGA_SDRAM_CONFIG_H__ */
|
||||
@@ -24,6 +24,9 @@ DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
int dram_init(void)
|
||||
{
|
||||
if (!IS_ENABLED(CONFIG_TARGET_VERDIN_AM62_R5) || !IS_ENABLED(CONFIG_SPL_BUILD))
|
||||
return fdtdec_setup_mem_size_base();
|
||||
|
||||
gd->ram_size = get_ram_size((long *)CFG_SYS_SDRAM_BASE, CFG_SYS_SDRAM_SIZE);
|
||||
|
||||
if (gd->ram_size < SZ_512M)
|
||||
@@ -103,6 +106,13 @@ int board_late_init(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_XPL_BUILD)
|
||||
void spl_perform_board_fixups(struct spl_image_info *spl_image)
|
||||
{
|
||||
fixup_memory_node(spl_image);
|
||||
}
|
||||
#endif
|
||||
|
||||
#define CTRLMMR_USB0_PHY_CTRL 0x43004008
|
||||
#define CTRLMMR_USB1_PHY_CTRL 0x43004018
|
||||
#define CORE_VOLTAGE 0x80000000
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
#include <k3-ddrss.h>
|
||||
#include <spl.h>
|
||||
#include <linux/sizes.h>
|
||||
#include <mach/k3-ddr.h>
|
||||
|
||||
#include "../common/tdx-cfg-block.h"
|
||||
|
||||
@@ -57,6 +58,9 @@ static void read_hw_cfg(void)
|
||||
|
||||
int dram_init(void)
|
||||
{
|
||||
if (!IS_ENABLED(CONFIG_TARGET_VERDIN_AM62P_R5) || !IS_ENABLED(CONFIG_SPL_BUILD))
|
||||
return fdtdec_setup_mem_size_base();
|
||||
|
||||
gd->ram_size = get_ram_size((long *)CFG_SYS_SDRAM_BASE, CFG_SYS_SDRAM_SIZE);
|
||||
|
||||
if (gd->ram_size < SZ_1G)
|
||||
@@ -132,6 +136,13 @@ int board_late_init(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_XPL_BUILD)
|
||||
void spl_perform_board_fixups(struct spl_image_info *spl_image)
|
||||
{
|
||||
fixup_memory_node(spl_image);
|
||||
}
|
||||
#endif
|
||||
|
||||
#define MCU_CTRL_LFXOSC_32K_BYPASS_VAL BIT(4)
|
||||
|
||||
void spl_board_init(void)
|
||||
|
||||
@@ -55,7 +55,7 @@ config CONSOLE_RECORD_IN_SIZE
|
||||
config SYS_CBSIZE
|
||||
int "Console input buffer size"
|
||||
default 2048 if ARCH_TEGRA || ARCH_VERSAL || ARCH_ZYNQ || ARCH_ZYNQMP || \
|
||||
RCAR_GEN3 || TARGET_SOCFPGA_SOC64
|
||||
RCAR_GEN3 || ARCH_SOCFPGA_SOC64
|
||||
default 512 if ARCH_MX5 || ARCH_MX6 || ARCH_MX7 || FSL_LSCH2 || \
|
||||
FSL_LSCH3 || X86
|
||||
default 256 if M68K || PPC
|
||||
|
||||
@@ -548,7 +548,7 @@ config SPL_SYS_MMCSD_RAW_MODE
|
||||
depends on SPL_DM_MMC || SPL_MMC
|
||||
default y if ARCH_SUNXI || ARCH_DAVINCI || ARCH_UNIPHIER || \
|
||||
ARCH_MX6 || ARCH_MX7 || \
|
||||
ARCH_ROCKCHIP || ARCH_MVEBU || TARGET_SOCFPGA_GEN5 || \
|
||||
ARCH_ROCKCHIP || ARCH_MVEBU || ARCH_SOCFPGA_GEN5 || \
|
||||
ARCH_AT91 || ARCH_ZYNQ || ARCH_KEYSTONE || OMAP34XX || \
|
||||
OMAP54XX || AM33XX || AM43XX || \
|
||||
TARGET_SIFIVE_UNLEASHED || TARGET_SIFIVE_UNMATCHED
|
||||
@@ -593,7 +593,7 @@ config SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR
|
||||
default 0x8a if ARCH_MX6 || ARCH_MX7
|
||||
default 0x100 if ARCH_UNIPHIER
|
||||
default 0x0 if ARCH_MVEBU
|
||||
default 0x200 if TARGET_SOCFPGA_GEN5 || ARCH_AT91
|
||||
default 0x200 if ARCH_SOCFPGA_GEN5 || ARCH_AT91
|
||||
default 0x300 if ARCH_ZYNQ || ARCH_KEYSTONE || OMAP34XX || \
|
||||
OMAP54XX || AM33XX || AM43XX || ARCH_K3
|
||||
default 0x4000 if ARCH_ROCKCHIP
|
||||
|
||||
85
configs/socfpga_ac501soc_defconfig
Normal file
85
configs/socfpga_ac501soc_defconfig
Normal file
@@ -0,0 +1,85 @@
|
||||
CONFIG_ARM=y
|
||||
CONFIG_SYS_L2_PL310=y
|
||||
CONFIG_ARCH_SOCFPGA=y
|
||||
CONFIG_SYS_MALLOC_LEN=0x4000000
|
||||
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
||||
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x800000
|
||||
CONFIG_ENV_SIZE=0x2000
|
||||
CONFIG_ENV_OFFSET=0x4400
|
||||
CONFIG_DM_GPIO=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_ac501soc"
|
||||
CONFIG_DM_RESET=y
|
||||
CONFIG_SPL_STACK=0x0
|
||||
CONFIG_SPL_TEXT_BASE=0xFFFF0000
|
||||
CONFIG_TARGET_SOCFPGA_CORECOURSE_AC501SOC=y
|
||||
CONFIG_SPL_FS_FAT=y
|
||||
# CONFIG_SPL_SPI is not set
|
||||
CONFIG_TIMESTAMP=y
|
||||
CONFIG_FIT=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTCOMMAND="run fatscript;bridge enable; run distro_bootcmd"
|
||||
CONFIG_DEFAULT_FDT_FILE="socfpga_cyclone5_ac501soc.dtb"
|
||||
CONFIG_SYS_CONSOLE_IS_IN_ENV=y
|
||||
CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
|
||||
CONFIG_SYS_CONSOLE_ENV_OVERWRITE=y
|
||||
# CONFIG_DISPLAY_BOARDINFO is not set
|
||||
CONFIG_DISPLAY_BOARDINFO_LATE=y
|
||||
CONFIG_CLOCKS=y
|
||||
CONFIG_SPL_PAD_TO=0x10000
|
||||
CONFIG_SPL_NO_BSS_LIMIT=y
|
||||
# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
|
||||
CONFIG_SPL_HAVE_INIT_STACK=y
|
||||
# CONFIG_SPL_SYS_MMCSD_RAW_MODE is not set
|
||||
CONFIG_SYS_MAXARGS=32
|
||||
CONFIG_CMD_ASKENV=y
|
||||
CONFIG_CMD_GREPENV=y
|
||||
CONFIG_CMD_DFU=y
|
||||
CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_I2C=y
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_CMD_SPI=y
|
||||
CONFIG_CMD_USB=y
|
||||
CONFIG_CMD_USB_MASS_STORAGE=y
|
||||
CONFIG_CMD_CACHE=y
|
||||
CONFIG_CMD_EXT4_WRITE=y
|
||||
CONFIG_MTDIDS_DEFAULT="nor0=ff705000.spi.0"
|
||||
CONFIG_MTDPARTS_DEFAULT="mtdparts=ff705000.spi.0:1m(u-boot),256k(env1),256k(env2),14848k(boot),16m(rootfs),-@1536k(UBI)"
|
||||
CONFIG_CMD_UBI=y
|
||||
# CONFIG_ISO_PARTITION is not set
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
CONFIG_ENV_IS_IN_MMC=y
|
||||
CONFIG_ENV_RELOC_GD_ENV_ADDR=y
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_SPL_DM_SEQ_ALIAS=y
|
||||
CONFIG_DFU_MMC=y
|
||||
CONFIG_SYS_DFU_DATA_BUF_SIZE=0x1000000
|
||||
CONFIG_DWAPB_GPIO=y
|
||||
CONFIG_DM_I2C=y
|
||||
CONFIG_SYS_I2C_DW=y
|
||||
CONFIG_SYS_MMC_MAX_BLK_COUNT=256
|
||||
CONFIG_MMC_DW=y
|
||||
CONFIG_SPI_FLASH_MACRONIX=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_STMICRO=y
|
||||
# CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ90X1=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_CADENCE_QSPI=y
|
||||
CONFIG_DESIGNWARE_SPI=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DWC2=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_GADGET_MANUFACTURER="corecourse"
|
||||
CONFIG_USB_GADGET_VENDOR_NUM=0x0525
|
||||
CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
|
||||
CONFIG_USB_GADGET_DWC2_OTG=y
|
||||
CONFIG_USB_GADGET_DOWNLOAD=y
|
||||
# CONFIG_SPL_WDT is not set
|
||||
CONFIG_SYS_TIMER_COUNTS_DOWN=y
|
||||
# CONFIG_TOOLS_MKEFICAPSULE is not set
|
||||
CONFIG_CMD_C5_PL330_DMA=y
|
||||
CONFIG_NET_RANDOM_ETHADDR=y
|
||||
85
configs/socfpga_ac550soc_defconfig
Normal file
85
configs/socfpga_ac550soc_defconfig
Normal file
@@ -0,0 +1,85 @@
|
||||
CONFIG_ARM=y
|
||||
CONFIG_SYS_L2_PL310=y
|
||||
CONFIG_ARCH_SOCFPGA=y
|
||||
CONFIG_SYS_MALLOC_LEN=0x4000000
|
||||
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
||||
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x800000
|
||||
CONFIG_ENV_SIZE=0x2000
|
||||
CONFIG_ENV_OFFSET=0x4400
|
||||
CONFIG_DM_GPIO=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_ac550soc"
|
||||
CONFIG_DM_RESET=y
|
||||
CONFIG_SPL_STACK=0x0
|
||||
CONFIG_SPL_TEXT_BASE=0xFFFF0000
|
||||
CONFIG_TARGET_SOCFPGA_CORECOURSE_AC550SOC=y
|
||||
CONFIG_SPL_FS_FAT=y
|
||||
# CONFIG_SPL_SPI is not set
|
||||
CONFIG_TIMESTAMP=y
|
||||
CONFIG_FIT=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTCOMMAND="run fatscript;bridge enable; run distro_bootcmd"
|
||||
CONFIG_DEFAULT_FDT_FILE="socfpga_cyclone5_ac550soc.dtb"
|
||||
CONFIG_SYS_CONSOLE_IS_IN_ENV=y
|
||||
CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
|
||||
CONFIG_SYS_CONSOLE_ENV_OVERWRITE=y
|
||||
# CONFIG_DISPLAY_BOARDINFO is not set
|
||||
CONFIG_DISPLAY_BOARDINFO_LATE=y
|
||||
CONFIG_CLOCKS=y
|
||||
CONFIG_SPL_PAD_TO=0x10000
|
||||
CONFIG_SPL_NO_BSS_LIMIT=y
|
||||
# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
|
||||
CONFIG_SPL_HAVE_INIT_STACK=y
|
||||
# CONFIG_SPL_SYS_MMCSD_RAW_MODE is not set
|
||||
CONFIG_SYS_MAXARGS=32
|
||||
CONFIG_CMD_ASKENV=y
|
||||
CONFIG_CMD_GREPENV=y
|
||||
CONFIG_CMD_DFU=y
|
||||
CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_I2C=y
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_CMD_SPI=y
|
||||
CONFIG_CMD_USB=y
|
||||
CONFIG_CMD_USB_MASS_STORAGE=y
|
||||
CONFIG_CMD_CACHE=y
|
||||
CONFIG_CMD_EXT4_WRITE=y
|
||||
CONFIG_MTDIDS_DEFAULT="nor0=ff705000.spi.0"
|
||||
CONFIG_MTDPARTS_DEFAULT="mtdparts=ff705000.spi.0:1m(u-boot),256k(env1),256k(env2),14848k(boot),16m(rootfs),-@1536k(UBI)"
|
||||
CONFIG_CMD_UBI=y
|
||||
# CONFIG_ISO_PARTITION is not set
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
CONFIG_ENV_IS_IN_MMC=y
|
||||
CONFIG_ENV_RELOC_GD_ENV_ADDR=y
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_SPL_DM_SEQ_ALIAS=y
|
||||
CONFIG_DFU_MMC=y
|
||||
CONFIG_SYS_DFU_DATA_BUF_SIZE=0x1000000
|
||||
CONFIG_DWAPB_GPIO=y
|
||||
CONFIG_DM_I2C=y
|
||||
CONFIG_SYS_I2C_DW=y
|
||||
CONFIG_SYS_MMC_MAX_BLK_COUNT=256
|
||||
CONFIG_MMC_DW=y
|
||||
CONFIG_SPI_FLASH_MACRONIX=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_STMICRO=y
|
||||
# CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ90X1=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_CADENCE_QSPI=y
|
||||
CONFIG_DESIGNWARE_SPI=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DWC2=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_GADGET_MANUFACTURER="corecourse"
|
||||
CONFIG_USB_GADGET_VENDOR_NUM=0x0525
|
||||
CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
|
||||
CONFIG_USB_GADGET_DWC2_OTG=y
|
||||
CONFIG_USB_GADGET_DOWNLOAD=y
|
||||
# CONFIG_SPL_WDT is not set
|
||||
CONFIG_SYS_TIMER_COUNTS_DOWN=y
|
||||
# CONFIG_TOOLS_MKEFICAPSULE is not set
|
||||
CONFIG_CMD_C5_PL330_DMA=y
|
||||
CONFIG_NET_RANDOM_ETHADDR=y
|
||||
@@ -87,6 +87,8 @@ CONFIG_DW_I3C_MASTER=y
|
||||
CONFIG_MISC=y
|
||||
CONFIG_MMC_IO_VOLTAGE=y
|
||||
CONFIG_SPL_MMC_IO_VOLTAGE=y
|
||||
CONFIG_MMC_UHS_SUPPORT=y
|
||||
CONFIG_SPL_MMC_UHS_SUPPORT=y
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_ADMA=y
|
||||
CONFIG_SPL_MMC_SDHCI_ADMA=y
|
||||
|
||||
@@ -4,3 +4,5 @@ CONFIG_DEFAULT_DEVICE_TREE="socfpga_agilex5_socdk_emmc"
|
||||
# CONFIG_SPL_DM_REGULATOR_GPIO is not set
|
||||
# CONFIG_DM_REGULATOR_GPIO is not set
|
||||
# CONFIG_SPL_DWAPB_GPIO is not set
|
||||
CONFIG_MMC_HS400_SUPPORT=y
|
||||
CONFIG_SPL_MMC_HS400_SUPPORT=y
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
#include <configs/socfpga_agilex_defconfig>
|
||||
|
||||
CONFIG_NR_DRAM_BANKS=1
|
||||
CONFIG_SPL_LDSCRIPT="arch/arm/mach-socfpga/u-boot-spl-soc64.lds"
|
||||
# CONFIG_TARGET_SOCFPGA_AGILEX_SOCDK is not set
|
||||
# CONFIG_IDENT_STRING is not set
|
||||
CONFIG_SPL_BSS_START_ADDR=0x1ff00000
|
||||
|
||||
@@ -58,7 +58,7 @@ CONFIG_CMD_CACHE=y
|
||||
CONFIG_CMD_SMC=y
|
||||
CONFIG_CMD_UBI=y
|
||||
CONFIG_OF_UPSTREAM=y
|
||||
CONFIG_OF_LIST=""
|
||||
CONFIG_OF_LIST="intel/socfpga_agilex_socdk intel/socfpga_agilex_socdk_nand"
|
||||
CONFIG_ENV_IS_IN_FAT=y
|
||||
CONFIG_ENV_IS_IN_UBI=y
|
||||
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
|
||||
|
||||
@@ -4,7 +4,6 @@ CONFIG_ARCH_SOCFPGA=y
|
||||
CONFIG_TEXT_BASE=0x200000
|
||||
CONFIG_SYS_MALLOC_LEN=0x500000
|
||||
CONFIG_NR_DRAM_BANKS=2
|
||||
CONFIG_SPL_LDSCRIPT="arch/arm/mach-socfpga/u-boot-spl-soc64.lds"
|
||||
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
||||
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x300000
|
||||
CONFIG_SF_DEFAULT_MODE=0x2003
|
||||
|
||||
@@ -4,7 +4,6 @@ CONFIG_ARCH_SOCFPGA=y
|
||||
CONFIG_TEXT_BASE=0x200000
|
||||
CONFIG_SYS_MALLOC_LEN=0x500000
|
||||
CONFIG_NR_DRAM_BANKS=2
|
||||
CONFIG_SPL_LDSCRIPT="arch/arm/mach-socfpga/u-boot-spl-soc64.lds"
|
||||
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
||||
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x300000
|
||||
CONFIG_SF_DEFAULT_MODE=0x2003
|
||||
|
||||
@@ -4,7 +4,6 @@ CONFIG_ARCH_SOCFPGA=y
|
||||
CONFIG_TEXT_BASE=0x200000
|
||||
CONFIG_SYS_MALLOC_LEN=0x500000
|
||||
CONFIG_NR_DRAM_BANKS=2
|
||||
CONFIG_SPL_LDSCRIPT="arch/arm/mach-socfpga/u-boot-spl-soc64.lds"
|
||||
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
||||
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x300000
|
||||
CONFIG_SF_DEFAULT_MODE=0x2003
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
# Copyright (C) 2018-2021 Marek Vasut <marex@denx.de>
|
||||
#
|
||||
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_AGILEX) += clk-agilex.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_AGILEX7M) += clk-agilex.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_ARRIA10) += clk-arria10.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_N5X) += clk-n5x.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_N5X) += clk-mem-n5x.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_AGILEX5) += clk-agilex5.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_AGILEX) += clk-agilex.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_AGILEX7M) += clk-agilex.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_ARRIA10) += clk-arria10.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_N5X) += clk-n5x.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_N5X) += clk-mem-n5x.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_AGILEX5) += clk-agilex5.o
|
||||
|
||||
@@ -657,6 +657,7 @@ static int bitmask_from_clk_id(struct clk *clk)
|
||||
plat->bitmask = CLKMGR_MAINPLLGRP_EN_L4MAINCLK_MASK;
|
||||
break;
|
||||
case AGILEX_L4_MP_CLK:
|
||||
case AGILEX_NAND_X_CLK:
|
||||
plat->pllgrp = CLKMGR_MAINPLL_EN;
|
||||
plat->bitmask = CLKMGR_MAINPLLGRP_EN_L4MPCLK_MASK;
|
||||
break;
|
||||
@@ -728,6 +729,8 @@ static int bitmask_from_clk_id(struct clk *clk)
|
||||
plat->pllgrp = CLKMGR_PERPLL_EN;
|
||||
plat->bitmask = CLKMGR_PERPLLGRP_EN_NANDCLK_MASK;
|
||||
break;
|
||||
case AGILEX_L4_SYS_FREE_CLK:
|
||||
return -EOPNOTSUPP;
|
||||
default:
|
||||
return -ENXIO;
|
||||
}
|
||||
@@ -742,6 +745,9 @@ static int socfpga_clk_enable(struct clk *clk)
|
||||
int ret;
|
||||
|
||||
ret = bitmask_from_clk_id(clk);
|
||||
if (ret == -EOPNOTSUPP)
|
||||
return 0;
|
||||
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
@@ -757,6 +763,9 @@ static int socfpga_clk_disable(struct clk *clk)
|
||||
int ret;
|
||||
|
||||
ret = bitmask_from_clk_id(clk);
|
||||
if (ret == -EOPNOTSUPP)
|
||||
return 0;
|
||||
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
config SPL_ALTERA_SDRAM
|
||||
bool "SoCFPGA DDR SDRAM driver in SPL"
|
||||
depends on SPL
|
||||
depends on TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10 || TARGET_SOCFPGA_SOC64
|
||||
select RAM if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_SOC64
|
||||
select SPL_RAM if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_SOC64
|
||||
depends on ARCH_SOCFPGA_GEN5 || ARCH_SOCFPGA_ARRIA10 || ARCH_SOCFPGA_SOC64
|
||||
select RAM if ARCH_SOCFPGA_GEN5 || ARCH_SOCFPGA_SOC64
|
||||
select SPL_RAM if ARCH_SOCFPGA_GEN5 || ARCH_SOCFPGA_SOC64
|
||||
help
|
||||
Enable DDR SDRAM controller for the SoCFPGA devices.
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
# Copyright (C) 2014-2025 Altera Corporation <www.altera.com>
|
||||
|
||||
ifdef CONFIG_$(PHASE_)ALTERA_SDRAM
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_GEN5) += sdram_gen5.o sequencer.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_ARRIA10) += sdram_arria10.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_STRATIX10) += sdram_soc64.o sdram_s10.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_AGILEX) += sdram_soc64.o sdram_agilex.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_N5X) += sdram_soc64.o sdram_n5x.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_AGILEX5) += sdram_soc64.o sdram_agilex5.o iossm_mailbox.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_AGILEX7M) += sdram_soc64.o sdram_agilex7m.o iossm_mailbox.o uibssm_mailbox.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_GEN5) += sdram_gen5.o sequencer.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_ARRIA10) += sdram_arria10.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_STRATIX10) += sdram_soc64.o sdram_s10.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_AGILEX) += sdram_soc64.o sdram_agilex.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_N5X) += sdram_soc64.o sdram_n5x.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_AGILEX5) += sdram_soc64.o sdram_agilex5.o iossm_mailbox.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_AGILEX7M) += sdram_soc64.o sdram_agilex7m.o iossm_mailbox.o uibssm_mailbox.o
|
||||
endif
|
||||
|
||||
@@ -86,7 +86,7 @@
|
||||
#define INTF_DDR_TYPE_MASK GENMASK(2, 0)
|
||||
|
||||
/* offset info of MEM_TOTAL_CAPACITY_INTF */
|
||||
#define INTF_CAPACITY_GBITS_MASK GENMASK(7, 0)
|
||||
#define INTF_CAPACITY_GBITS_MASK GENMASK(31, 0)
|
||||
|
||||
/* offset info of ECC_ENABLE_INTF */
|
||||
#define INTF_ECC_ENABLE_TYPE_MASK GENMASK(1, 0)
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
#include <fdtdec.h>
|
||||
#include <init.h>
|
||||
#include <log.h>
|
||||
#include <hang.h>
|
||||
#include <malloc.h>
|
||||
#include <wait_bit.h>
|
||||
#include <watchdog.h>
|
||||
@@ -667,6 +668,22 @@ static int of_sdram_firewall_setup(const void *blob)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void sdram_size_check(void)
|
||||
{
|
||||
phys_size_t ram_check = 0;
|
||||
|
||||
debug("DDR: Running SDRAM size sanity check\n");
|
||||
|
||||
ram_check = get_ram_size((long *)gd->bd->bi_dram[0].start,
|
||||
gd->bd->bi_dram[0].size);
|
||||
if (ram_check != gd->bd->bi_dram[0].size) {
|
||||
puts("DDR: SDRAM size check failed!\n");
|
||||
hang();
|
||||
}
|
||||
|
||||
debug("DDR: SDRAM size check passed!\n");
|
||||
}
|
||||
|
||||
int ddr_calibration_sequence(void)
|
||||
{
|
||||
schedule();
|
||||
@@ -702,11 +719,26 @@ int ddr_calibration_sequence(void)
|
||||
/* setup the dram info within bd */
|
||||
dram_init_banksize();
|
||||
|
||||
if (gd->ram_size != gd->bd->bi_dram[0].size) {
|
||||
printf("DDR: Warning: DRAM size from device tree (%ld MiB)\n",
|
||||
gd->bd->bi_dram[0].size >> 20);
|
||||
printf(" mismatch with hardware (%ld MiB).\n",
|
||||
gd->ram_size >> 20);
|
||||
}
|
||||
|
||||
if (gd->bd->bi_dram[0].size > gd->ram_size) {
|
||||
printf("DDR: Error: DRAM size from device tree is greater\n");
|
||||
printf(" than hardware size.\n");
|
||||
hang();
|
||||
}
|
||||
|
||||
if (of_sdram_firewall_setup(gd->fdt_blob))
|
||||
puts("FW: Error Configuring Firewall\n");
|
||||
|
||||
if (sdram_is_ecc_enabled())
|
||||
sdram_init_ecc_bits(gd->ram_size);
|
||||
|
||||
sdram_size_check();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#define SINGLE_RANK_CLAMSHELL 0xc3c3
|
||||
#define DUAL_RANK_CLAMSHELL 0xa5a5
|
||||
|
||||
#if !IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5) && !IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M)
|
||||
#if !IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5) && !IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M)
|
||||
u32 hmc_readl(struct altera_sdram_plat *plat, u32 reg)
|
||||
{
|
||||
return readl(plat->iomhc + reg);
|
||||
@@ -106,7 +106,7 @@ int emif_reset(struct altera_sdram_plat *plat)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if !(IS_ENABLED(CONFIG_TARGET_SOCFPGA_N5X) || IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5))
|
||||
#if !(IS_ENABLED(CONFIG_ARCH_SOCFPGA_N5X) || IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5))
|
||||
int poll_hmc_clock_status(void)
|
||||
{
|
||||
return wait_for_bit_le32((const void *)(socfpga_get_sysmgr_addr() +
|
||||
@@ -347,7 +347,7 @@ static void sdram_set_firewall_non_f2sdram(struct bd_info *bd)
|
||||
}
|
||||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
static void sdram_set_firewall_f2sdram(struct bd_info *bd)
|
||||
{
|
||||
u32 i, lower, upper;
|
||||
@@ -397,22 +397,22 @@ void sdram_set_firewall(struct bd_info *bd)
|
||||
{
|
||||
sdram_set_firewall_non_f2sdram(bd);
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
sdram_set_firewall_f2sdram(bd);
|
||||
#endif
|
||||
}
|
||||
|
||||
static int altera_sdram_of_to_plat(struct udevice *dev)
|
||||
{
|
||||
#if !IS_ENABLED(CONFIG_TARGET_SOCFPGA_N5X)
|
||||
#if !IS_ENABLED(CONFIG_ARCH_SOCFPGA_N5X)
|
||||
struct altera_sdram_plat *plat = dev_get_plat(dev);
|
||||
fdt_addr_t addr;
|
||||
#endif
|
||||
|
||||
/* These regs info are part of DDR handoff in bitstream */
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_N5X)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_N5X)
|
||||
return 0;
|
||||
#elif IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5) || IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M)
|
||||
#elif IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5) || IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M)
|
||||
addr = dev_read_addr_index(dev, 0);
|
||||
if (addr == FDT_ADDR_T_NONE)
|
||||
return -EINVAL;
|
||||
|
||||
@@ -15,13 +15,13 @@ struct altera_sdram_priv {
|
||||
struct reset_ctl_bulk resets;
|
||||
};
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
struct altera_sdram_plat {
|
||||
fdt_addr_t mpfe_base_addr;
|
||||
bool dualport;
|
||||
bool dualemif;
|
||||
};
|
||||
#elif IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M)
|
||||
#elif IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M)
|
||||
enum memory_type {
|
||||
DDR_MEMORY = 0,
|
||||
HBM_MEMORY
|
||||
|
||||
@@ -46,7 +46,7 @@ config FPGA_CYCLON2
|
||||
|
||||
config FPGA_INTEL_SDM_MAILBOX
|
||||
bool "Enable Intel FPGA Full Reconfiguration SDM Mailbox driver"
|
||||
depends on TARGET_SOCFPGA_SOC64
|
||||
depends on ARCH_SOCFPGA_SOC64
|
||||
select FPGA_ALTERA
|
||||
help
|
||||
Say Y here to enable the Intel FPGA Full Reconfig SDM Mailbox driver
|
||||
|
||||
@@ -21,6 +21,6 @@ obj-$(CONFIG_FPGA_INTEL_SDM_MAILBOX) += intel_sdm_mb.o
|
||||
obj-$(CONFIG_FPGA_STRATIX_II) += stratixII.o
|
||||
obj-$(CONFIG_FPGA_STRATIX_V) += stratixv.o
|
||||
obj-$(CONFIG_FPGA_SOCFPGA) += socfpga.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_GEN5) += socfpga_gen5.o
|
||||
obj-$(CONFIG_TARGET_SOCFPGA_ARRIA10) += socfpga_arria10.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_GEN5) += socfpga_gen5.o
|
||||
obj-$(CONFIG_ARCH_SOCFPGA_ARRIA10) += socfpga_arria10.o
|
||||
endif
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
/*
|
||||
* Altera FPGA support
|
||||
*/
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX) || \
|
||||
IS_ENABLED(CONFIG_TARGET_SOCFPGA_STRATIX10)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX) || \
|
||||
IS_ENABLED(CONFIG_ARCH_SOCFPGA_STRATIX10)
|
||||
#include <asm/arch/misc.h>
|
||||
#endif
|
||||
#include <errno.h>
|
||||
@@ -48,8 +48,8 @@ static const struct altera_fpga {
|
||||
#endif
|
||||
};
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX) || \
|
||||
IS_ENABLED(CONFIG_TARGET_SOCFPGA_STRATIX10)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX) || \
|
||||
IS_ENABLED(CONFIG_ARCH_SOCFPGA_STRATIX10)
|
||||
int fpga_is_partial_data(int devnum, size_t img_len)
|
||||
{
|
||||
/*
|
||||
|
||||
@@ -58,8 +58,8 @@ static int socfpga_dwmci_clksel(struct dwmci_host *host)
|
||||
u32 sdmmc_mask = ((priv->smplsel & 0x7) << SYSMGR_SDMMC_SMPLSEL_SHIFT) |
|
||||
((priv->drvsel & 0x7) << SYSMGR_SDMMC_DRVSEL_SHIFT);
|
||||
|
||||
if (!IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX) &&
|
||||
!IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M)) {
|
||||
if (!IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX) &&
|
||||
!IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M)) {
|
||||
/* Disable SDMMC clock. */
|
||||
clrbits_le32(socfpga_get_clkmgr_addr() + CLKMGR_PERPLL_EN,
|
||||
CLKMGR_PERPLLGRP_EN_SDMMCCLK_MASK);
|
||||
@@ -95,8 +95,8 @@ static int socfpga_dwmci_clksel(struct dwmci_host *host)
|
||||
readl(socfpga_get_sysmgr_addr() + SYSMGR_SDMMC));
|
||||
#endif
|
||||
|
||||
if (!IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX) &&
|
||||
!IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX7M)) {
|
||||
if (!IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX) &&
|
||||
!IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX7M)) {
|
||||
/* Enable SDMMC clock */
|
||||
setbits_le32(socfpga_get_clkmgr_addr() + CLKMGR_PERPLL_EN,
|
||||
CLKMGR_PERPLLGRP_EN_SDMMCCLK_MASK);
|
||||
|
||||
@@ -217,7 +217,7 @@ config NAND_DENALI
|
||||
bool
|
||||
select DEVRES
|
||||
select SYS_NAND_SELF_INIT
|
||||
select SYS_NAND_ONFI_DETECTION if TARGET_SOCFPGA_SOC64
|
||||
select SYS_NAND_ONFI_DETECTION if ARCH_SOCFPGA_SOC64
|
||||
imply CMD_NAND
|
||||
|
||||
config NAND_DENALI_DT
|
||||
|
||||
@@ -194,7 +194,7 @@ config DWC_ETH_XGMAC_SOCFPGA
|
||||
select SYSCON
|
||||
select DWC_ETH_XGMAC
|
||||
depends on ARCH_SOCFPGA
|
||||
default y if TARGET_SOCFPGA_AGILEX5
|
||||
default y if ARCH_SOCFPGA_AGILEX5
|
||||
help
|
||||
The Synopsys Designware Ethernet XGMAC IP block with specific
|
||||
configuration used in Intel SoC FPGA chip.
|
||||
|
||||
@@ -20,7 +20,7 @@ config APPLE_PMGR_POWER_DOMAIN
|
||||
|
||||
config AGILEX5_PMGR_POWER_DOMAIN
|
||||
bool "Enable the Agilex5 PMGR power domain driver"
|
||||
depends on SPL_POWER_DOMAIN && TARGET_SOCFPGA_SOC64
|
||||
depends on SPL_POWER_DOMAIN && ARCH_SOCFPGA_SOC64
|
||||
help
|
||||
Enable support for power gating peripherals' SRAM specified in
|
||||
the handoff data values obtained from the bitstream to reduce
|
||||
|
||||
@@ -115,7 +115,7 @@ static int socfpga_reset_remove(struct udevice *dev)
|
||||
if (socfpga_reset_keep_enabled()) {
|
||||
puts("Deasserting all peripheral resets\n");
|
||||
writel(0, data->modrst_base + 4);
|
||||
if (IS_ENABLED(CONFIG_TARGET_SOCFPGA_ARRIA10))
|
||||
if (IS_ENABLED(CONFIG_ARCH_SOCFPGA_ARRIA10))
|
||||
writel(0, data->modrst_base + 8);
|
||||
}
|
||||
|
||||
|
||||
@@ -196,14 +196,14 @@ config SYSRESET_SBI
|
||||
|
||||
config SYSRESET_SOCFPGA
|
||||
bool "Enable support for Intel SOCFPGA family"
|
||||
depends on ARCH_SOCFPGA && (TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10)
|
||||
depends on ARCH_SOCFPGA && (ARCH_SOCFPGA_GEN5 || ARCH_SOCFPGA_ARRIA10)
|
||||
help
|
||||
This enables the system reset driver support for Intel SOCFPGA SoCs
|
||||
(Cyclone 5, Arria 5 and Arria 10).
|
||||
|
||||
config SYSRESET_SOCFPGA_SOC64
|
||||
bool "Enable support for Intel SOCFPGA SoC64 family (Stratix10/Agilex)"
|
||||
depends on ARCH_SOCFPGA && TARGET_SOCFPGA_SOC64
|
||||
depends on ARCH_SOCFPGA && ARCH_SOCFPGA_SOC64
|
||||
help
|
||||
This enables the system reset driver support for Intel SOCFPGA
|
||||
SoC64 SoCs.
|
||||
|
||||
2
env/Kconfig
vendored
2
env/Kconfig
vendored
@@ -975,7 +975,7 @@ config USE_BOOTFILE
|
||||
|
||||
config BOOTFILE
|
||||
string "'bootfile' environment variable value"
|
||||
default kernel.itb if SPL_ATF && TARGET_SOCFPGA_SOC64
|
||||
default kernel.itb if SPL_ATF && ARCH_SOCFPGA_SOC64
|
||||
depends on USE_BOOTFILE
|
||||
help
|
||||
The value to set the "bootfile" variable to.
|
||||
|
||||
13
include/configs/socfpga_ac501soc.h
Normal file
13
include/configs/socfpga_ac501soc.h
Normal file
@@ -0,0 +1,13 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* Copyright (C) 2025 Brian Sune <briansune@gmail.com>
|
||||
*/
|
||||
#ifndef __CONFIG_CORESOURCE_AC501SOC_H__
|
||||
#define __CONFIG_CORESOURCE_AC501SOC_H__
|
||||
|
||||
#include <asm/arch/base_addr_ac5.h>
|
||||
|
||||
/* The rest of the configuration is shared */
|
||||
#include <configs/socfpga_common.h>
|
||||
|
||||
#endif /* __CONFIG_CORESOURCE_AC501SOC_H__ */
|
||||
13
include/configs/socfpga_ac550soc.h
Normal file
13
include/configs/socfpga_ac550soc.h
Normal file
@@ -0,0 +1,13 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* Copyright (C) 2025 Brian Sune <briansune@gmail.com>
|
||||
*/
|
||||
#ifndef __CONFIG_CORESOURCE_AC550SOC_H__
|
||||
#define __CONFIG_CORESOURCE_AC550SOC_H__
|
||||
|
||||
#include <asm/arch/base_addr_ac5.h>
|
||||
|
||||
/* The rest of the configuration is shared */
|
||||
#include <configs/socfpga_common.h>
|
||||
|
||||
#endif /* __CONFIG_CORESOURCE_AC550SOC_H__ */
|
||||
@@ -11,10 +11,10 @@
|
||||
* Memory configurations
|
||||
*/
|
||||
#define PHYS_SDRAM_1 0x0
|
||||
#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
|
||||
#if defined(CONFIG_ARCH_SOCFPGA_GEN5)
|
||||
#define CFG_SYS_INIT_RAM_ADDR 0xFFFF0000
|
||||
#define CFG_SYS_INIT_RAM_SIZE SOCFPGA_PHYS_OCRAM_SIZE
|
||||
#elif defined(CONFIG_TARGET_SOCFPGA_ARRIA10)
|
||||
#elif defined(CONFIG_ARCH_SOCFPGA_ARRIA10)
|
||||
#define CFG_SYS_INIT_RAM_ADDR 0xFFE00000
|
||||
/* SPL memory allocation configuration, this is for FAT implementation */
|
||||
#define CFG_SYS_INIT_RAM_SIZE (SOCFPGA_PHYS_OCRAM_SIZE - \
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
/*
|
||||
* U-Boot run time memory configurations
|
||||
*/
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define CFG_SYS_INIT_RAM_ADDR 0x0
|
||||
#define CFG_SYS_INIT_RAM_SIZE 0x80000
|
||||
#else
|
||||
@@ -118,7 +118,7 @@
|
||||
|
||||
#include <config_distro_bootcmd.h>
|
||||
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
|
||||
#define CFG_EXTRA_ENV_SETTINGS \
|
||||
"kernel_addr_r=0x82000000\0" \
|
||||
@@ -182,7 +182,7 @@
|
||||
"smc_fid_wr=0xC2000008\0" \
|
||||
"smc_fid_upd=0xC2000009\0 " \
|
||||
BOOTENV
|
||||
#endif /*#IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)*/
|
||||
#endif /*#IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)*/
|
||||
|
||||
#else
|
||||
|
||||
@@ -245,7 +245,7 @@
|
||||
/*
|
||||
* External memory configurations
|
||||
*/
|
||||
#if IS_ENABLED(CONFIG_TARGET_SOCFPGA_AGILEX5)
|
||||
#if IS_ENABLED(CONFIG_ARCH_SOCFPGA_AGILEX5)
|
||||
#define PHYS_SDRAM_1 0x80000000
|
||||
#define PHYS_SDRAM_1_SIZE (1 * 1024 * 1024 * 1024)
|
||||
#define CFG_SYS_SDRAM_BASE 0x80000000
|
||||
@@ -270,7 +270,7 @@
|
||||
/*
|
||||
* L4 Watchdog
|
||||
*/
|
||||
#ifdef CONFIG_TARGET_SOCFPGA_STRATIX10
|
||||
#ifdef CONFIG_ARCH_SOCFPGA_STRATIX10
|
||||
#ifndef __ASSEMBLY__
|
||||
unsigned int cm_get_l4_sys_free_clk_hz(void);
|
||||
#define CFG_DW_WDT_CLOCK_KHZ (cm_get_l4_sys_free_clk_hz() / 1000)
|
||||
|
||||
@@ -268,11 +268,11 @@ ifneq ($(CONFIG_ARCH_EXYNOS)$(CONFIG_ARCH_S5PC1XX),)
|
||||
INPUTS-y += $(obj)/$(BOARD)-spl.bin
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_TARGET_SOCFPGA_GEN5)$(CONFIG_TARGET_SOCFPGA_ARRIA10),)
|
||||
ifneq ($(CONFIG_ARCH_SOCFPGA_GEN5)$(CONFIG_ARCH_SOCFPGA_ARRIA10),)
|
||||
INPUTS-y += $(obj)/$(SPL_BIN).sfp
|
||||
endif
|
||||
|
||||
INPUTS-$(CONFIG_TARGET_SOCFPGA_SOC64) += $(obj)/u-boot-spl-dtb.hex
|
||||
INPUTS-$(CONFIG_ARCH_SOCFPGA_SOC64) += $(obj)/u-boot-spl-dtb.hex
|
||||
|
||||
ifdef CONFIG_ARCH_SUNXI
|
||||
INPUTS-y += $(obj)/sunxi-spl.bin
|
||||
@@ -432,7 +432,7 @@ ifneq ($(CONFIG_$(PHASE_)TEXT_BASE),)
|
||||
LDFLAGS_$(SPL_BIN) += -Ttext $(CONFIG_$(PHASE_)TEXT_BASE)
|
||||
endif
|
||||
|
||||
ifdef CONFIG_TARGET_SOCFPGA_ARRIA10
|
||||
ifdef CONFIG_ARCH_SOCFPGA_ARRIA10
|
||||
MKIMAGEFLAGS_$(SPL_BIN).sfp = -T socfpgaimage_v1
|
||||
else
|
||||
MKIMAGEFLAGS_$(SPL_BIN).sfp = -T socfpgaimage
|
||||
|
||||
Reference in New Issue
Block a user