board: samsung: add initial Espresso7420 board support
Espresso7420 is a development/evaluation board for Exynos7420 SoC. It includes multiple onboard compoments (EMMC/Codec) and various interconnects (USB/HDMI). Signed-off-by: Thomas Abraham <thomas.ab@samsung.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
This commit is contained in:
parent
e39448e8be
commit
6c15a2a996
|
@ -21,6 +21,7 @@ dtb-$(CONFIG_EXYNOS5) += exynos5250-arndale.dtb \
|
||||||
exynos5420-peach-pit.dtb \
|
exynos5420-peach-pit.dtb \
|
||||||
exynos5800-peach-pi.dtb \
|
exynos5800-peach-pi.dtb \
|
||||||
exynos5422-odroidxu3.dtb
|
exynos5422-odroidxu3.dtb
|
||||||
|
dtb-$(CONFIG_EXYNOS7420) += exynos7420-espresso7420.dtb
|
||||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += \
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += \
|
||||||
rk3288-firefly.dtb \
|
rk3288-firefly.dtb \
|
||||||
rk3288-jerry.dtb \
|
rk3288-jerry.dtb \
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
/*
|
||||||
|
* Samsung Espresso7420 board device tree source
|
||||||
|
*
|
||||||
|
* Copyright (c) 2016 Samsung Electronics Co., Ltd.
|
||||||
|
* http://www.samsung.com
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0+
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "exynos7420.dtsi"
|
||||||
|
/ {
|
||||||
|
model = "Samsung Espresso7420 board based on Exynos7420";
|
||||||
|
compatible = "samsung,espresso7420", "samsung,exynos7420";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial2 = "/serial@14C30000";
|
||||||
|
console = "/serial@14C30000";
|
||||||
|
pinctrl0 = "/pinctrl@13470000";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&fin_pll {
|
||||||
|
clock-frequency = <24000000>;
|
||||||
|
};
|
|
@ -109,6 +109,24 @@ config TARGET_PEACH_PIT
|
||||||
endchoice
|
endchoice
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
if ARCH_EXYNOS7
|
||||||
|
|
||||||
|
choice
|
||||||
|
prompt "EXYNOS7 board select"
|
||||||
|
|
||||||
|
config TARGET_ESPRESSO7420
|
||||||
|
bool "ESPRESSO7420 board"
|
||||||
|
select ARM64
|
||||||
|
select SUPPORT_SPL
|
||||||
|
select OF_CONTROL
|
||||||
|
select SPL_DISABLE_OF_CONTROL
|
||||||
|
select PINCTRL
|
||||||
|
select PINCTRL_EXYNOS7420
|
||||||
|
select CLK_EXYNOS
|
||||||
|
|
||||||
|
endchoice
|
||||||
|
endif
|
||||||
|
|
||||||
config SYS_SOC
|
config SYS_SOC
|
||||||
default "exynos"
|
default "exynos"
|
||||||
|
|
||||||
|
@ -121,5 +139,6 @@ source "board/samsung/odroid/Kconfig"
|
||||||
source "board/samsung/arndale/Kconfig"
|
source "board/samsung/arndale/Kconfig"
|
||||||
source "board/samsung/smdk5250/Kconfig"
|
source "board/samsung/smdk5250/Kconfig"
|
||||||
source "board/samsung/smdk5420/Kconfig"
|
source "board/samsung/smdk5420/Kconfig"
|
||||||
|
source "board/samsung/espresso7420/Kconfig"
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -27,6 +27,8 @@
|
||||||
#include <usb.h>
|
#include <usb.h>
|
||||||
#include <dwc3-uboot.h>
|
#include <dwc3-uboot.h>
|
||||||
#include <samsung/misc.h>
|
#include <samsung/misc.h>
|
||||||
|
#include <dm/pinctrl.h>
|
||||||
|
#include <dm.h>
|
||||||
|
|
||||||
DECLARE_GLOBAL_DATA_PTR;
|
DECLARE_GLOBAL_DATA_PTR;
|
||||||
|
|
||||||
|
@ -97,7 +99,7 @@ int board_init(void)
|
||||||
int dram_init(void)
|
int dram_init(void)
|
||||||
{
|
{
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
u32 addr;
|
unsigned long addr;
|
||||||
|
|
||||||
for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
|
for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
|
||||||
addr = CONFIG_SYS_SDRAM_BASE + (i * SDRAM_BANK_SIZE);
|
addr = CONFIG_SYS_SDRAM_BASE + (i * SDRAM_BANK_SIZE);
|
||||||
|
@ -109,7 +111,7 @@ int dram_init(void)
|
||||||
void dram_init_banksize(void)
|
void dram_init_banksize(void)
|
||||||
{
|
{
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
u32 addr, size;
|
unsigned long addr, size;
|
||||||
|
|
||||||
for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
|
for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
|
||||||
addr = CONFIG_SYS_SDRAM_BASE + (i * SDRAM_BANK_SIZE);
|
addr = CONFIG_SYS_SDRAM_BASE + (i * SDRAM_BANK_SIZE);
|
||||||
|
@ -122,6 +124,7 @@ void dram_init_banksize(void)
|
||||||
|
|
||||||
static int board_uart_init(void)
|
static int board_uart_init(void)
|
||||||
{
|
{
|
||||||
|
#ifndef CONFIG_PINCTRL_EXYNOS
|
||||||
int err, uart_id, ret = 0;
|
int err, uart_id, ret = 0;
|
||||||
|
|
||||||
for (uart_id = PERIPH_ID_UART0; uart_id <= PERIPH_ID_UART3; uart_id++) {
|
for (uart_id = PERIPH_ID_UART0; uart_id <= PERIPH_ID_UART3; uart_id++) {
|
||||||
|
@ -133,6 +136,9 @@ static int board_uart_init(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
|
#else
|
||||||
|
return 0;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_BOARD_EARLY_INIT_F
|
#ifdef CONFIG_BOARD_EARLY_INIT_F
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
if TARGET_ESPRESSO7420
|
||||||
|
|
||||||
|
config SYS_BOARD
|
||||||
|
default "espresso7420"
|
||||||
|
help
|
||||||
|
Espresso7420 is a development/evaluation board for Exynos7420 SoC.
|
||||||
|
It includes multiple onboard compoments (EMMC/Codec) and various
|
||||||
|
interconnects (USB/HDMI).
|
||||||
|
|
||||||
|
config SYS_VENDOR
|
||||||
|
default "samsung"
|
||||||
|
|
||||||
|
config SYS_CONFIG_NAME
|
||||||
|
default "espresso7420"
|
||||||
|
|
||||||
|
endif
|
|
@ -0,0 +1,5 @@
|
||||||
|
ESPRESSO7420 Board
|
||||||
|
M: Thomas Abraham <thomas.ab@samsung.com>
|
||||||
|
S: Maintained
|
||||||
|
F: board/samsung/espresso7420/
|
||||||
|
F: include/configs/espresso7420.h
|
|
@ -0,0 +1,10 @@
|
||||||
|
#
|
||||||
|
# Copyright (C) 2016 Samsung Electronics
|
||||||
|
# Thomas Abraham <thomas.ab@samsung.com>
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: GPL-2.0+
|
||||||
|
#
|
||||||
|
|
||||||
|
ifndef CONFIG_SPL_BUILD
|
||||||
|
obj-y += espresso7420.o
|
||||||
|
endif
|
|
@ -0,0 +1,16 @@
|
||||||
|
/*
|
||||||
|
* Espresso7420 board file
|
||||||
|
* Copyright (C) 2016 Samsung Electronics
|
||||||
|
* Thomas Abraham <thomas.ab@samsung.com>
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0+
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <common.h>
|
||||||
|
|
||||||
|
DECLARE_GLOBAL_DATA_PTR;
|
||||||
|
|
||||||
|
int exynos_init(void)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
CONFIG_ARM=y
|
||||||
|
CONFIG_ARCH_EXYNOS=y
|
||||||
|
CONFIG_ARCH_EXYNOS7=y
|
||||||
|
CONFIG_TARGET_ESPRESSO7420=y
|
||||||
|
CONFIG_DEFAULT_DEVICE_TREE="exynos7420-espresso7420"
|
||||||
|
CONFIG_SYS_MALLOC_F_LEN=0x2000
|
||||||
|
CONFIG_SYS_PROMPT="ESPRESSO7420 # "
|
||||||
|
# CONFIG_CMD_IMLS is not set
|
||||||
|
# CONFIG_CMD_SETEXPR is not set
|
Loading…
Reference in New Issue