menu "Broadcom MIPS platforms"
	depends on ARCH_BMIPS

config SYS_SOC
	default "bcm3380" if SOC_BMIPS_BCM3380
	default "bcm6328" if SOC_BMIPS_BCM6328
	default "bcm6338" if SOC_BMIPS_BCM6338
	default "bcm6348" if SOC_BMIPS_BCM6348
	default "bcm6358" if SOC_BMIPS_BCM6358
	default "bcm63268" if SOC_BMIPS_BCM63268

choice
	prompt "Broadcom MIPS SoC select"

config SOC_BMIPS_BCM3380
	bool "BMIPS BCM3380 family"
	select SUPPORTS_BIG_ENDIAN
	select SUPPORTS_CPU_MIPS32_R1
	select MIPS_TUNE_4KC
	select MIPS_L1_CACHE_SHIFT_4
	select SWAP_IO_SPACE
	select SYSRESET_WATCHDOG
	help
	  This supports BMIPS BCM3380 family.

config SOC_BMIPS_BCM6328
	bool "BMIPS BCM6328 family"
	select SUPPORTS_BIG_ENDIAN
	select SUPPORTS_CPU_MIPS32_R1
	select MIPS_TUNE_4KC
	select MIPS_L1_CACHE_SHIFT_4
	select SWAP_IO_SPACE
	select SYSRESET_SYSCON
	help
	  This supports BMIPS BCM6328 family including BCM63281 and BCM63283.

config SOC_BMIPS_BCM6338
	bool "BMIPS BCM6338 family"
	select SUPPORTS_BIG_ENDIAN
	select SUPPORTS_CPU_MIPS32_R1
	select MIPS_TUNE_4KC
	select MIPS_L1_CACHE_SHIFT_4
	select SWAP_IO_SPACE
	select SYSRESET_SYSCON
	help
	  This supports BMIPS BCM6338 family.

config SOC_BMIPS_BCM6348
	bool "BMIPS BCM6348 family"
	select SUPPORTS_BIG_ENDIAN
	select SUPPORTS_CPU_MIPS32_R1
	select MIPS_TUNE_4KC
	select MIPS_L1_CACHE_SHIFT_4
	select SWAP_IO_SPACE
	select SYSRESET_WATCHDOG
	help
	  This supports BMIPS BCM6348 family.

config SOC_BMIPS_BCM6358
	bool "BMIPS BCM6358 family"
	select SUPPORTS_BIG_ENDIAN
	select SUPPORTS_CPU_MIPS32_R1
	select MIPS_TUNE_4KC
	select MIPS_L1_CACHE_SHIFT_4
	select SWAP_IO_SPACE
	select SYSRESET_SYSCON
	help
	  This supports BMIPS BCM6358 family including BCM6358 and BCM6359.

config SOC_BMIPS_BCM63268
	bool "BMIPS BCM63268 family"
	select SUPPORTS_BIG_ENDIAN
	select SUPPORTS_CPU_MIPS32_R1
	select MIPS_TUNE_4KC
	select MIPS_L1_CACHE_SHIFT_4
	select SWAP_IO_SPACE
	select SYSRESET_SYSCON
	help
	  This supports BMIPS BCM63268 family including BCM63168, BCM63169,
	  BCM63268 and BCM63269.

endchoice

choice
	prompt "Board select"

config BOARD_COMTREND_AR5387UN
	bool "Comtrend AR-5387un"
	depends on SOC_BMIPS_BCM6328
	select BMIPS_SUPPORTS_BOOT_RAM
	help
	  Comtrend AR-5387un boards have a BCM6328 SoC with 64 MB of RAM and 16
	  MB of flash (SPI).
	  Between its different peripherals there's an integrated switch with 4
	  ethernet ports, 1 USB port, 1 UART, GPIO buttons and LEDs, and
	  a BCM43225 (PCIe).

