summaryrefslogtreecommitdiff
path: root/board/broadcom
diff options
context:
space:
mode:
Diffstat (limited to 'board/broadcom')
-rw-r--r--board/broadcom/bcm11130/MAINTAINERS6
-rw-r--r--board/broadcom/bcm11130_nand/MAINTAINERS6
-rw-r--r--board/broadcom/bcm23550_w1d/Kconfig15
-rw-r--r--board/broadcom/bcm23550_w1d/MAINTAINERS6
-rw-r--r--board/broadcom/bcm23550_w1d/Makefile5
-rw-r--r--board/broadcom/bcm23550_w1d/bcm23550_w1d.c123
-rw-r--r--board/broadcom/bcm28155_ap/Kconfig15
-rw-r--r--board/broadcom/bcm28155_ap/MAINTAINERS6
-rw-r--r--board/broadcom/bcm28155_ap/Makefile5
-rw-r--r--board/broadcom/bcm28155_ap/bcm28155_ap.c130
-rw-r--r--board/broadcom/bcm28155_w1d/MAINTAINERS6
-rw-r--r--board/broadcom/bcm911360_entphn-ns/MAINTAINERS6
-rw-r--r--board/broadcom/bcm911360_entphn/MAINTAINERS6
-rw-r--r--board/broadcom/bcm911360k/MAINTAINERS6
-rw-r--r--board/broadcom/bcm958300k-ns/MAINTAINERS6
-rw-r--r--board/broadcom/bcm958300k/MAINTAINERS6
-rw-r--r--board/broadcom/bcm958305k/MAINTAINERS6
-rw-r--r--board/broadcom/bcm958622hr/MAINTAINERS6
-rw-r--r--board/broadcom/bcm958712k/MAINTAINERS6
-rw-r--r--board/broadcom/bcm963158/Kconfig17
-rw-r--r--board/broadcom/bcm963158/MAINTAINERS6
-rw-r--r--board/broadcom/bcm963158/Makefile3
-rw-r--r--board/broadcom/bcm963158/bcm963158.c61
-rw-r--r--board/broadcom/bcm968360bg/Kconfig17
-rw-r--r--board/broadcom/bcm968360bg/MAINTAINERS6
-rw-r--r--board/broadcom/bcm968360bg/Makefile3
-rw-r--r--board/broadcom/bcm968360bg/bcm968360bg.c61
-rw-r--r--board/broadcom/bcm968380gerg/Makefile3
-rw-r--r--board/broadcom/bcm968380gerg/bcm968380gerg.c6
-rw-r--r--board/broadcom/bcm968380gerg/board.c6
-rw-r--r--board/broadcom/bcm968580xref/Kconfig17
-rw-r--r--board/broadcom/bcm968580xref/MAINTAINERS6
-rw-r--r--board/broadcom/bcm968580xref/Makefile3
-rw-r--r--board/broadcom/bcm968580xref/bcm968580xref.c61
-rw-r--r--board/broadcom/bcm_ep/board.c83
-rw-r--r--board/broadcom/bcmbca/Kconfig115
-rw-r--r--board/broadcom/bcmbca/Makefile (renamed from board/broadcom/bcm_ep/Makefile)2
-rw-r--r--board/broadcom/bcmbca/board.c29
-rw-r--r--board/broadcom/bcmcygnus/Kconfig15
-rw-r--r--board/broadcom/bcmns/Kconfig12
-rw-r--r--board/broadcom/bcmns/MAINTAINERS6
-rw-r--r--board/broadcom/bcmns/Makefile2
-rw-r--r--board/broadcom/bcmns/ns.c54
-rw-r--r--board/broadcom/bcmns2/Kconfig15
-rw-r--r--board/broadcom/bcmns2/Makefile5
-rw-r--r--board/broadcom/bcmns2/northstar2.c61
-rw-r--r--board/broadcom/bcmns3/Kconfig22
-rw-r--r--board/broadcom/bcmns3/Makefile5
-rw-r--r--board/broadcom/bcmns3/fit/keys/dev.crt21
-rw-r--r--board/broadcom/bcmns3/fit/keys/dev.key28
-rw-r--r--board/broadcom/bcmns3/fit/multi.its59
-rw-r--r--board/broadcom/bcmns3/ns3.c221
-rw-r--r--board/broadcom/bcmnsp/Kconfig15
-rw-r--r--board/broadcom/bcmstb/bcmstb.c29
54 files changed, 589 insertions, 857 deletions
diff --git a/board/broadcom/bcm11130/MAINTAINERS b/board/broadcom/bcm11130/MAINTAINERS
deleted file mode 100644
index 54783501e6d..00000000000
--- a/board/broadcom/bcm11130/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM11130 BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcm28155_ap/
-F: include/configs/bcm_ep_board.h
-F: configs/bcm11130_defconfig
diff --git a/board/broadcom/bcm11130_nand/MAINTAINERS b/board/broadcom/bcm11130_nand/MAINTAINERS
deleted file mode 100644
index 4cf66b7e4a6..00000000000
--- a/board/broadcom/bcm11130_nand/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM11130_NAND BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcm28155_ap/
-F: include/configs/bcm_ep_board.h
-F: configs/bcm11130_nand_defconfig
diff --git a/board/broadcom/bcm23550_w1d/Kconfig b/board/broadcom/bcm23550_w1d/Kconfig
deleted file mode 100644
index 007a127250d..00000000000
--- a/board/broadcom/bcm23550_w1d/Kconfig
+++ /dev/null
@@ -1,15 +0,0 @@
-if TARGET_BCM23550_W1D
-
-config SYS_BOARD
- default "bcm23550_w1d"
-
-config SYS_VENDOR
- default "broadcom"
-
-config SYS_SOC
- default "bcm235xx"
-
-config SYS_CONFIG_NAME
- default "bcm23550_w1d"
-
-endif
diff --git a/board/broadcom/bcm23550_w1d/MAINTAINERS b/board/broadcom/bcm23550_w1d/MAINTAINERS
deleted file mode 100644
index bde6337ce34..00000000000
--- a/board/broadcom/bcm23550_w1d/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM23550_W1D BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcm23550_w1d/
-F: include/configs/bcm23550_w1d.h
-F: configs/bcm23550_w1d_defconfig
diff --git a/board/broadcom/bcm23550_w1d/Makefile b/board/broadcom/bcm23550_w1d/Makefile
deleted file mode 100644
index 0552f3762e8..00000000000
--- a/board/broadcom/bcm23550_w1d/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0+
-#
-# Copyright 2013 Broadcom Corporation.
-
-obj-y += bcm23550_w1d.o
diff --git a/board/broadcom/bcm23550_w1d/bcm23550_w1d.c b/board/broadcom/bcm23550_w1d/bcm23550_w1d.c
deleted file mode 100644
index d83eb9bd524..00000000000
--- a/board/broadcom/bcm23550_w1d/bcm23550_w1d.c
+++ /dev/null
@@ -1,123 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright 2013 Broadcom Corporation.
- */
-
-#include <common.h>
-#include <init.h>
-#include <asm/io.h>
-#include <asm/mach-types.h>
-#include <env.h>
-#include <mmc.h>
-#include <asm/kona-common/kona_sdhci.h>
-#include <asm/kona-common/clk.h>
-#include <asm/arch/sysmap.h>
-
-#include <usb.h>
-#include <usb/dwc2_udc.h>
-#include <g_dnl.h>
-
-#define SECWATCHDOG_SDOGCR_OFFSET 0x00000000
-#define SECWATCHDOG_SDOGCR_EN_SHIFT 27
-#define SECWATCHDOG_SDOGCR_SRSTEN_SHIFT 26
-#define SECWATCHDOG_SDOGCR_CLKS_SHIFT 20
-#define SECWATCHDOG_SDOGCR_LD_SHIFT 0
-
-#ifndef CONFIG_USB_SERIALNO
-#define CONFIG_USB_SERIALNO "1234567890"
-#endif
-
-DECLARE_GLOBAL_DATA_PTR;
-
-/*
- * board_init - early hardware init
- */
-int board_init(void)
-{
- printf("Relocation Offset is: %08lx\n", gd->reloc_off);
-
- /* adress of boot parameters */
- gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100;
-
- clk_init();
-
- return 0;
-}
-
-/*
- * misc_init_r - miscellaneous platform dependent initializations
- */
-int misc_init_r(void)
-{
- return 0;
-}
-
-/*
- * dram_init - sets uboots idea of sdram size
- */
-int dram_init(void)
-{
- gd->ram_size = get_ram_size((long *)CONFIG_SYS_SDRAM_BASE,
- CONFIG_SYS_SDRAM_SIZE);
- return 0;
-}
-
-/* This is called after dram_init() so use get_ram_size result */
-int dram_init_banksize(void)
-{
- gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE;
- gd->bd->bi_dram[0].size = gd->ram_size;
-
- return 0;
-}
-
-#ifdef CONFIG_MMC_SDHCI_KONA
-/*
- * mmc_init - Initializes mmc
- */
-int board_mmc_init(bd_t *bis)
-{
- int ret = 0;
-
- /* Register eMMC - SDIO2 */
- ret = kona_sdhci_init(1, 400000, 0);
- if (ret)
- return ret;
-
- /* Register SD Card - SDIO4 kona_mmc_init assumes 0 based index */
- ret = kona_sdhci_init(3, 400000, 0);
- return ret;
-}
-#endif
-
-#ifdef CONFIG_USB_GADGET
-static struct dwc2_plat_otg_data bcm_otg_data = {
- .regs_otg = HSOTG_BASE_ADDR
-};
-
-int board_usb_init(int index, enum usb_init_type init)
-{
- debug("%s: performing dwc2_udc_probe\n", __func__);
- return dwc2_udc_probe(&bcm_otg_data);
-}
-
-int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name)
-{
- debug("%s\n", __func__);
- if (!env_get("serial#"))
- g_dnl_set_serialnumber(CONFIG_USB_SERIALNO);
- return 0;
-}
-
-int g_dnl_get_board_bcd_device_number(int gcnum)
-{
- debug("%s\n", __func__);
- return 1;
-}
-
-int board_usb_cleanup(int index, enum usb_init_type init)
-{
- debug("%s\n", __func__);
- return 0;
-}
-#endif
diff --git a/board/broadcom/bcm28155_ap/Kconfig b/board/broadcom/bcm28155_ap/Kconfig
deleted file mode 100644
index f1b4e089411..00000000000
--- a/board/broadcom/bcm28155_ap/Kconfig
+++ /dev/null
@@ -1,15 +0,0 @@
-if TARGET_BCM28155_AP
-
-config SYS_BOARD
- default "bcm28155_ap"
-
-config SYS_VENDOR
- default "broadcom"
-
-config SYS_SOC
- default "bcm281xx"
-
-config SYS_CONFIG_NAME
- default "bcm28155_ap"
-
-endif
diff --git a/board/broadcom/bcm28155_ap/MAINTAINERS b/board/broadcom/bcm28155_ap/MAINTAINERS
deleted file mode 100644
index e1e99d0784f..00000000000
--- a/board/broadcom/bcm28155_ap/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM28155_AP BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcm28155_ap/
-F: include/configs/bcm28155_ap.h
-F: configs/bcm28155_ap_defconfig
diff --git a/board/broadcom/bcm28155_ap/Makefile b/board/broadcom/bcm28155_ap/Makefile
deleted file mode 100644
index 06eba8fbfde..00000000000
--- a/board/broadcom/bcm28155_ap/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0+
-#
-# Copyright 2013 Broadcom Corporation.
-
-obj-y += bcm28155_ap.o
diff --git a/board/broadcom/bcm28155_ap/bcm28155_ap.c b/board/broadcom/bcm28155_ap/bcm28155_ap.c
deleted file mode 100644
index 40ced1a87ce..00000000000
--- a/board/broadcom/bcm28155_ap/bcm28155_ap.c
+++ /dev/null
@@ -1,130 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright 2013 Broadcom Corporation.
- */
-
-#include <common.h>
-#include <init.h>
-#include <asm/io.h>
-#include <asm/mach-types.h>
-#include <env.h>
-#include <mmc.h>
-#include <asm/kona-common/kona_sdhci.h>
-#include <asm/kona-common/clk.h>
-#include <asm/arch/sysmap.h>
-
-#include <usb.h>
-#include <usb/dwc2_udc.h>
-#include <g_dnl.h>
-
-#define SECWATCHDOG_SDOGCR_OFFSET 0x00000000
-#define SECWATCHDOG_SDOGCR_EN_SHIFT 27
-#define SECWATCHDOG_SDOGCR_SRSTEN_SHIFT 26
-#define SECWATCHDOG_SDOGCR_CLKS_SHIFT 20
-#define SECWATCHDOG_SDOGCR_LD_SHIFT 0
-
-#ifndef CONFIG_USB_SERIALNO
-#define CONFIG_USB_SERIALNO "1234567890"
-#endif
-
-DECLARE_GLOBAL_DATA_PTR;
-
-/*
- * board_init - early hardware init
- */
-int board_init(void)
-{
- printf("Relocation Offset is: %08lx\n", gd->reloc_off);
-
- /* adress of boot parameters */
- gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100;
-
- clk_init();
-
- return 0;
-}
-
-/*
- * misc_init_r - miscellaneous platform dependent initializations
- */
-int misc_init_r(void)
-{
- /* Disable watchdog reset - watchdog unused */
- writel((0 << SECWATCHDOG_SDOGCR_EN_SHIFT) |
- (0 << SECWATCHDOG_SDOGCR_SRSTEN_SHIFT) |
- (4 << SECWATCHDOG_SDOGCR_CLKS_SHIFT) |
- (0x5a0 << SECWATCHDOG_SDOGCR_LD_SHIFT),
- (SECWD_BASE_ADDR + SECWATCHDOG_SDOGCR_OFFSET));
-
- return 0;
-}
-
-/*
- * dram_init - sets uboots idea of sdram size
- */
-int dram_init(void)
-{
- gd->ram_size = get_ram_size((long *)CONFIG_SYS_SDRAM_BASE,
- CONFIG_SYS_SDRAM_SIZE);
- return 0;
-}
-
-/* This is called after dram_init() so use get_ram_size result */
-int dram_init_banksize(void)
-{
- gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE;
- gd->bd->bi_dram[0].size = gd->ram_size;
-
- return 0;
-}
-
-#ifdef CONFIG_MMC_SDHCI_KONA
-/*
- * mmc_init - Initializes mmc
- */
-int board_mmc_init(bd_t *bis)
-{
- int ret = 0;
-
- /* Register eMMC - SDIO2 */
- ret = kona_sdhci_init(1, 400000, 0);
- if (ret)
- return ret;
-
- /* Register SD Card - SDIO4 kona_mmc_init assumes 0 based index */
- ret = kona_sdhci_init(3, 400000, 0);
- return ret;
-}
-#endif
-
-#ifdef CONFIG_USB_GADGET
-static struct dwc2_plat_otg_data bcm_otg_data = {
- .regs_otg = HSOTG_BASE_ADDR
-};
-
-int board_usb_init(int index, enum usb_init_type init)
-{
- debug("%s: performing dwc2_udc_probe\n", __func__);
- return dwc2_udc_probe(&bcm_otg_data);
-}
-
-int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name)
-{
- debug("%s\n", __func__);
- if (!env_get("serial#"))
- g_dnl_set_serialnumber(CONFIG_USB_SERIALNO);
- return 0;
-}
-
-int g_dnl_get_board_bcd_device_number(int gcnum)
-{
- debug("%s\n", __func__);
- return 1;
-}
-
-int board_usb_cleanup(int index, enum usb_init_type init)
-{
- debug("%s\n", __func__);
- return 0;
-}
-#endif
diff --git a/board/broadcom/bcm28155_w1d/MAINTAINERS b/board/broadcom/bcm28155_w1d/MAINTAINERS
deleted file mode 100644
index c0558e7f255..00000000000
--- a/board/broadcom/bcm28155_w1d/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM28155_W1D BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcm28155_ap/
-F: include/configs/bcm28155_ap.h
-F: configs/bcm28155_w1d_defconfig
diff --git a/board/broadcom/bcm911360_entphn-ns/MAINTAINERS b/board/broadcom/bcm911360_entphn-ns/MAINTAINERS
deleted file mode 100644
index 8b831d8cb7a..00000000000
--- a/board/broadcom/bcm911360_entphn-ns/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM911360_ENTPHN-NS BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcmcygnus/
-F: include/configs/bcm_ep_board.h
-F: configs/bcm911360_entphn-ns_defconfig
diff --git a/board/broadcom/bcm911360_entphn/MAINTAINERS b/board/broadcom/bcm911360_entphn/MAINTAINERS
deleted file mode 100644
index d4f6aefe488..00000000000
--- a/board/broadcom/bcm911360_entphn/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM911360_ENTPHN BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcmcygnus/
-F: include/configs/bcm_ep_board.h
-F: configs/bcm911360_entphn_defconfig
diff --git a/board/broadcom/bcm911360k/MAINTAINERS b/board/broadcom/bcm911360k/MAINTAINERS
deleted file mode 100644
index 32e60327cfc..00000000000
--- a/board/broadcom/bcm911360k/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM911360K BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcmcygnus/
-F: include/configs/bcm_ep_board.h
-F: configs/bcm911360k_defconfig
diff --git a/board/broadcom/bcm958300k-ns/MAINTAINERS b/board/broadcom/bcm958300k-ns/MAINTAINERS
deleted file mode 100644
index 237d3446292..00000000000
--- a/board/broadcom/bcm958300k-ns/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM958300K-NS BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcmcygnus/
-F: include/configs/bcm_ep_board.h
-F: configs/bcm958300k-ns_defconfig
diff --git a/board/broadcom/bcm958300k/MAINTAINERS b/board/broadcom/bcm958300k/MAINTAINERS
deleted file mode 100644
index bbb6d64e1f0..00000000000
--- a/board/broadcom/bcm958300k/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM958300K BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcmcygnus/
-F: include/configs/bcm_ep_board.h
-F: configs/bcm958300k_defconfig
diff --git a/board/broadcom/bcm958305k/MAINTAINERS b/board/broadcom/bcm958305k/MAINTAINERS
deleted file mode 100644
index 5ca0effc00d..00000000000
--- a/board/broadcom/bcm958305k/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM958305K BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcmcygnus/
-F: include/configs/bcm_ep_board.h
-F: configs/bcm958305k_defconfig
diff --git a/board/broadcom/bcm958622hr/MAINTAINERS b/board/broadcom/bcm958622hr/MAINTAINERS
deleted file mode 100644
index de44dd11598..00000000000
--- a/board/broadcom/bcm958622hr/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM958622HR BOARD
-M: Steve Rae <steve.rae@raedomain.com>
-S: Maintained
-F: board/broadcom/bcmnsp/
-F: include/configs/bcm_ep_board.h
-F: configs/bcm958622hr_defconfig
diff --git a/board/broadcom/bcm958712k/MAINTAINERS b/board/broadcom/bcm958712k/MAINTAINERS
deleted file mode 100644
index 024fb1447d2..00000000000
--- a/board/broadcom/bcm958712k/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-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
diff --git a/board/broadcom/bcm963158/Kconfig b/board/broadcom/bcm963158/Kconfig
deleted file mode 100644
index 08a8bc1c14d..00000000000
--- a/board/broadcom/bcm963158/Kconfig
+++ /dev/null
@@ -1,17 +0,0 @@
-if TARGET_BCM963158
-
-config SYS_VENDOR
- default "broadcom"
-
-config SYS_BOARD
- default "bcm963158"
-
-config SYS_CONFIG_NAME
- default "broadcom_bcm963158"
-
-endif
-
-config TARGET_BCM963158
- bool "Support Broadcom bcm963158"
- depends on ARCH_BCM63158
- select ARM64
diff --git a/board/broadcom/bcm963158/MAINTAINERS b/board/broadcom/bcm963158/MAINTAINERS
deleted file mode 100644
index d28d971f9d3..00000000000
--- a/board/broadcom/bcm963158/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BROADCOM BCM963158
-M: Philippe Reynes <philippe.reynes@softathome.com>
-S: Maintained
-F: board/broadcom/bcm963158/
-F: include/configs/broadcom_bcm963158.h
-F: configs/bcm963158_ram_defconfig
diff --git a/board/broadcom/bcm963158/Makefile b/board/broadcom/bcm963158/Makefile
deleted file mode 100644
index 0a902c9cf61..00000000000
--- a/board/broadcom/bcm963158/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0+
-
-obj-y += bcm963158.o
diff --git a/board/broadcom/bcm963158/bcm963158.c b/board/broadcom/bcm963158/bcm963158.c
deleted file mode 100644
index db82cd570d6..00000000000
--- a/board/broadcom/bcm963158/bcm963158.c
+++ /dev/null
@@ -1,61 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright (C) 2019 Philippe Reynes <philippe.reynes@softathome.com>
- */
-
-#include <common.h>
-#include <fdtdec.h>
-#include <linux/io.h>
-
-#ifdef CONFIG_ARM64
-#include <asm/armv8/mmu.h>
-
-static struct mm_region broadcom_bcm963158_mem_map[] = {
- {
- /* RAM */
- .virt = 0x00000000UL,
- .phys = 0x00000000UL,
- .size = 8UL * SZ_1G,
- .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
- PTE_BLOCK_INNER_SHARE
- }, {
- /* SoC */
- .virt = 0x80000000UL,
- .phys = 0x80000000UL,
- .size = 0xff80000000UL,
- .attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
- PTE_BLOCK_NON_SHARE |
- PTE_BLOCK_PXN | PTE_BLOCK_UXN
- }, {
- /* List terminator */
- 0,
- }
-};
-
-struct mm_region *mem_map = broadcom_bcm963158_mem_map;
-#endif
-
-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;
-}
diff --git a/board/broadcom/bcm968360bg/Kconfig b/board/broadcom/bcm968360bg/Kconfig
deleted file mode 100644
index dd372f126ae..00000000000
--- a/board/broadcom/bcm968360bg/Kconfig
+++ /dev/null
@@ -1,17 +0,0 @@
-if ARCH_BCM68360
-
-config SYS_VENDOR
- default "broadcom"
-
-config SYS_BOARD
- default "bcm968360bg"
-
-config SYS_CONFIG_NAME
- default "broadcom_bcm968360bg"
-
-endif
-
-config TARGET_BCM968360BG
- bool "Support Broadcom bcm968360bg"
- depends on ARCH_BCM68360
- select ARM64
diff --git a/board/broadcom/bcm968360bg/MAINTAINERS b/board/broadcom/bcm968360bg/MAINTAINERS
deleted file mode 100644
index cfcbbc51f8e..00000000000
--- a/board/broadcom/bcm968360bg/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM968360BG BOARD
-M: Philippe Reynes <philippe.reynes@softathome.com>
-S: Maintained
-F: board/broadcom/bcm968360bg
-F: include/configs/broadcom_bcm968360bg.h
-F: configs/bcm968360bg_ram_defconfig
diff --git a/board/broadcom/bcm968360bg/Makefile b/board/broadcom/bcm968360bg/Makefile
deleted file mode 100644
index d099c1cf356..00000000000
--- a/board/broadcom/bcm968360bg/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0+
-
-obj-y += bcm968360bg.o
diff --git a/board/broadcom/bcm968360bg/bcm968360bg.c b/board/broadcom/bcm968360bg/bcm968360bg.c
deleted file mode 100644
index a5fbc1d297c..00000000000
--- a/board/broadcom/bcm968360bg/bcm968360bg.c
+++ /dev/null
@@ -1,61 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright (C) 2020 Philippe Reynes <philippe.reynes@softathome.com>
- */
-
-#include <common.h>
-#include <fdtdec.h>
-#include <linux/io.h>
-
-#ifdef CONFIG_ARM64
-#include <asm/armv8/mmu.h>
-
-static struct mm_region broadcom_bcm968360bg_mem_map[] = {
- {
- /* RAM */
- .virt = 0x00000000UL,
- .phys = 0x00000000UL,
- .size = 8UL * SZ_1G,
- .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
- PTE_BLOCK_INNER_SHARE
- }, {
- /* SoC */
- .virt = 0x80000000UL,
- .phys = 0x80000000UL,
- .size = 0xff80000000UL,
- .attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
- PTE_BLOCK_NON_SHARE |
- PTE_BLOCK_PXN | PTE_BLOCK_UXN
- }, {
- /* List terminator */
- 0,
- }
-};
-
-struct mm_region *mem_map = broadcom_bcm968360bg_mem_map;
-#endif
-
-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;
-}
diff --git a/board/broadcom/bcm968380gerg/Makefile b/board/broadcom/bcm968380gerg/Makefile
deleted file mode 100644
index a525b7b9b36..00000000000
--- a/board/broadcom/bcm968380gerg/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0+
-
-obj-y += bcm968380gerg.o
diff --git a/board/broadcom/bcm968380gerg/bcm968380gerg.c b/board/broadcom/bcm968380gerg/bcm968380gerg.c
deleted file mode 100644
index 044b3554ba1..00000000000
--- a/board/broadcom/bcm968380gerg/bcm968380gerg.c
+++ /dev/null
@@ -1,6 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright (C) 2018 Philippe Reynes <philippe.reynes@softathome.com>
- */
-
-#include <common.h>
diff --git a/board/broadcom/bcm968380gerg/board.c b/board/broadcom/bcm968380gerg/board.c
deleted file mode 100644
index 044b3554ba1..00000000000
--- a/board/broadcom/bcm968380gerg/board.c
+++ /dev/null
@@ -1,6 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright (C) 2018 Philippe Reynes <philippe.reynes@softathome.com>
- */
-
-#include <common.h>
diff --git a/board/broadcom/bcm968580xref/Kconfig b/board/broadcom/bcm968580xref/Kconfig
deleted file mode 100644
index b5730367a2d..00000000000
--- a/board/broadcom/bcm968580xref/Kconfig
+++ /dev/null
@@ -1,17 +0,0 @@
-if ARCH_BCM6858
-
-config SYS_VENDOR
- default "broadcom"
-
-config SYS_BOARD
- default "bcm968580xref"
-
-config SYS_CONFIG_NAME
- default "broadcom_bcm968580xref"
-
-endif
-
-config TARGET_BCM968580XREF
- bool "Support Broadcom bcm968580xref"
- depends on ARCH_BCM6858
- select ARM64
diff --git a/board/broadcom/bcm968580xref/MAINTAINERS b/board/broadcom/bcm968580xref/MAINTAINERS
deleted file mode 100644
index 5ee0c4dd4e4..00000000000
--- a/board/broadcom/bcm968580xref/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BCM968580XREF BOARD
-M: Philippe Reynes <philippe.reynes@softathome.com>
-S: Maintained
-F: board/broadcom/bcm968580xref/
-F: include/configs/broadcom_bcm968580xref.h
-F: configs/bcm968580xref_ram_defconfig
diff --git a/board/broadcom/bcm968580xref/Makefile b/board/broadcom/bcm968580xref/Makefile
deleted file mode 100644
index 5cd393b1962..00000000000
--- a/board/broadcom/bcm968580xref/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0+
-
-obj-y += bcm968580xref.o
diff --git a/board/broadcom/bcm968580xref/bcm968580xref.c b/board/broadcom/bcm968580xref/bcm968580xref.c
deleted file mode 100644
index 2e547f51708..00000000000
--- a/board/broadcom/bcm968580xref/bcm968580xref.c
+++ /dev/null
@@ -1,61 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright (C) 2018 Philippe Reynes <philippe.reynes@softathome.com>
- */
-
-#include <common.h>
-#include <fdtdec.h>
-#include <linux/io.h>
-
-#ifdef CONFIG_ARM64
-#include <asm/armv8/mmu.h>
-
-static struct mm_region broadcom_bcm968580xref_mem_map[] = {
- {
- /* RAM */
- .virt = 0x00000000UL,
- .phys = 0x00000000UL,
- .size = 8UL * SZ_1G,
- .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
- PTE_BLOCK_INNER_SHARE
- }, {
- /* SoC */
- .virt = 0x80000000UL,
- .phys = 0x80000000UL,
- .size = 0xff80000000UL,
- .attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
- PTE_BLOCK_NON_SHARE |
- PTE_BLOCK_PXN | PTE_BLOCK_UXN
- }, {
- /* List terminator */
- 0,
- }
-};
-
-struct mm_region *mem_map = broadcom_bcm968580xref_mem_map;
-#endif
-
-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;
-}
diff --git a/board/broadcom/bcm_ep/board.c b/board/broadcom/bcm_ep/board.c
deleted file mode 100644
index e4dbe426490..00000000000
--- a/board/broadcom/bcm_ep/board.c
+++ /dev/null
@@ -1,83 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright 2014 Broadcom Corporation.
- */
-
-#include <common.h>
-#include <cpu_func.h>
-#include <init.h>
-#include <asm/io.h>
-#include <config.h>
-#include <netdev.h>
-#include <asm/system.h>
-#include <asm/iproc-common/armpll.h>
-
-DECLARE_GLOBAL_DATA_PTR;
-
-/*
- * board_init - early hardware init
- */
-int board_init(void)
-{
- /*
- * Address of boot parameters passed to kernel
- * Use default offset 0x100
- */
- gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100;
-
- return 0;
-}
-
-/*
- * dram_init - sets u-boot's idea of sdram size
- */
-int dram_init(void)
-{
- gd->ram_size = get_ram_size((long *)CONFIG_SYS_SDRAM_BASE,
- CONFIG_SYS_SDRAM_SIZE);
- return 0;
-}
-
-int dram_init_banksize(void)
-{
- gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE;
- gd->bd->bi_dram[0].size = gd->ram_size;
-
- return 0;
-}
-
-int board_early_init_f(void)
-{
- uint32_t status = 0;
-
- /* Setup PLL if required */
-#if defined(CONFIG_ARMCLK)
- armpll_config(CONFIG_ARMCLK);
-#endif
-
- return status;
-}
-
-#ifdef CONFIG_ARMV7_NONSEC
-void smp_set_core_boot_addr(unsigned long addr, int corenr)
-{
-}
-
-void smp_kick_all_cpus(void)
-{
-}
-
-void smp_waitloop(unsigned previous_address)
-{
-}
-#endif
-
-#ifdef CONFIG_BCM_SF2_ETH
-int board_eth_init(bd_t *bis)
-{
- int rc = -1;
- printf("Registering BCM sf2 eth\n");
- rc = bcm_sf2_eth_register(bis, 0);
- return rc;
-}
-#endif
diff --git a/board/broadcom/bcmbca/Kconfig b/board/broadcom/bcmbca/Kconfig
new file mode 100644
index 00000000000..5903a6a786f
--- /dev/null
+++ b/board/broadcom/bcmbca/Kconfig
@@ -0,0 +1,115 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
+# (C) Copyright 2022 Broadcom Ltd
+#
+
+config SYS_BOARD
+ default "bcmbca"
+
+config SYS_VENDOR
+ default "broadcom"
+
+if TARGET_BCM947622
+
+config SYS_CONFIG_NAME
+ default "bcm947622"
+
+endif
+
+if TARGET_BCM94908
+
+config SYS_CONFIG_NAME
+ default "bcm94908"
+
+endif
+
+if TARGET_BCM94912
+
+config SYS_CONFIG_NAME
+ default "bcm94912"
+
+endif
+
+if TARGET_BCM963138
+
+config SYS_CONFIG_NAME
+ default "bcm963138"
+
+endif
+
+if TARGET_BCM963146
+
+config SYS_CONFIG_NAME
+ default "bcm963146"
+
+endif
+
+if TARGET_BCM963148
+
+config SYS_CONFIG_NAME
+ default "bcm963148"
+
+endif
+
+if TARGET_BCM963158
+
+config SYS_CONFIG_NAME
+ default "bcm963158"
+
+endif
+
+if TARGET_BCM963178
+
+config SYS_CONFIG_NAME
+ default "bcm963178"
+
+endif
+
+if TARGET_BCM96756
+
+config SYS_CONFIG_NAME
+ default "bcm96756"
+
+endif
+
+if TARGET_BCM96813
+
+config SYS_CONFIG_NAME
+ default "bcm96813"
+
+endif
+
+if TARGET_BCM96846
+
+config SYS_CONFIG_NAME
+ default "bcm96846"
+
+endif
+
+if TARGET_BCM96855
+
+config SYS_CONFIG_NAME
+ default "bcm96855"
+
+endif
+
+if TARGET_BCM96856
+
+config SYS_CONFIG_NAME
+ default "bcm96856"
+
+endif
+
+if TARGET_BCM96858
+
+config SYS_CONFIG_NAME
+ default "bcm96858"
+
+endif
+
+if TARGET_BCM96878
+
+config SYS_CONFIG_NAME
+ default "bcm96878"
+
+endif
diff --git a/board/broadcom/bcm_ep/Makefile b/board/broadcom/bcmbca/Makefile
index 29a3ea7eda1..8f06c3111b9 100644
--- a/board/broadcom/bcm_ep/Makefile
+++ b/board/broadcom/bcmbca/Makefile
@@ -1,5 +1,5 @@
# SPDX-License-Identifier: GPL-2.0+
#
-# Copyright 2014 Broadcom Corporation.
+# (C) Copyright 2022 Broadcom Ltd
obj-y += board.o
diff --git a/board/broadcom/bcmbca/board.c b/board/broadcom/bcmbca/board.c
new file mode 100644
index 00000000000..1ab6224011c
--- /dev/null
+++ b/board/broadcom/bcmbca/board.c
@@ -0,0 +1,29 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * (C) Copyright 2022 Broadcom Ltd.
+ */
+
+#include <fdtdec.h>
+
+int dram_init(void)
+{
+ if (fdtdec_setup_mem_size_base() != 0)
+ puts("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;
+}
+
+__weak void reset_cpu(void)
+{
+}
diff --git a/board/broadcom/bcmcygnus/Kconfig b/board/broadcom/bcmcygnus/Kconfig
deleted file mode 100644
index faba4cf82b1..00000000000
--- a/board/broadcom/bcmcygnus/Kconfig
+++ /dev/null
@@ -1,15 +0,0 @@
-if TARGET_BCMCYGNUS
-
-config SYS_BOARD
- default "bcm_ep"
-
-config SYS_VENDOR
- default "broadcom"
-
-config SYS_SOC
- default "bcmcygnus"
-
-config SYS_CONFIG_NAME
- default "bcm_ep_board"
-
-endif
diff --git a/board/broadcom/bcmns/Kconfig b/board/broadcom/bcmns/Kconfig
new file mode 100644
index 00000000000..82f4709e2d2
--- /dev/null
+++ b/board/broadcom/bcmns/Kconfig
@@ -0,0 +1,12 @@
+if TARGET_BCMNS
+
+config SYS_BOARD
+ default "bcmns"
+
+config SYS_VENDOR
+ default "broadcom"
+
+config SYS_CONFIG_NAME
+ default "bcmns"
+
+endif
diff --git a/board/broadcom/bcmns/MAINTAINERS b/board/broadcom/bcmns/MAINTAINERS
new file mode 100644
index 00000000000..63c6d8bb4ac
--- /dev/null
+++ b/board/broadcom/bcmns/MAINTAINERS
@@ -0,0 +1,6 @@
+BCMNS BOARD
+M: Linus Walleij <linus.walleij@linaro.org>
+S: Maintained
+F: board/broadcom/bcmns/
+F: configs/bcmns_defconfig
+F: include/configs/bcmns.h
diff --git a/board/broadcom/bcmns/Makefile b/board/broadcom/bcmns/Makefile
new file mode 100644
index 00000000000..8a6a8543a90
--- /dev/null
+++ b/board/broadcom/bcmns/Makefile
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+obj-y := ns.o
diff --git a/board/broadcom/bcmns/ns.c b/board/broadcom/bcmns/ns.c
new file mode 100644
index 00000000000..47a01227a35
--- /dev/null
+++ b/board/broadcom/bcmns/ns.c
@@ -0,0 +1,54 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Broadcom Northstar generic board set-up code
+ * Copyright (C) 2023 Linus Walleij <linus.walleij@linaro.org>
+ */
+
+#include <dm.h>
+#include <init.h>
+#include <log.h>
+#include <ram.h>
+#include <serial.h>
+#include <asm/global_data.h>
+#include <asm/io.h>
+#include <asm/armv7m.h>
+
+DECLARE_GLOBAL_DATA_PTR;
+
+int dram_init(void)
+{
+ return fdtdec_setup_mem_size_base();
+}
+
+int dram_init_banksize(void)
+{
+ return fdtdec_setup_memory_banksize();
+}
+
+int board_late_init(void)
+{
+ /* LEDs etc can be initialized here */
+ return 0;
+}
+
+void reset_cpu(void)
+{
+}
+
+int print_cpuinfo(void)
+{
+ printf("BCMNS Northstar SoC\n");
+ return 0;
+}
+
+int misc_init_r(void)
+{
+ return 0;
+}
+
+int ft_board_setup(void *fdt, struct bd_info *bd)
+{
+ printf("Northstar board setup: DTB at 0x%08lx\n", (ulong)fdt);
+ return 0;
+}
+
diff --git a/board/broadcom/bcmns2/Kconfig b/board/broadcom/bcmns2/Kconfig
deleted file mode 100644
index 3ac67249c4d..00000000000
--- a/board/broadcom/bcmns2/Kconfig
+++ /dev/null
@@ -1,15 +0,0 @@
-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
diff --git a/board/broadcom/bcmns2/Makefile b/board/broadcom/bcmns2/Makefile
deleted file mode 100644
index 29274bd106c..00000000000
--- a/board/broadcom/bcmns2/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0+
-#
-# Copyright 2016 Broadcom Ltd.
-
-obj-y := northstar2.o
diff --git a/board/broadcom/bcmns2/northstar2.c b/board/broadcom/bcmns2/northstar2.c
deleted file mode 100644
index 6cbad9c1f0a..00000000000
--- a/board/broadcom/bcmns2/northstar2.c
+++ /dev/null
@@ -1,61 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * (C) Copyright 2016 Broadcom Ltd.
- */
-#include <common.h>
-#include <cpu_func.h>
-#include <init.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;
-}
-
-int 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;
-
- return 0;
-}
-
-void reset_cpu(ulong addr)
-{
- psci_system_reset();
-}
diff --git a/board/broadcom/bcmns3/Kconfig b/board/broadcom/bcmns3/Kconfig
new file mode 100644
index 00000000000..cb73f98eaee
--- /dev/null
+++ b/board/broadcom/bcmns3/Kconfig
@@ -0,0 +1,22 @@
+if TARGET_BCMNS3
+
+config SYS_BOARD
+ default "bcmns3"
+
+config SYS_VENDOR
+ default "broadcom"
+
+config SYS_SOC
+ default "bcmns3"
+
+config SYS_CONFIG_NAME
+ default "bcm_ns3"
+
+config CMD_BCM_EXT_UTILS
+ bool "Enable Broadcom-specific U-Boot commands"
+ default y
+ help
+ Enable Broadcom specific U-Boot commands such as error log setup
+ command or any other commands specific to NS3 platform.
+
+endif
diff --git a/board/broadcom/bcmns3/Makefile b/board/broadcom/bcmns3/Makefile
new file mode 100644
index 00000000000..34042601481
--- /dev/null
+++ b/board/broadcom/bcmns3/Makefile
@@ -0,0 +1,5 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
+# Copyright 2020 Broadcom.
+
+obj-y := ns3.o
diff --git a/board/broadcom/bcmns3/fit/keys/dev.crt b/board/broadcom/bcmns3/fit/keys/dev.crt
new file mode 100644
index 00000000000..75b75db95c9
--- /dev/null
+++ b/board/broadcom/bcmns3/fit/keys/dev.crt
@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIDXTCCAkWgAwIBAgIJAJgq/5aiJttEMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV
+BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX
+aWRnaXRzIFB0eSBMdGQwHhcNMTgwOTE5MDkzMzEwWhcNMTgxMDE5MDkzMzEwWjBF
+MQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50
+ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
+CgKCAQEAzeMQ92YqrejtMCfxjDyHvDW34ATozXSlWsudR+AyCSuJVAIoHEenVh+/
+PuT0+/EMiwsUnLXYBeOsIXDW3k3eHgm88ccb+0g9J6mlHqMaN0tXP+Ua2GFEk2Wv
+5Bj5QynorOPoaWL/ecWus2Bvkmyt2pvIpaTjmkUKZ9al3z8WyS6wFlFitXyOWFcK
+7Xkl43cOHxYAfbny5loWYDCgpkV+dgYZOoCEmL+Y9HfrQ+uBKGducpzNKeQjX9bn
+UT9cleCtHZx0uY4wSGNgfmUMy7oUyVZhFpmjlcfjcfNFcBcoVF6StluoL6v1KRbH
+4xJDD/UCn2Uk0S6Zpd7TRc26faOtfwIDAQABo1AwTjAdBgNVHQ4EFgQUZk/KKaWG
+p4BtksPdQ8FLzWL/gAIwHwYDVR0jBBgwFoAUZk/KKaWGp4BtksPdQ8FLzWL/gAIw
+DAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAPNveTvOC2bw91cUN1e+B
+95qFp2Xd5XGiV35F10dT3VN/Iv2dzHlThq7xaJGkA53lHIXgLUUfnDTHJmoluw+t
+UCpG8OWCxM0FbT8ZnXR4SmHK8k4yb7iZa7iu+Ey5B6F3247gJpEl+1iYxus0lqQW
+E9dTwMf1YP9Jdf+dRoLKAAI0n5J1PMuseQkGdlRBNUcEg+kXqBSz5hq0xkuPRtey
+GiAvpg3G93ft84Q4ov7IjAhJkY7whm6WktisU8mFPru3e9EouxjVtAvu6s9gQThm
+pvn6hSL2/3gEOP3v9yBsH6//SOgNdVBGZIdX+HkvD8NZLftbIrDaeL/IfKUm/zXB
+zA==
+-----END CERTIFICATE-----
diff --git a/board/broadcom/bcmns3/fit/keys/dev.key b/board/broadcom/bcmns3/fit/keys/dev.key
new file mode 100644
index 00000000000..55b7033e9f9
--- /dev/null
+++ b/board/broadcom/bcmns3/fit/keys/dev.key
@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDN4xD3Ziqt6O0w
+J/GMPIe8NbfgBOjNdKVay51H4DIJK4lUAigcR6dWH78+5PT78QyLCxSctdgF46wh
+cNbeTd4eCbzxxxv7SD0nqaUeoxo3S1c/5RrYYUSTZa/kGPlDKeis4+hpYv95xa6z
+YG+SbK3am8ilpOOaRQpn1qXfPxbJLrAWUWK1fI5YVwrteSXjdw4fFgB9ufLmWhZg
+MKCmRX52Bhk6gISYv5j0d+tD64EoZ25ynM0p5CNf1udRP1yV4K0dnHS5jjBIY2B+
+ZQzLuhTJVmEWmaOVx+Nx80VwFyhUXpK2W6gvq/UpFsfjEkMP9QKfZSTRLpml3tNF
+zbp9o61/AgMBAAECggEBAJ/TZClZk0ob5nyalWVS29/cJ5hs1zgfE/nu1HKmdNEv
+jdS8M9z4Nsuhq3msjQ1Da4RInsCkXUT9H3N6QCKkeggBcT6TXYJs6qRuijLFVKWW
+A+4i8PsGTxDJQIimZmGgF/KWnaWp5z7lmZ+//fzCBxgMFO+Zl+H7NH+1XmB2fj6/
+bfgnxLbiIqq/2oVJfdjA1Zs2ie3SE5U2hPNiE6TIajFS0PxUOGrojsSQ8z+gfqs3
+hyqo9msAqNQciT79vyXp+3HsxZo9rq5Tk5OtCEfgu0GED/d4/FHbDrZT3TorVYXr
+Z3dADxvnnJfBdlQIMetCy/X8z2vKRRXaoWpqg1aiFVECgYEA7Ap5D4nvOie2NXgI
+gMPzuYtpH4uF/cZMLGxTKZ3NG4RH6oVUdd4whETXfzBJdnJbIXDTphoHxjUhpGh8
+Ga+U1iqjp9c6Nd8ueVp/c5T1bD8/2RG0QM4iWgPbZDKtj1MqRg7vwAfpJ3kOIc/5
+bKJ4jAopNJMChL6vAZ9+ShPsRqkCgYEA30vbj6K7/giclJnyWkluQTqS8X/XjdAf
+F5PkCBHGJnYxkDSzWPq7O5E1wYqTAou1U6nNNoUvZZdpRvo39NSrMCaagQ7GE+xA
+j/h7tinD/lPlvoW9N4f4ddqWzsmf7I8OGZtP4IwVi9Pms+zPtrQ7TvuPT4UHTH2E
+eE1hlJtic+cCgYEA6oKdNGr+WvEJfqX7DLOiej2f+89LGI7jL1+QYFB/b09FhCNj
+fpd57G/ZCmyXEC8di2PlY6mI/8vZ2NZWNc7UONO0NRUIqG1MZxUae2MLUrikXq3Q
+QHKMfpJGbo5LEZK29VPxrwAtDSKgf8d5MA1bZwbRWYKVhf1NMnebqU2R+cECgYEA
+kOTKXhP85MR1xj928XtAnfcCLs8D8jOgWU5P46SU7ZQ4aRipYA2ivO5m8WWYK0i4
+qsc+MCiQLt3nJHVtJeNyCdai3yfVBEyDQGi+7d+AHGIYbF6f/46tfNwQi7JtobTa
+M2eCl3SO7qLbytjZl/avnXrC7Zimuc2gzed4cFO7uPUCgYAo66MLtRWLdHqPDTaa
+WhSQZkdKfZxlWNP6XIpBgHnYDIQGZddrjv+zZVFRxLCduh1v8xybbSDKwRkGuXVb
+eTQHP2Nc5XsOopCSsDP0v0dUxaOu14C0jJJG2E+EhJsWJ2Eua7o40LEIX2WY7N7f
+UqR3bLO5Qh/1OOwJj5WbpzkMwA==
+-----END PRIVATE KEY-----
diff --git a/board/broadcom/bcmns3/fit/multi.its b/board/broadcom/bcmns3/fit/multi.its
new file mode 100644
index 00000000000..a0ff4bc9083
--- /dev/null
+++ b/board/broadcom/bcmns3/fit/multi.its
@@ -0,0 +1,59 @@
+/*
+ * U-Boot uImage source file with multiple kernels, ramdisks and FDT blobs
+ */
+
+/dts-v1/;
+
+/ {
+ description = "Various kernels, ramdisks and FDT blobs";
+ #address-cells = <1>;
+
+ images {
+ kernel {
+ description = "Linux kernel Image";
+ data = /incbin/("./Image");
+ type = "kernel";
+ arch = "arm64";
+ os = "linux";
+ compression = "none";
+ load = <0x80080000>;
+ entry = <0x80080000>;
+ hash-1 {
+ algo = "sha1";
+ };
+ signature {
+ algo = "sha1,rsa2048";
+ key-name-hint = "dev";
+ };
+ };
+
+ fdt-ns3 {
+ description = "FDT Blob";
+ data = /incbin/("./dt-blob.bin");
+ type = "flat_dt";
+ arch = "arm64";
+ compression = "none";
+ hash-1 {
+ algo = "sha1";
+ };
+ signature {
+ algo = "sha1,rsa2048";
+ key-name-hint = "dev";
+ };
+ };
+ };
+
+ configurations {
+ default = "config-ns3";
+ config-ns3 {
+ description = "FIT1 configuration";
+ kernel = "kernel";
+ fdt = "fdt-ns3";
+ signature {
+ algo = "sha1,rsa2048";
+ key-name-hint = "dev";
+ sign-images = "fdt", "kernel";
+ };
+ };
+ };
+};
diff --git a/board/broadcom/bcmns3/ns3.c b/board/broadcom/bcmns3/ns3.c
new file mode 100644
index 00000000000..bb2f1e4f62a
--- /dev/null
+++ b/board/broadcom/bcmns3/ns3.c
@@ -0,0 +1,221 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright 2020 Broadcom.
+ *
+ */
+
+#include <fdt_support.h>
+#include <linux/errno.h>
+#include <asm/io.h>
+#include <asm/gic-v3.h>
+#include <asm/global_data.h>
+#include <asm/system.h>
+#include <asm/armv8/mmu.h>
+#include <asm/arch-bcmns3/bl33_info.h>
+#include <dt-bindings/memory/bcm-ns3-mc.h>
+#include <broadcom/chimp.h>
+
+#define BANK_OFFSET(bank) ((u64)BCM_NS3_DDR_INFO_BASE + 8 + ((bank) * 16))
+
+/*
+ * ns3_dram_bank - DDR bank details
+ *
+ * @start: DDR bank start address
+ * @len: DDR bank length
+ */
+struct ns3_dram_bank {
+ u64 start[BCM_NS3_MAX_NR_BANKS];
+ u64 len[BCM_NS3_MAX_NR_BANKS];
+};
+
+/*
+ * ns3_dram_hdr - DDR header info
+ *
+ * @sig: DDR info signature
+ * @bank: DDR bank details
+ */
+struct ns3_dram_hdr {
+ u32 sig;
+ struct ns3_dram_bank bank;
+};
+
+static struct mm_region ns3_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 = BCM_NS3_MEM_START,
+ .phys = BCM_NS3_MEM_START,
+ .size = BCM_NS3_MEM_LEN,
+ .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
+ PTE_BLOCK_INNER_SHARE
+ }, {
+ .virt = BCM_NS3_BANK_1_MEM_START,
+ .phys = BCM_NS3_BANK_1_MEM_START,
+ .size = BCM_NS3_BANK_1_MEM_LEN,
+ .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
+ PTE_BLOCK_INNER_SHARE
+ }, {
+ /* List terminator */
+ 0,
+ }
+};
+
+struct mm_region *mem_map = ns3_mem_map;
+
+DECLARE_GLOBAL_DATA_PTR;
+
+/*
+ * Force the bl33_info to the data-section, as .bss will not be valid
+ * when save_boot_params is invoked.
+ */
+struct bl33_info *bl33_info __section(".data");
+
+/*
+ * Run modulo 256 checksum calculation and return the calculated checksum
+ */
+static u8 checksum_calc(u8 *p, unsigned int len)
+{
+ unsigned int i;
+ u8 chksum = 0;
+
+ for (i = 0; i < len; i++)
+ chksum += p[i];
+
+ return chksum;
+}
+
+/*
+ * This function parses the memory layout information from a reserved area in
+ * DDR, and then fix up the FDT before passing it to Linux.
+ *
+ * In the case of error, do nothing and the default memory layout in DT will
+ * be used
+ */
+static int mem_info_parse_fixup(void *fdt)
+{
+ struct ns3_dram_hdr hdr;
+ u32 *p32, i, nr_banks;
+ u64 *p64;
+
+ /* validate signature */
+ p32 = (u32 *)BCM_NS3_DDR_INFO_BASE;
+ hdr.sig = *p32;
+ if (hdr.sig != BCM_NS3_DDR_INFO_SIG) {
+ printf("DDR info signature 0x%x invalid\n", hdr.sig);
+ return -EINVAL;
+ }
+
+ /* run checksum test to validate data */
+ if (checksum_calc((u8 *)p32, BCM_NS3_DDR_INFO_LEN) != 0) {
+ printf("Checksum on DDR info failed\n");
+ return -EINVAL;
+ }
+
+ /* parse information for each bank */
+ nr_banks = 0;
+ for (i = 0; i < BCM_NS3_MAX_NR_BANKS; i++) {
+ /* skip banks with a length of zero */
+ p64 = (u64 *)BANK_OFFSET(i);
+ if (*(p64 + 1) == 0)
+ continue;
+
+ hdr.bank.start[i] = *p64;
+ hdr.bank.len[i] = *(p64 + 1);
+
+ printf("mem[%u] 0x%llx - 0x%llx\n", i, hdr.bank.start[i],
+ hdr.bank.start[i] + hdr.bank.len[i] - 1);
+ nr_banks++;
+ }
+
+ if (!nr_banks) {
+ printf("No DDR banks detected\n");
+ return -ENOMEM;
+ }
+
+ return fdt_fixup_memory_banks(fdt, hdr.bank.start, hdr.bank.len,
+ nr_banks);
+}
+
+int board_init(void)
+{
+ /* Setup memory using "memory" node from DTB */
+ if (fdtdec_setup_mem_size_base() != 0)
+ return -EINVAL;
+ fdtdec_setup_memory_banksize();
+
+ if (bl33_info->version != BL33_INFO_VERSION)
+ printf("*** warning: ATF BL31 and U-Boot not in sync! ***\n");
+#if IS_ENABLED(CONFIG_BNXT_ETH)
+ if (chimp_fastboot_optee() != 0)
+ printf("*** warning: secure chimp fastboot failed! ***\n");
+#endif
+ return 0;
+}
+
+int board_late_init(void)
+{
+ return 0;
+}
+
+int dram_init(void)
+{
+ /*
+ * Mark ram base as the last 16MB of 2GB DDR, which is 0xFF00_0000.
+ * So that relocation happens with in the last 16MB memory.
+ */
+ gd->ram_base = (phys_size_t)(BCM_NS3_MEM_END - SZ_16M);
+ gd->ram_size = (unsigned long)SZ_16M;
+
+ return 0;
+}
+
+int dram_init_banksize(void)
+{
+ gd->bd->bi_dram[0].start = (BCM_NS3_MEM_END - SZ_16M);
+ gd->bd->bi_dram[0].size = SZ_16M;
+
+ return 0;
+}
+
+/* Limit RAM used by U-Boot to the DDR first bank End region */
+phys_addr_t board_get_usable_ram_top(phys_size_t total_size)
+{
+ return BCM_NS3_MEM_END;
+}
+
+void reset_cpu(void)
+{
+ /* Perform a level 3 reset */
+ psci_system_reset2(3, 0);
+}
+
+#ifdef CONFIG_OF_BOARD_SETUP
+int ft_board_setup(void *fdt, struct bd_info *bd)
+{
+ u32 chimp_hs = CHIMP_HANDSHAKE_WAIT_TIMEOUT;
+
+ /* FIXME: Need to call gic_lpi_tables_init correctly now */
+ printf("%s: failed to init gic-lpi-tables\n", __func__);
+
+ /*
+ * Check for chimp handshake status.
+ * Zero timeout value will actually fall to default timeout.
+ *
+ * System boot is independent of chimp handshake.
+ * chimp handshake failure is not a catastrophic error.
+ * Hence continue booting if chimp handshake fails.
+ */
+ chimp_handshake_status_optee(0, &chimp_hs);
+ if (chimp_hs == CHIMP_HANDSHAKE_SUCCESS)
+ printf("ChiMP handshake successful\n");
+ else
+ printf("ERROR: ChiMP handshake status 0x%x\n", chimp_hs);
+
+ return mem_info_parse_fixup(fdt);
+}
+#endif /* CONFIG_OF_BOARD_SETUP */
diff --git a/board/broadcom/bcmnsp/Kconfig b/board/broadcom/bcmnsp/Kconfig
deleted file mode 100644
index a975082355a..00000000000
--- a/board/broadcom/bcmnsp/Kconfig
+++ /dev/null
@@ -1,15 +0,0 @@
-if TARGET_BCMNSP
-
-config SYS_BOARD
- default "bcm_ep"
-
-config SYS_VENDOR
- default "broadcom"
-
-config SYS_SOC
- default "bcmnsp"
-
-config SYS_CONFIG_NAME
- default "bcm_ep_board"
-
-endif
diff --git a/board/broadcom/bcmstb/bcmstb.c b/board/broadcom/bcmstb/bcmstb.c
index ee0cf8f9e29..e7313d8c431 100644
--- a/board/broadcom/bcmstb/bcmstb.c
+++ b/board/broadcom/bcmstb/bcmstb.c
@@ -8,9 +8,10 @@
#include <cpu_func.h>
#include <init.h>
+#include <log.h>
#include <time.h>
+#include <asm/global_data.h>
#include <linux/types.h>
-#include <common.h>
#include <env.h>
#include <asm/io.h>
#include <asm/bootm.h>
@@ -20,7 +21,7 @@
DECLARE_GLOBAL_DATA_PTR;
-#define BCMSTB_DATA_SECTION __attribute__((section(".data")))
+#define BCMSTB_DATA_SECTION __section(".data")
struct bcmstb_boot_parameters bcmstb_boot_parameters BCMSTB_DATA_SECTION;
@@ -31,17 +32,7 @@ union reg_value_union {
const phys_addr_t *address;
};
-int board_init(void)
-{
- return 0;
-}
-
-u32 get_board_rev(void)
-{
- return 0;
-}
-
-void reset_cpu(ulong ignored)
+void reset_cpu(void)
{
}
@@ -64,13 +55,13 @@ int dram_init_banksize(void)
/*
* On this SoC, U-Boot is running as an ELF file. Change the
- * relocation address to CONFIG_SYS_TEXT_BASE, so that in
+ * relocation address to CONFIG_TEXT_BASE, so that in
* setup_reloc, gd->reloc_off works out to 0, effectively
* disabling relocation. Otherwise U-Boot hangs in the setup
* instructions just before relocate_code in
* arch/arm/lib/crt0.S.
*/
- gd->relocaddr = CONFIG_SYS_TEXT_BASE;
+ gd->relocaddr = CONFIG_TEXT_BASE;
return 0;
}
@@ -133,3 +124,11 @@ int board_late_init(void)
return 0;
}
+
+int board_fdt_blob_setup(void **fdtp)
+{
+ /* Stored the DTB address there during our init */
+ *fdtp = (void *)prior_stage_fdt_address;
+
+ return 0;
+}