arm: SC584-EZKIT initial support

Adds support for Analog Devices' SC584-EZKIT board. Includes:
- SoC specific configs in mach-sc5xx/Kconfig
- Memory Map for SPL
- SPL config options in common/spl/Kconfig
- Necessary board-specific init functions
- Board-specific Kconfig and environment in board/adi/
- Memory configuration

Co-developed-by: Greg Malysa <greg.malysa@timesys.com>
Signed-off-by: Greg Malysa <greg.malysa@timesys.com>
Co-developed-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Co-developed-by: Nathan Barrett-Morrison <nathan.morrison@timesys.com>
Signed-off-by: Nathan Barrett-Morrison <nathan.morrison@timesys.com>
Signed-off-by: Oliver Gaskell <Oliver.Gaskell@analog.com>
This commit is contained in:
Oliver Gaskell
2024-09-12 16:50:58 +01:00
committed by Tom Rini
parent 9e24d9a615
commit 07735eee98
8 changed files with 193 additions and 0 deletions

View File

@@ -647,6 +647,7 @@ config TEXT_BASE
default 0x42e00000 if SUNXI_MINIMUM_DRAM_MB >= 64 default 0x42e00000 if SUNXI_MINIMUM_DRAM_MB >= 64
default 0x96000000 if ARCH_SC5XX && SC59X_64 default 0x96000000 if ARCH_SC5XX && SC59X_64
default 0xB2200000 if ARCH_SC5XX && SC59X default 0xB2200000 if ARCH_SC5XX && SC59X
default 0x89200000 if ARCH_SC5XX && TARGET_SC584_EZKIT
hex "Text Base" hex "Text Base"
help help
The address in memory that U-Boot will be copied and executed from The address in memory that U-Boot will be copied and executed from

View File

@@ -49,6 +49,20 @@ config SC59X_64
endchoice endchoice
if SC58X
choice
prompt "SC58x board select"
config TARGET_SC584_EZKIT
bool
prompt "SC584-EZKIT"
select ADI_USE_DDR2
endchoice
endif
if SC59X if SC59X
choice choice
@@ -530,5 +544,6 @@ source "board/adi/sc598-som-ezkit/Kconfig"
source "board/adi/sc598-som-ezlite/Kconfig" source "board/adi/sc598-som-ezlite/Kconfig"
source "board/adi/sc594-som-ezkit/Kconfig" source "board/adi/sc594-som-ezkit/Kconfig"
source "board/adi/sc594-som-ezlite/Kconfig" source "board/adi/sc594-som-ezlite/Kconfig"
source "board/adi/sc584-ezkit/Kconfig"
endif endif

View File

@@ -12,6 +12,7 @@ obj-y += soc.o init/
obj-$(CONFIG_SC57X) += sc57x.o obj-$(CONFIG_SC57X) += sc57x.o
obj-$(CONFIG_SC58X) += sc58x.o obj-$(CONFIG_SC58X) += sc58x.o
obj-$(CONFIG_SC58X) += sc58x-spl.o
obj-$(CONFIG_SC59X) += sc59x.o obj-$(CONFIG_SC59X) += sc59x.o
obj-$(CONFIG_SC59X) += sc59x-spl.o obj-$(CONFIG_SC59X) += sc59x-spl.o
obj-$(CONFIG_SC59X_64) += sc59x_64.o obj-$(CONFIG_SC59X_64) += sc59x_64.o

View File

@@ -0,0 +1,26 @@
// SPDX-License-Identifier: GPL-2.0-or-later
/*
* (C) Copyright 2024 - Analog Devices, Inc.
*/
#include <asm/arch-adi/sc5xx/spl.h>
// Table 53-13 in SC58x HRM
const struct adi_boot_args adi_rom_boot_args[] = {
// JTAG/no boot
[0] = {0, 0, 0},
// SPI master, used for qspi as well
[1] = {0x60020000, 0x00040000, 0x00010207},
// SPI slave
[2] = {0, 0, 0x00000212},
// reserved, no boot
[3] = {0, 0, 0},
// reserved, no boot
[4] = {0, 0, 0},
// reserved, also no boot
[5] = {0, 0, 0},
// Linkport slave
[6] = {0, 0, 0x00000014},
// UART slave
[7] = {0, 0, 0x00000013},
};

View File