config BOARD_COMTREND_CT5361
	bool "Comtrend CT-5361"
	depends on SOC_BMIPS_BCM6348
	select BMIPS_SUPPORTS_BOOT_RAM
	help
	  Comtrend CT-5361 boards have a BCM6348 SoC with 16 MB of RAM and 4 MB
	  of flash (CFI).
	  Between its different peripherals there's a BCM5325 switch with 4
	  ethernet ports, 1 USB port, 1 UART, GPIO buttons and LEDs, and a
	  BCM4312 (miniPCI).

config BOARD_COMTREND_VR3032U
	bool "Comtrend VR-3032u board"
	depends on SOC_BMIPS_BCM63268
	select BMIPS_SUPPORTS_BOOT_RAM
	help
	  Comtrend VR-3032u boards have a BCM63268 SoC with 64 MB of RAM and
	  128 MB of flash (NAND).
	  Between its different peripherals there's an integrated switch with 4
	  ethernet ports, 1 USB port, 1 UART, GPIO buttons and LEDs,
	  and a BCM6362 (integrated).

config BOARD_HUAWEI_HG556A
	bool "Huawei EchoLife HG556a"
	depends on SOC_BMIPS_BCM6358
	select BMIPS_SUPPORTS_BOOT_RAM
	help
	  Huawei EchoLife HG556a boards have a BCM6358 SoC with 64 MB of RAM
	  and 16 MB of flash (CFI).
	  Between its different peripherals there's a BCM5325 switch with 4
	  ethernet ports, 3 USB ports, 1 UART, GPIO buttons and LEDs, and
	  a RT3062F/AR9223 (PCI).

config BOARD_NETGEAR_CG3100D
	bool "Netgear CG3100D"
	depends on SOC_BMIPS_BCM3380
	select BMIPS_SUPPORTS_BOOT_RAM
	help
	  Netgear CG3100D boards have a BCM3380 SoC with 64 MB of RAM and 8 MB
	  of flash (SPI).
	  Between its different peripherals there's a BCM53115 switch with 4
	  ethernet ports, 1 UART, GPIO buttons and LEDs, and a BCM43225
	  (miniPCIe).

config BOARD_SAGEM_FAST1704
	bool "Sagem F@ST1704"
	depends on SOC_BMIPS_BCM6338
	select BMIPS_SUPPORTS_BOOT_RAM
	help
	  Sagem F@ST1704 boards have a BCM6338 SoC with 16 MB of RAM and 4 MB
	  of flash (SPI).
	  Between its different peripherals there's a BCM5325 switch with 4
	  ethernet ports, 1 UART, GPIO buttons and LEDs, and a BCM4312
	  (miniPCI).

config BOARD_SFR_NB4_SER
	bool "SFR NeufBox 4 (Sercomm)"
	depends on SOC_BMIPS_BCM6358
	select BMIPS_SUPPORTS_BOOT_RAM
	help
	  SFR NeufBox 4 (Sercomm) boards have a BCM6358 SoC with 32 MB of RAM
	  and 8 MB of flash (CFI).
	  Between its different peripherals there's a BCM5325 switch with 4
	  ethernet ports, 2 USB ports, 1 UART, GPIO buttons and LEDs, and
	  a BCM4318 (PCI).

endchoice

choice
	prompt "Boot mode"

config BMIPS_BOOT_RAM
	bool "RAM boot"
	depends on BMIPS_SUPPORTS_BOOT_RAM
	help
	  This builds an image that is linked to a RAM address. It can be used
	  for booting from CFE via TFTP using an ELF image, but it can also be
	  booted from RAM by other bootloaders using a BIN image.

endchoice

config BMIPS_SUPPORTS_BOOT_RAM
	bool

source "board/comtrend/ar5387un/Kconfig"
source "board/comtrend/ct5361/Kconfig"
source "board/comtrend/vr3032u/Kconfig"
source "board/huawei/hg556a/Kconfig"
source "board/netgear/cg3100d/Kconfig"
source "board/sagem/f@st1704/Kconfig"
source "board/sfr/nb4_ser/Kconfig"

endmenu
