mirror of
https://github.com/smaeul/u-boot.git
synced 2025-10-14 04:46:01 +01:00
bcm96753ref: add initial support
This add the initial support of the broadcom reference board bcm96753ref with a bcm6753 SoC. This board has 1 GB of RAM, 256 MB of flash (nand), 2 USB port, 1 UART, and 4 ethernet ports. Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
This commit is contained in:
parent
40ca58a8db
commit
a241ccdc44
@ -2213,6 +2213,7 @@ source "board/armltd/vexpress/Kconfig"
|
|||||||
source "board/armltd/vexpress64/Kconfig"
|
source "board/armltd/vexpress64/Kconfig"
|
||||||
source "board/cortina/presidio-asic/Kconfig"
|
source "board/cortina/presidio-asic/Kconfig"
|
||||||
source "board/broadcom/bcm963158/Kconfig"
|
source "board/broadcom/bcm963158/Kconfig"
|
||||||
|
source "board/broadcom/bcm96753ref/Kconfig"
|
||||||
source "board/broadcom/bcm968360bg/Kconfig"
|
source "board/broadcom/bcm968360bg/Kconfig"
|
||||||
source "board/broadcom/bcm968580xref/Kconfig"
|
source "board/broadcom/bcm968580xref/Kconfig"
|
||||||
source "board/broadcom/bcmns3/Kconfig"
|
source "board/broadcom/bcmns3/Kconfig"
|
||||||
|
@ -1104,6 +1104,9 @@ dtb-$(CONFIG_ARCH_BCM63158) += \
|
|||||||
dtb-$(CONFIG_ARCH_BCM68360) += \
|
dtb-$(CONFIG_ARCH_BCM68360) += \
|
||||||
bcm968360bg.dtb
|
bcm968360bg.dtb
|
||||||
|
|
||||||
|
dtb-$(CONFIG_ARCH_BCM6753) += \
|
||||||
|
bcm96753ref.dtb
|
||||||
|
|
||||||
dtb-$(CONFIG_ARCH_BCM6858) += \
|
dtb-$(CONFIG_ARCH_BCM6858) += \
|
||||||
bcm968580xref.dtb
|
bcm968580xref.dtb
|
||||||
|
|
||||||
|
80
arch/arm/dts/bcm96753ref.dts
Normal file
80
arch/arm/dts/bcm96753ref.dts
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0+
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2022 Philippe Reynes <philippe.reynes@softathome.com>
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "bcm6753.dtsi"
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Broadcom bcm6753ref";
|
||||||
|
compatible = "broadcom,bcm6753ref", "brcm,bcm6753";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &uart0;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial0:115200n8";
|
||||||
|
};
|
||||||
|
|
||||||
|
memory {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x40000000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart0 {
|
||||||
|
u-boot,dm-pre-reloc;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio3 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio4 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio5 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio6 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio7 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&nand {
|
||||||
|
status = "okay";
|
||||||
|
write-protect = <0>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
|
||||||
|
nandcs@0 {
|
||||||
|
compatible = "brcm,nandcs";
|
||||||
|
reg = <0>;
|
||||||
|
nand-ecc-strength = <4>;
|
||||||
|
nand-ecc-step-size = <512>;
|
||||||
|
brcm,nand-oob-sector-size = <16>;
|
||||||
|
};
|
||||||
|
};
|
16
board/broadcom/bcm96753ref/Kconfig
Normal file
16
board/broadcom/bcm96753ref/Kconfig
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
if TARGET_BCM96753REF
|
||||||
|
|
||||||
|
config SYS_VENDOR
|
||||||
|
default "broadcom"
|
||||||
|
|
||||||
|
config SYS_BOARD
|
||||||
|
default "bcm96753ref"
|
||||||
|
|
||||||
|
config SYS_CONFIG_NAME
|
||||||
|
default "broadcom_bcm96753ref"
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
config TARGET_BCM96753REF
|
||||||
|
bool "Support Broadcom bcm96753ref"
|
||||||
|
depends on ARCH_BCM6753
|
6
board/broadcom/bcm96753ref/MAINTAINERS
Normal file
6
board/broadcom/bcm96753ref/MAINTAINERS
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
BROADCOM BCM96753REF
|
||||||
|
M: Philippe Reynes <philippe.reynes@softathome.com>
|
||||||
|
S: Maintained
|
||||||
|
F: board/broadcom/bcm96753ref
|
||||||
|
F: include/configs/broadcom_bcm96753ref.h
|
||||||
|
F: configs/bcm96753ref_ram_defconfig
|
3
board/broadcom/bcm96753ref/Makefile
Normal file
3
board/broadcom/bcm96753ref/Makefile
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0+
|
||||||
|
|
||||||
|
obj-y += bcm96753ref.o
|
40
board/broadcom/bcm96753ref/bcm96753ref.c
Normal file
40
board/broadcom/bcm96753ref/bcm96753ref.c
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0+
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2022 Philippe Reynes <philippe.reynes@softathome.com>
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <common.h>
|
||||||
|
#include <fdtdec.h>
|
||||||
|
#include <linux/io.h>
|
||||||
|
#include <cpu_func.h>
|
||||||
|
|
||||||
|
int board_init(void)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int dram_init(void)
|
||||||
|
{
|
||||||
|
if (fdtdec_setup_mem_size_base() != 0)
|
||||||
|
printf("fdtdec_setup_mem_size_base() has failed\n");
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int dram_init_banksize(void)
|
||||||
|
{
|
||||||
|
fdtdec_setup_memory_banksize();
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int print_cpuinfo(void)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void enable_caches(void)
|
||||||
|
{
|
||||||
|
icache_enable();
|
||||||
|
dcache_enable();
|
||||||
|
}
|
81
configs/bcm96753ref_ram_defconfig
Normal file
81
configs/bcm96753ref_ram_defconfig
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
CONFIG_ARM=y
|
||||||
|
CONFIG_SKIP_LOWLEVEL_INIT=y
|
||||||
|
CONFIG_SKIP_LOWLEVEL_INIT_ONLY=y
|
||||||
|
CONFIG_SYS_ARCH_TIMER=y
|
||||||
|
CONFIG_ARCH_BCM6753=y
|
||||||
|
CONFIG_SYS_TEXT_BASE=0x1000000
|
||||||
|
CONFIG_SYS_MALLOC_F_LEN=0x1000
|
||||||
|
CONFIG_NR_DRAM_BANKS=1
|
||||||
|
CONFIG_ENV_SIZE=0x20000
|
||||||
|
CONFIG_DM_GPIO=y
|
||||||
|
CONFIG_DEFAULT_DEVICE_TREE="bcm96753ref"
|
||||||
|
CONFIG_ARMV7_LPAE=y
|
||||||
|
CONFIG_TARGET_BCM96753REF=y
|
||||||
|
CONFIG_ENV_VARS_UBOOT_CONFIG=y
|
||||||
|
CONFIG_SYS_LOAD_ADDR=0x1000000
|
||||||
|
CONFIG_FIT=y
|
||||||
|
CONFIG_FIT_SIGNATURE=y
|
||||||
|
CONFIG_FIT_CIPHER=y
|
||||||
|
CONFIG_FIT_VERBOSE=y
|
||||||
|
CONFIG_LEGACY_IMAGE_FORMAT=y
|
||||||
|
CONFIG_SUPPORT_RAW_INITRD=y
|
||||||
|
CONFIG_OF_STDOUT_VIA_ALIAS=y
|
||||||
|
# CONFIG_AUTOBOOT is not set
|
||||||
|
CONFIG_SYS_CONSOLE_IS_IN_ENV=y
|
||||||
|
CONFIG_HUSH_PARSER=y
|
||||||
|
# CONFIG_CMD_BOOTD is not set
|
||||||
|
# CONFIG_BOOTM_NETBSD is not set
|
||||||
|
# CONFIG_BOOTM_PLAN9 is not set
|
||||||
|
# CONFIG_BOOTM_RTEMS is not set
|
||||||
|
# CONFIG_BOOTM_VXWORKS is not set
|
||||||
|
# CONFIG_CMD_ELF is not set
|
||||||
|
# CONFIG_CMD_XIMG is not set
|
||||||
|
# CONFIG_CMD_EXPORTENV is not set
|
||||||
|
# CONFIG_CMD_IMPORTENV is not set
|
||||||
|
# CONFIG_CMD_EDITENV is not set
|
||||||
|
# CONFIG_CMD_SAVEENV is not set
|
||||||
|
# CONFIG_CMD_ENV_EXISTS is not set
|
||||||
|
# CONFIG_CMD_CRC32 is not set
|
||||||
|
CONFIG_CMD_MEMINFO=y
|
||||||
|
CONFIG_CMD_CLK=y
|
||||||
|
CONFIG_CMD_GPIO=y
|
||||||
|
# CONFIG_CMD_LOADS is not set
|
||||||
|
CONFIG_CMD_MTD=y
|
||||||
|
CONFIG_CMD_NAND=y
|
||||||
|
CONFIG_CMD_SPI=y
|
||||||
|
CONFIG_CMD_WDT=y
|
||||||
|
# CONFIG_CMD_SETEXPR is not set
|
||||||
|
CONFIG_CMD_CACHE=y
|
||||||
|
CONFIG_CMD_MTDPARTS=y
|
||||||
|
CONFIG_CMD_UBI=y
|
||||||
|
# CONFIG_CMD_UBIFS is not set
|
||||||
|
# CONFIG_NET is not set
|
||||||
|
CONFIG_REGMAP=y
|
||||||
|
CONFIG_SYSCON=y
|
||||||
|
CONFIG_BUTTON=y
|
||||||
|
CONFIG_BUTTON_GPIO=y
|
||||||
|
CONFIG_CLK=y
|
||||||
|
CONFIG_BCM6345_GPIO=y
|
||||||
|
# CONFIG_INPUT is not set
|
||||||
|
CONFIG_LED=y
|
||||||
|
CONFIG_LED_BLINK=y
|
||||||
|
CONFIG_LED_GPIO=y
|
||||||
|
CONFIG_MISC=y
|
||||||
|
# CONFIG_MMC is not set
|
||||||
|
CONFIG_MTD=y
|
||||||
|
CONFIG_DM_MTD=y
|
||||||
|
CONFIG_MTD_RAW_NAND=y
|
||||||
|
CONFIG_NAND_BRCMNAND=y
|
||||||
|
CONFIG_NAND_BRCMNAND_6753=y
|
||||||
|
CONFIG_PINCTRL=y
|
||||||
|
CONFIG_PINCONF=y
|
||||||
|
CONFIG_SPECIFY_CONSOLE_INDEX=y
|
||||||
|
CONFIG_DM_SERIAL=y
|
||||||
|
CONFIG_PL01X_SERIAL=y
|
||||||
|
CONFIG_SPI=y
|
||||||
|
CONFIG_DM_SPI=y
|
||||||
|
CONFIG_SPI_MEM=y
|
||||||
|
CONFIG_SYSRESET=y
|
||||||
|
CONFIG_SYSRESET_WATCHDOG=y
|
||||||
|
CONFIG_WDT_BCM6345=y
|
||||||
|
CONFIG_REGEX=y
|
34
include/configs/broadcom_bcm96753ref.h
Normal file
34
include/configs/broadcom_bcm96753ref.h
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2022 Philippe Reynes <philippe.reynes@softathome.com>
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <linux/sizes.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* common
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* UART */
|
||||||
|
#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200, \
|
||||||
|
230400, 500000, 1500000 }
|
||||||
|
/* Memory usage */
|
||||||
|
#define CONFIG_SYS_MAXARGS 24
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 6853
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* RAM */
|
||||||
|
#define CONFIG_SYS_SDRAM_BASE 0x00000000
|
||||||
|
|
||||||
|
/* U-Boot */
|
||||||
|
#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_TEXT_BASE + SZ_16M)
|
||||||
|
|
||||||
|
#ifdef CONFIG_MTD_RAW_NAND
|
||||||
|
#define CONFIG_SYS_MAX_NAND_DEVICE 1
|
||||||
|
#endif /* CONFIG_MTD_RAW_NAND */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 96753ref
|
||||||
|
*/
|
Loading…
x
Reference in New Issue
Block a user