Skip to content

Commit

Permalink
bmips: Add Inteno XG6846 board
Browse files Browse the repository at this point in the history
This adds support for the Inteno XG6846 board based on the
Broadcom MIPS 6328 SoC.

The default boot will read a uImage from flash and boot it.

Reviewed-by: Daniel Schwierzeck <[email protected]>
Signed-off-by: Linus Walleij <[email protected]>
  • Loading branch information
linusw authored and trini committed Nov 6, 2023
1 parent 274f41c commit a01b946
Show file tree
Hide file tree
Showing 7 changed files with 170 additions and 0 deletions.
1 change: 1 addition & 0 deletions arch/mips/dts/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ dtb-$(CONFIG_BOARD_COMTREND_CT5361) += comtrend,ct-5361.dtb
dtb-$(CONFIG_BOARD_COMTREND_VR3032U) += comtrend,vr-3032u.dtb
dtb-$(CONFIG_BOARD_COMTREND_WAP5813N) += comtrend,wap-5813n.dtb
dtb-$(CONFIG_BOARD_HUAWEI_HG556A) += huawei,hg556a.dtb
dtb-$(CONFIG_BOARD_INTENO_XG6846) += inteno,xg6846.dtb
dtb-$(CONFIG_BOARD_MT7620_RFB) += mediatek,mt7620-rfb.dtb
dtb-$(CONFIG_BOARD_MT7620_MT7530_RFB) += mediatek,mt7620-mt7530-rfb.dtb
dtb-$(CONFIG_BOARD_MT7621_RFB) += mediatek,mt7621-rfb.dtb
Expand Down
57 changes: 57 additions & 0 deletions arch/mips/dts/inteno,xg6846.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
// SPDX-License-Identifier: GPL-2.0+
/*
* Copyright (C) 2023 Linus Walleij <[email protected]>
*
* This is a diet version of the device tree from Linux,
* suitable for U-Boot.
*/

/dts-v1/;

#include "brcm,bcm6328.dtsi"

/ {
model = "Inteno XG6846";
compatible = "inteno,xg6846", "brcm,bcm6328";

aliases {
serial0 = &uart0;
};

chosen {
stdout-path = "serial0:115200n8";
};
};

&leds {
status = "okay";

led@18 {
reg = <18>;
active-low;
label = "red:pwr";
};

led@20 {
reg = <20>;
active-low;
label = "green:pwr";
};
};

&spi {
status = "okay";

spi-flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
#address-cells = <1>;
#size-cells = <1>;
spi-max-frequency = <33333334>;
};
};

&uart0 {
bootph-all;
status = "okay";
};
12 changes: 12 additions & 0 deletions arch/mips/mach-bmips/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -203,6 +203,17 @@ config BOARD_HUAWEI_HG556A
ethernet ports, 3 USB ports, 1 UART, GPIO buttons and LEDs, and
a RT3062F/AR9223 (PCI).

config BOARD_INTENO_XG6846
bool "Inteno XG6846"
depends on SOC_BMIPS_BCM6328
select BMIPS_SUPPORTS_BOOT_RAM
help
Inteno XG6846 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 UART, GPIO buttons and LEDs, and a Marvell
DSA switch connected to a fiber SFP.

config BOARD_NETGEAR_CG3100D
bool "Netgear CG3100D"
depends on SOC_BMIPS_BCM3380
Expand Down Expand Up @@ -272,6 +283,7 @@ source "board/comtrend/ct5361/Kconfig"
source "board/comtrend/vr3032u/Kconfig"
source "board/comtrend/wap5813n/Kconfig"
source "board/huawei/hg556a/Kconfig"
source "board/inteno/xg6846/Kconfig"
source "board/netgear/cg3100d/Kconfig"
source "board/netgear/dgnd3700v2/Kconfig"
source "board/sagem/f@st1704/Kconfig"
Expand Down
12 changes: 12 additions & 0 deletions board/inteno/xg6846/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
if BOARD_INTENO_XG6846

config SYS_BOARD
default "xg6846"

config SYS_VENDOR
default "inteno"

config SYS_CONFIG_NAME
default "inteno_xg6846"