@@ -0,0 +1,116 @@
# SPDX-License-Identifier: GPL-2.0-or-later
#
# (C) Copyright 2024 - Analog Devices, Inc.
if TARGET_SC584_EZKIT
config LDR_CPU
default "ADSP-SC584-0.1"
config SYS_BOARD
default "sc584-ezkit"
config SYS_CONFIG_NAME
default "sc584-ezkit"
config DEFAULT_DEVICE_TREE
default "sc584-ezkit"
config ADI_IMAGE
default "tiny"
config CUSTOM_SYS_INIT_SP_ADDR
default 0x8903f000
# SPI Flash
config SF_DEFAULT_BUS
default 2
config SF_DEFAULT_CS
default 1
config SF_DEFAULT_SPEED
default 5000000
# Clocks
config CGU0_DF_DIV
default 0
config CGU0_VCO_MULT
default 18
config CGU0_CCLK_DIV
default 1
config CGU0_SCLK_DIV
default 2
config CGU0_SCLK0_DIV
default 2
config CGU0_SCLK1_DIV
default 2
config CGU0_DCLK_DIV
default 2
config CGU0_OCLK_DIV
default 3
config CGU1_VCO_MULT
default 5
config CGU1_DF_DIV
default 0
config CGU1_CCLK_DIV
default 1
config CGU1_SCLK_DIV
default 2
config CGU1_SCLK0_DIV
default 2
config CGU1_SCLK1_DIV
default 2
config CGU1_DCLK_DIV
default 2
config CGU1_OCLK_DIV
default 3
config CDU0_CLKO0
default 1
config CDU0_CLKO1
default 1
config CDU0_CLKO2
default 1
config CDU0_CLKO3
default 1
config CDU0_CLKO4
default 1
config CDU0_CLKO5
default 1
config CDU0_CLKO6
default 1
config CDU0_CLKO7
default 5
config CDU0_CLKO8
default 1
config CDU0_CLKO9
default 1
endif

View File

@@ -0,0 +1,13 @@
/* SPDX-License-Identifier: GPL-2.0-or-later+ */
/*
* (C) Copyright 2024 - Analog Devices, Inc.
*/
#include <env/adi/adi_boot.env>
adi_stage2_offset=0x20000
adi_image_offset=0xE0000
adi_rfs_offset=0x6E0000
loadaddr=0x89300000
jffs2file=adsp-sc5xx-__stringify(CONFIG_ADI_IMAGE)-adsp-sc584-ezkit.jffs2

View File

@@ -87,6 +87,7 @@ config SPL_MAX_SIZE
default 0x10000 if ASPEED_AST2600 default 0x10000 if ASPEED_AST2600
default 0x27000 if IMX8MM && SPL_TEXT_BASE = 0x7E1000 default 0x27000 if IMX8MM && SPL_TEXT_BASE = 0x7E1000
default 0x30000 if ARCH_SC5XX && (SC59X_64 || SC59X) default 0x30000 if ARCH_SC5XX && (SC59X_64 || SC59X)
default 0x20000 if ARCH_SC5XX && SC58X
default 0x0 default 0x0
help help
Maximum size of the SPL image (text, data, rodata, and linker lists Maximum size of the SPL image (text, data, rodata, and linker lists
@@ -124,6 +125,7 @@ config SPL_BSS_START_ADDR
default 0x2ff80000 if ARCH_SUNXI && MACH_SUN9I default 0x2ff80000 if ARCH_SUNXI && MACH_SUN9I
default 0x1000 if ARCH_ZYNQMP default 0x1000 if ARCH_ZYNQMP
default 0x200B0000 if ARCH_SC5XX && (SC59X_64 || SC59X) default 0x200B0000 if ARCH_SC5XX && (SC59X_64 || SC59X)
default 0x20080000 if ARCH_SC5XX && SC58X
choice choice
prompt "Enforce SPL BSS limit" prompt "Enforce SPL BSS limit"
@@ -395,6 +397,7 @@ config SPL_STACK
default 0x18000 if MACH_SUN9I default 0x18000 if MACH_SUN9I
default 0x8000 if ARCH_SUNXI default 0x8000 if ARCH_SUNXI
default 0x200E4000 if ARCH_SC5XX && (SC59X_64 || SC59X) default 0x200E4000 if ARCH_SC5XX && (SC59X_64 || SC59X)
default 0x200B0000 if ARCH_SC5XX && SC58X
help help
Address of the start of the stack SPL will use before SDRAM is Address of the start of the stack SPL will use before SDRAM is
initialized. initialized.

View File

@@ -0,0 +1,18 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
* (C) Copyright 2024 - Analog Devices, Inc.
*/
#ifndef __CONFIG_SC584_EZKIT_H
#define __CONFIG_SC584_EZKIT_H
/*
* Memory Settings
*/
#define MEM_MT47H128M16RT
#define MEM_DMC0
#define CFG_SYS_SDRAM_BASE 0x89000000
#define CFG_SYS_SDRAM_SIZE 0x7000000
#endif