board: arm: Add support for Broadcom BCM7260

Add support for loading U-Boot on the Broadcom 7260 SoC.  This port
assumes Broadcom's BOLT bootloader is acting as the second stage
bootloader, and U-Boot is acting as the third stage bootloader, loaded
as an ELF program by BOLT.

Signed-off-by: Thomas Fitzsimmons <fitzsim@fitzsim.org>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Cc: Florian Fainelli <f.fainelli@gmail.com>
This commit is contained in:
Thomas Fitzsimmons 2018-08-22 18:37:55 -04:00 committed by Tom Rini
parent 1210957304
commit 3f20321ad8
5 changed files with 76 additions and 4 deletions

View file

@ -113,7 +113,7 @@ M: Thomas Fitzsimmons <fitzsim@fitzsim.org>
S: Maintained
F: arch/arm/mach-bcmstb/
F: board/broadcom/bcmstb/
F: configs/bcm7445_defconfig
F: configs/bcm7*_defconfig
F: doc/README.bcm7xxx
F: drivers/mmc/bcmstb_sdhci.c
F: drivers/spi/bcmstb_spi.c

View file

@ -7,8 +7,14 @@ config TARGET_BCM7445
Support for the Broadcom 7445 SoC. This port assumes BOLT
is acting as the second stage bootloader, and U-Boot is
acting as the third stage bootloader (TSBL), loaded by BOLT.
This port may work on other BCM7xxx boards with
configuration changes.
config TARGET_BCM7260
bool "Broadcom 7260 TSBL"
depends on ARCH_BCMSTB
help
Support for the Broadcom 7260 SoC. This port assumes BOLT
is acting as the second stage bootloader, and U-Boot is
acting as the third stage bootloader (TSBL), loaded by BOLT.
config SYS_CPU
default "armv7"
@ -23,7 +29,8 @@ config SYS_SOC
default "bcmstb"
config SYS_CONFIG_NAME
default "bcm7445"
default "bcm7445" if TARGET_BCM7445
default "bcm7260" if TARGET_BCM7260
config SYS_FDT_SAVE_ADDRESS
hex "Address to which the prior stage provided DTB will be copied"

View file

@ -5,3 +5,11 @@ F: board/broadcom/bcmstb/
F: include/configs/bcmstb.h
F: include/configs/bcm7445.h
F: configs/bcm7445_defconfig
BCM7260 BOARD
M: Thomas Fitzsimmons <fitzsim@fitzsim.org>
S: Maintained
F: board/broadcom/bcmstb/
F: include/configs/bcmstb.h
F: include/configs/bcm7260.h
F: configs/bcm7260_defconfig

17
configs/bcm7260_defconfig Normal file
View file

@ -0,0 +1,17 @@
CONFIG_ARM=y
CONFIG_ARCH_BCMSTB=y
CONFIG_SYS_TEXT_BASE=0x10100000
CONFIG_TARGET_BCM7260=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_FIT=y
CONFIG_FIT_SIGNATURE=y
CONFIG_BOOTDELAY=1
CONFIG_HUSH_PARSER=y
CONFIG_SYS_PROMPT="U-Boot>"
CONFIG_OF_PRIOR_STAGE=y
CONFIG_ENV_IS_IN_MMC=y
CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_BCMSTB=y
CONFIG_CONS_INDEX=1
CONFIG_EFI_LOADER=n
CONFIG_EFI_PARTITION=y

40
include/configs/bcm7260.h Normal file
View file

@ -0,0 +1,40 @@
/* SPDX-License-Identifier: GPL-2.0+ */
/*
* (C) Copyright 2018 Cisco Systems, Inc.
*
* Author: Thomas Fitzsimmons <fitzsim@fitzsim.org>
*
* Configuration settings for the Broadcom BCM7260 SoC family.
*/
#ifndef __CONFIG_H
#define __CONFIG_H
#define CONFIG_SYS_NS16550_COM1 0xf040c000
#define CONFIG_SYS_TEXT_BASE 0x10100000
#define CONFIG_SYS_INIT_RAM_ADDR 0x10200000
#define CONFIG_SYS_MALLOC_LEN ((40 * 1024) << 10) /* 40 MiB */
#include "bcmstb.h"
#define BCMSTB_SDHCI_BASE 0xf0200300
#define BCMSTB_TIMER_LOW 0xf0412008
#define BCMSTB_TIMER_HIGH 0xf041200c
#define BCMSTB_TIMER_FREQUENCY 0xf0412020
#define BCMSTB_HIF_MSPI_BASE 0xf0203c00
#define BCMSTB_BSPI_BASE 0xf0203a00
#define BCMSTB_HIF_SPI_INTR2 0xf0201a00
#define BCMSTB_CS_REG 0xf0200920
/*
* Environment configuration for eMMC.
*/
#define CONFIG_ENV_OFFSET (0x000040a4 * 512)
#define CONFIG_SYS_MMC_ENV_DEV 0
#define CONFIG_SYS_MMC_ENV_PART 0
#define CONFIG_CMD_GPT
#endif /* __CONFIG_H */