endif
6 changes: 6 additions & 0 deletions board/inteno/xg6846/MAINTAINERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
INTENO XG6846 BOARD
M: Linus Walleij <[email protected]>
S: Maintained
F: board/inteno/xg6846
F: include/configs/inteno_xg6846.h
F: configs/inteno_xg6846_ram_defconfig
74 changes: 74 additions & 0 deletions configs/inteno_xg6846_ram_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
CONFIG_MIPS=y
CONFIG_SKIP_LOWLEVEL_INIT=y
CONFIG_TEXT_BASE=0x81c00000
CONFIG_NR_DRAM_BANKS=1
CONFIG_ENV_SIZE=0x2000
CONFIG_DM_GPIO=y
CONFIG_DEFAULT_DEVICE_TREE="inteno,xg6846"
CONFIG_SYS_PROMPT="XG6846 # "
CONFIG_DM_RESET=y
CONFIG_IDENT_STRING="Inteno XG6846"
CONFIG_SYS_LOAD_ADDR=0x81000000
CONFIG_ARCH_BMIPS=y
CONFIG_SOC_BMIPS_BCM6328=y
CONFIG_SYS_MIPS_TIMER_FREQ=160000000
CONFIG_MIPS_CACHE_SETUP=y
CONFIG_MIPS_CACHE_DISABLE=y
# CONFIG_MIPS_BOOT_CMDLINE_LEGACY is not set
# CONFIG_MIPS_BOOT_ENV_LEGACY is not set
# CONFIG_BOOTSTD is not set
CONFIG_BOOTDELAY=1
CONFIG_AUTOBOOT_KEYED=y
CONFIG_AUTOBOOT_PROMPT="Boot XG6846 in %d seconds\n"
CONFIG_USE_BOOTCOMMAND=y
CONFIG_BOOTCOMMAND="sf probe; sf read 0x81000000 0x40000 0x500000; bootm 0x81000000"
CONFIG_MIPS_BOOT_FDT=y
CONFIG_LZMA=y
# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
CONFIG_REMAKE_ELF=y
CONFIG_OF_STDOUT_VIA_ALIAS=y
CONFIG_DISPLAY_CPUINFO=y
CONFIG_SYS_MALLOC_BOOTPARAMS=y
CONFIG_HUSH_PARSER=y
CONFIG_SYS_MAXARGS=24
CONFIG_SYS_CBSIZE=512
CONFIG_SYS_PBSIZE=541
CONFIG_SYS_BOOTM_LEN=0x1000000
CONFIG_CMD_CPU=y
CONFIG_CMD_LICENSE=y
# CONFIG_CMD_BOOTD 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_FLASH is not set
# CONFIG_CMD_LOADS is not set
CONFIG_CMD_SPI=y
# CONFIG_CMD_SLEEP is not set
CONFIG_SYS_RELOC_GD_ENV_ADDR=y
# CONFIG_DM_DEVICE_REMOVE is not set
CONFIG_DMA=y
CONFIG_BCM6348_IUDMA=y
CONFIG_LED=y
CONFIG_LED_BCM6328=y
CONFIG_LED_BLINK=y
CONFIG_MTD=y
CONFIG_DM_SPI_FLASH=y
CONFIG_SPI_FLASH_MACRONIX=y
CONFIG_SPI_FLASH_SPANSION=y
CONFIG_SPI_FLASH_WINBOND=y
CONFIG_SPI_FLASH_MTD=y
CONFIG_PHY_RESET_DELAY=20
CONFIG_POWER_DOMAIN=y
CONFIG_BCM6328_POWER_DOMAIN=y
CONFIG_RESET_BCM6345=y
CONFIG_DM_SERIAL=y
CONFIG_BCM6345_SERIAL=y
CONFIG_SPI=y
CONFIG_DM_SPI=y
CONFIG_BCM63XX_HSSPI=y
8 changes: 8 additions & 0 deletions include/configs/inteno_xg6846.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/* SPDX-License-Identifier: GPL-2.0+ */
/*
* Copyright (C) 2023 Linus Walleij <[email protected]>
*/

#include <configs/bmips_common.h>
#include <configs/bmips_bcm6328.h>

0 comments on commit a01b946

Please sign in to comment.