arm: bcmbca: remove bcm6858 support under CONFIG_ARCH_BCM6858

Now that BCM6858 is supported under CONFIG_ARCH_BCMBCA and
CONFIG_BCM6858, remove the original ARCH_BCM6858 support and migrate its
configuration and dts settings. This includes:
- Remove the bcm968580xref board folder. It is replaced by the generic
bcmbca board folder.
- Update bcm968580xref board dts with the new compatible string.
- Delete broadcom_bcm968580xref.h and merge its setting to the new
bcm96858.h file.
- Remove bcm968580xref_ram_defconfig as a basic config version of
bcm96858_defconfig is now added.

Signed-off-by: William Zhang <william.zhang@broadcom.com>
Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index b6548c5..3b8c7b3 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -685,12 +685,6 @@
 	select OF_CONTROL
 	imply CMD_DM
 
-config ARCH_BCM6858
-	bool "Broadcom BCM6858 family"
-	select DM
-	select OF_CONTROL
-	imply CMD_DM
-
 config ARCH_BCMSTB
 	bool "Broadcom BCM7XXX family"
 	select CPU_V7A
@@ -2325,7 +2319,6 @@
 source "board/armltd/vexpress64/Kconfig"
 source "board/cortina/presidio-asic/Kconfig"
 source "board/broadcom/bcm96753ref/Kconfig"
-source "board/broadcom/bcm968580xref/Kconfig"
 source "board/broadcom/bcmns3/Kconfig"
 source "board/cavium/thunderx/Kconfig"
 source "board/eets/pdu001/Kconfig"
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 37659cb..546a460 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -1167,9 +1167,6 @@
 dtb-$(CONFIG_ARCH_BCM6753) += \
 	bcm96753ref.dtb
 
-dtb-$(CONFIG_ARCH_BCM6858) += \
-	bcm968580xref.dtb
-
 dtb-$(CONFIG_TARGET_BCMNS3) += ns3-board.dtb
 
 dtb-$(CONFIG_ARCH_BCMSTB) += bcm7xxx.dtb
@@ -1200,7 +1197,8 @@
 	bcm96856.dtb \
 	bcm968360bg.dtb
 dtb-$(CONFIG_BCM6858) += \
-	bcm96858.dtb
+	bcm96858.dtb \
+	bcm968580xref.dtb
 dtb-$(CONFIG_BCM6878) += \
 	bcm96878.dtb
 
