mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-16 04:01:31 +00:00
board: ns2: Add support for Broadcom Northstar 2
Add support for the Broadcom Northstar2 SoC and SVK (bcm958712k). The BCM5871X is a series of quad-core 64-bit 2GHz ARMv8 Cortex-A57 processors targeting a broad range of networking applications. Signed-off-by: Jon Mason <jon.mason@broadcom.com>
This commit is contained in:
parent
daa483debe
commit
274bced86d
7 changed files with 160 additions and 0 deletions
|
@ -559,6 +559,14 @@ config TARGET_BCMNSP
|
|||
bool "Support bcmnsp"
|
||||
select CPU_V7
|
||||
|
||||
config TARGET_BCMNS2
|
||||
bool "Support Broadcom Northstar2"
|
||||
select ARM64
|
||||
help
|
||||
Support for Broadcom Northstar 2 SoCs. NS2 is a quad-core 64-bit
|
||||
ARMv8 Cortex-A57 processors targeting a broad range of networking
|
||||
applications
|
||||
|
||||
config ARCH_EXYNOS
|
||||
bool "Samsung EXYNOS"
|
||||
select DM
|
||||
|
@ -1237,6 +1245,7 @@ source "board/broadcom/bcm23550_w1d/Kconfig"
|
|||
source "board/broadcom/bcm28155_ap/Kconfig"
|
||||
source "board/broadcom/bcmcygnus/Kconfig"
|
||||
source "board/broadcom/bcmnsp/Kconfig"
|
||||
source "board/broadcom/bcmns2/Kconfig"
|
||||
source "board/cavium/thunderx/Kconfig"
|
||||
source "board/cirrus/edb93xx/Kconfig"
|
||||
source "board/compulab/cm_t335/Kconfig"
|
||||
|
|
6
board/broadcom/bcm958712k/MAINTAINERS
Normal file
6
board/broadcom/bcm958712k/MAINTAINERS
Normal file
|
@ -0,0 +1,6 @@
|
|||
BCM958712K BOARD
|
||||
M: Jon Mason <jon.mason@broadcom.com>
|
||||
S: Maintained
|
||||
F: board/broadcom/bcmns2/
|
||||
F: include/configs/bcm_northstar2.h
|
||||
F: configs/bcm958712k_defconfig
|
15
board/broadcom/bcmns2/Kconfig
Normal file
15
board/broadcom/bcmns2/Kconfig
Normal file
|
@ -0,0 +1,15 @@
|
|||
if TARGET_BCMNS2
|
||||
|
||||
config SYS_BOARD
|
||||
default "bcmns2"
|
||||
|
||||
config SYS_VENDOR
|
||||
default "broadcom"
|
||||
|
||||
config SYS_SOC
|
||||
default "ns2"
|
||||
|
||||
config SYS_CONFIG_NAME
|
||||
default "bcm_northstar2"
|
||||
|
||||
endif
|
7
board/broadcom/bcmns2/Makefile
Normal file
7
board/broadcom/bcmns2/Makefile
Normal file
|
@ -0,0 +1,7 @@
|
|||
#
|
||||
# Copyright 2016 Broadcom Ltd.
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0+
|
||||
#
|
||||
|
||||
obj-y := northstar2.o
|
58
board/broadcom/bcmns2/northstar2.c
Normal file
58
board/broadcom/bcmns2/northstar2.c
Normal file
|
@ -0,0 +1,58 @@
|
|||
/*
|
||||
* (C) Copyright 2016 Broadcom Ltd.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0+
|
||||
*/
|
||||
#include <common.h>
|
||||
#include <asm/system.h>
|
||||
#include <asm/armv8/mmu.h>
|
||||
|
||||
static struct mm_region ns2_mem_map[] = {
|
||||
{
|
||||
.virt = 0x0UL,
|
||||
.phys = 0x0UL,
|
||||
.size = 0x80000000UL,
|
||||
.attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
|
||||
PTE_BLOCK_NON_SHARE |
|
||||
PTE_BLOCK_PXN | PTE_BLOCK_UXN
|
||||
}, {
|
||||
.virt = 0x80000000UL,
|
||||
.phys = 0x80000000UL,
|
||||
.size = 0xff80000000UL,
|
||||
.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
|
||||
PTE_BLOCK_INNER_SHARE
|
||||
}, {
|
||||
/* List terminator */
|
||||
0,
|
||||
}
|
||||
};
|
||||
|
||||
struct mm_region *mem_map = ns2_mem_map;
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
int board_init(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int dram_init(void)
|
||||
{
|
||||
gd->ram_size = get_ram_size((long *)CONFIG_SYS_SDRAM_BASE,
|
||||
PHYS_SDRAM_1_SIZE + PHYS_SDRAM_2_SIZE);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void dram_init_banksize(void)
|
||||
{
|
||||
gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE;
|
||||
gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
|
||||
|
||||
gd->bd->bi_dram[1].start = CONFIG_SYS_SDRAM_BASE + PHYS_SDRAM_1_SIZE;
|
||||
gd->bd->bi_dram[1].size = PHYS_SDRAM_2_SIZE;
|
||||
}
|
||||
|
||||
void reset_cpu(ulong addr)
|
||||
{
|
||||
psci_system_reset();
|
||||
}
|
10
configs/bcm958712k_defconfig
Normal file
10
configs/bcm958712k_defconfig
Normal file
|
@ -0,0 +1,10 @@
|
|||
CONFIG_ARM=y
|
||||
CONFIG_TARGET_BCMNS2=y
|
||||
CONFIG_IDENT_STRING=" Broadcom Northstar 2"
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=5
|
||||
# CONFIG_DISPLAY_CPUINFO is not set
|
||||
CONFIG_SYS_PROMPT="u-boot> "
|
||||
# CONFIG_CMD_IMLS is not set
|
||||
CONFIG_SYS_NS16550=y
|
||||
CONFIG_OF_LIBFDT=y
|
55
include/configs/bcm_northstar2.h
Normal file
55
include/configs/bcm_northstar2.h
Normal file
|
@ -0,0 +1,55 @@
|
|||
/*
|
||||
* Configuration for Broadcom NS2.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0+
|
||||
*/
|
||||
|
||||
#ifndef __BCM_NORTHSTAR2_H
|
||||
#define __BCM_NORTHSTAR2_H
|
||||
|
||||
#include <linux/sizes.h>
|
||||
|
||||
#define CONFIG_HOSTNAME northstar2
|
||||
|
||||
/* Physical Memory Map */
|
||||
#define V2M_BASE 0x80000000
|
||||
#define PHYS_SDRAM_1 V2M_BASE
|
||||
|
||||
#define CONFIG_NR_DRAM_BANKS 2
|
||||
#define PHYS_SDRAM_1_SIZE (4UL * SZ_1G)
|
||||
#define PHYS_SDRAM_2_SIZE (4UL * SZ_1G)
|
||||
#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1
|
||||
|
||||
/* define text_base for U-boot image */
|
||||
#define CONFIG_SYS_TEXT_BASE 0x85000000
|
||||
#define CONFIG_SYS_INIT_SP_ADDR (PHYS_SDRAM_1 + 0x7ff00)
|
||||
#define CONFIG_SYS_LOAD_ADDR 0x90000000
|
||||
#define CONFIG_SYS_MALLOC_LEN SZ_16M
|
||||
|
||||
/* Serial Configuration */
|
||||
#define CONFIG_SYS_NS16550_SERIAL
|
||||
#define CONFIG_SYS_NS16550_REG_SIZE (-4)
|
||||
#define CONFIG_SYS_NS16550_CLK 25000000
|
||||
#define CONFIG_SYS_NS16550_COM1 0x66100000
|
||||
#define CONFIG_SYS_NS16550_COM2 0x66110000
|
||||
#define CONFIG_SYS_NS16550_COM3 0x66120000
|
||||
#define CONFIG_SYS_NS16550_COM4 0x66130000
|
||||
#define CONFIG_CONS_INDEX 4
|
||||
#define CONFIG_BAUDRATE 115200
|
||||
|
||||
#define CONFIG_ENV_SIZE SZ_8K
|
||||
#define CONFIG_ENV_IS_NOWHERE
|
||||
|
||||
/* console configuration */
|
||||
#define CONFIG_SYS_CBSIZE SZ_1K
|
||||
#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
|
||||
sizeof(CONFIG_SYS_PROMPT) + 16)
|
||||
#define CONFIG_SYS_MAXARGS 64
|
||||
#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
|
||||
|
||||
/* version string, parser, etc */
|
||||
#define CONFIG_CMDLINE_EDITING
|
||||
#define CONFIG_COMMAND_HISTORY
|
||||
#define CONFIG_SYS_LONGHELP
|
||||
|
||||
#endif /* __BCM_NORTHSTAR2_H */
|
Loading…
Add table
Reference in a new issue