diff --git a/arch/arm/dts/bcm968580xref.dts b/arch/arm/dts/bcm968580xref.dts
index a034e38..6d787bd 100644
--- a/arch/arm/dts/bcm968580xref.dts
+++ b/arch/arm/dts/bcm968580xref.dts
@@ -8,8 +8,8 @@
 #include "bcm6858.dtsi"
 
 / {
-	model = "Broadcom bcm68580xref";
-	compatible = "broadcom,bcm68580xref", "brcm,bcm6858";
+	model = "Broadcom BCM968580xref Reference Board";
+	compatible = "brcm,bcm968580xref", "brcm,bcm6858", "brcm,bcmbca";
 
 	aliases {
 		serial0 = &uart0;
diff --git a/board/broadcom/bcm968580xref/Kconfig b/board/broadcom/bcm968580xref/Kconfig
deleted file mode 100644
index b573036..0000000
--- 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 5ee0c4d..0000000
--- 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 5cd393b..0000000
--- 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 1bd723d..0000000
--- a/board/broadcom/bcm968580xref/bcm968580xref.c
+++ /dev/null
@@ -1,62 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright (C) 2018 Philippe Reynes <philippe.reynes@softathome.com>
- */
-
-#include <common.h>
-#include <fdtdec.h>
-#include <init.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/configs/bcm968580xref_ram_defconfig b/configs/bcm968580xref_ram_defconfig
deleted file mode 100644
index 4320739..0000000
--- a/configs/bcm968580xref_ram_defconfig
+++ /dev/null
@@ -1,62 +0,0 @@
-CONFIG_ARM=y
-CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_ARCH_BCM6858=y
-CONFIG_SYS_TEXT_BASE=0x10000000
-CONFIG_SYS_MALLOC_LEN=0x100000
-CONFIG_SYS_MALLOC_F_LEN=0x8000
-CONFIG_NR_DRAM_BANKS=1
-CONFIG_ENV_SIZE=0x2000
-CONFIG_DM_GPIO=y
-CONFIG_DEFAULT_DEVICE_TREE="bcm968580xref"
-CONFIG_SYS_LOAD_ADDR=0x10000000
-CONFIG_TARGET_BCM968580XREF=y
-CONFIG_ENV_VARS_UBOOT_CONFIG=y
-CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
-CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x11000000
-CONFIG_FIT=y
-CONFIG_FIT_SIGNATURE=y
-CONFIG_FIT_VERBOSE=y
-CONFIG_LEGACY_IMAGE_FORMAT=y
-CONFIG_SUPPORT_RAW_INITRD=y
-CONFIG_DISPLAY_BOARDINFO_LATE=y
-CONFIG_HUSH_PARSER=y
-CONFIG_SYS_MAXARGS=24
-CONFIG_SYS_CBSIZE=256
-CONFIG_SYS_PBSIZE=276
-CONFIG_SYS_BOOTM_LEN=0x800000
-CONFIG_CMD_GPIO=y
-CONFIG_CMD_MTD=y
-CONFIG_CMD_NAND=y
-CONFIG_CMD_PART=y
-CONFIG_CMD_SPI=y
-CONFIG_DOS_PARTITION=y
-CONFIG_ISO_PARTITION=y
-CONFIG_EFI_PARTITION=y
-CONFIG_SYS_RELOC_GD_ENV_ADDR=y
-# CONFIG_NET is not set
-CONFIG_CLK=y
-CONFIG_BCM6345_GPIO=y
-CONFIG_LED=y
-CONFIG_LED_BCM6858=y
-CONFIG_LED_BLINK=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_6858=y
-CONFIG_SYS_NAND_ONFI_DETECTION=y
-CONFIG_DM_SPI_FLASH=y
-CONFIG_SPI_FLASH_SFDP_SUPPORT=y
-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPECIFY_CONSOLE_INDEX=y
-CONFIG_CONS_INDEX=0
-CONFIG_DM_SERIAL=y
-CONFIG_SERIAL_SEARCH_ALL=y
-CONFIG_BCM6345_SERIAL=y
-CONFIG_SPI=y
-CONFIG_DM_SPI=y
-CONFIG_BCM63XX_HSSPI=y
-CONFIG_SYSRESET=y
-CONFIG_SYSRESET_WATCHDOG=y
-CONFIG_WDT_BCM6345=y
diff --git a/include/configs/bcm96858.h b/include/configs/bcm96858.h
index 4e584b4..8bd1169 100644
--- a/include/configs/bcm96858.h
+++ b/include/configs/bcm96858.h
@@ -8,4 +8,8 @@
 
 #define CONFIG_SYS_SDRAM_BASE		0x00000000
 
+#ifdef CONFIG_MTD_RAW_NAND
+#define CONFIG_SYS_MAX_NAND_DEVICE	1
+#endif /* CONFIG_MTD_RAW_NAND */
+
 #endif
diff --git a/include/configs/broadcom_bcm968580xref.h b/include/configs/broadcom_bcm968580xref.h
deleted file mode 100644
index abc2da3..0000000
--- a/include/configs/broadcom_bcm968580xref.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2018 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 */
-
-/*
- * 6858
- */
-
-/* RAM */
-#define CONFIG_SYS_SDRAM_BASE		0x00000000
-
-/* U-Boot */
-
-#ifdef CONFIG_MTD_RAW_NAND
-#define CONFIG_SYS_MAX_NAND_DEVICE	1
-#endif /* CONFIG_MTD_RAW_NAND */
-
-/*
- * 968580xref
- */