mips: Add Gardena Smart-Gateway board support
The Gardena Smart-Gateway boards have a MT7688 SoC with 128 MiB of RAM and 8 MiB of flash (SPI NOR) and additional 128MiB SPI NAND storage. This patch also includes 2 targets. One is the target that can be programmed into the SPI NOR flash and a 2nd target "xxx-ram" is added to support loading and booting via an already running U-Boot version. This allows easy development and testing without the need to flash the image each time. Signed-off-by: Stefan Roese <sr@denx.de> [fixed and regenerated defconfig files] Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
This commit is contained in:
parent
b02f76a835
commit
88dc409914
54
arch/mips/dts/gardena-smart-gateway-mt7688.dts
Normal file
54
arch/mips/dts/gardena-smart-gateway-mt7688.dts
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2018 Stefan Roese <sr@denx.de>
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "mt7628a.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "gardena,smart-gateway-mt7688", "ralink,mt7628a-soc";
|
||||||
|
model = "Gardena smart-Gateway-MT7688";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &uart0;
|
||||||
|
spi0 = &spi0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x08000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs = "console=ttyS0,57600";
|
||||||
|
stdout-path = &uart0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart0 {
|
||||||
|
status = "okay";
|
||||||
|
clock-frequency = <40000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&spi0 {
|
||||||
|
status = "okay";
|
||||||
|
num-cs = <2>;
|
||||||
|
|
||||||
|
spi-flash@0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "spi-flash", "jedec,spi-nor";
|
||||||
|
spi-max-frequency = <40000000>;
|
||||||
|
reg = <0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
spi-nand@1 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "spi-nand";
|
||||||
|
spi-max-frequency = <40000000>;
|
||||||
|
reg = <1>;
|
||||||
|
};
|
||||||
|
};
|
@ -21,6 +21,14 @@ endchoice
|
|||||||
choice
|
choice
|
||||||
prompt "Board select"
|
prompt "Board select"
|
||||||
|
|
||||||
|
config BOARD_GARDENA_SMART_GATEWAY_MT7688
|
||||||
|
bool "Gardena Smart Gateway"
|
||||||
|
depends on SOC_MT7620
|
||||||
|
select SUPPORTS_BOOT_RAM
|
||||||
|
help
|
||||||
|
Gardena Smart Gateway boards have a MT7688 SoC with 128 MiB of RAM
|
||||||
|
and 8 MiB of flash (SPI NOR) and additional SPI NAND storage.
|
||||||
|
|
||||||
config BOARD_LINKIT_SMART_7688
|
config BOARD_LINKIT_SMART_7688
|
||||||
bool "LinkIt Smart 7688"
|
bool "LinkIt Smart 7688"
|
||||||
depends on SOC_MT7620
|
depends on SOC_MT7620
|
||||||
@ -121,6 +129,7 @@ endchoice
|
|||||||
config SUPPORTS_BOOT_RAM
|
config SUPPORTS_BOOT_RAM
|
||||||
bool
|
bool
|
||||||
|
|
||||||
|
source "board/gardena/smart-gateway-mt7688/Kconfig"
|
||||||
source "board/seeed/linkit-smart-7688/Kconfig"
|
source "board/seeed/linkit-smart-7688/Kconfig"
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
12
board/gardena/smart-gateway-mt7688/Kconfig
Normal file
12
board/gardena/smart-gateway-mt7688/Kconfig
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
if BOARD_GARDENA_SMART_GATEWAY_MT7688
|
||||||
|
|
||||||
|
config SYS_BOARD
|
||||||
|
default "smart-gateway-mt7688"
|
||||||
|
|
||||||
|
config SYS_VENDOR
|
||||||
|
default "gardena"
|
||||||
|
|
||||||
|
config SYS_CONFIG_NAME
|
||||||
|
default "gardena-smart-gateway-mt7688"
|
||||||
|
|
||||||
|
endif
|
8
board/gardena/smart-gateway-mt7688/MAINTAINERS
Normal file
8
board/gardena/smart-gateway-mt7688/MAINTAINERS
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
GARDENA_SMART_GATEWAY_MT7688 BOARD
|
||||||
|
M: Stefan Roese <sr@denx.de>
|
||||||
|
S: Maintained
|
||||||
|
F: board/gardena/smart-gateway-mt7688
|
||||||
|
F: include/configs/gardena-smart-gateway-mt7688.h
|
||||||
|
F: configs/gardena-smart-gateway-mt7688_defconfig
|
||||||
|
F: configs/gardena-smart-gateway-mt7688-ram_defconfig
|
||||||
|
F: arch/mips/dts/gardena-smart-gateway-mt7688.dts
|
3
board/gardena/smart-gateway-mt7688/Makefile
Normal file
3
board/gardena/smart-gateway-mt7688/Makefile
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0+
|
||||||
|
|
||||||
|
obj-y += board.o
|
17
board/gardena/smart-gateway-mt7688/board.c
Normal file
17
board/gardena/smart-gateway-mt7688/board.c
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0+
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2018 Stefan Roese <sr@denx.de>
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <common.h>
|
||||||
|
#include <asm/io.h>
|
||||||
|
|
||||||
|
int board_early_init_f(void)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Nothing to be done here for this board (no UART setup etc)
|
||||||
|
* right now. We might need some pin muxing, so lets keep this
|
||||||
|
* function for now.
|
||||||
|
*/
|
||||||
|
return 0;
|
||||||
|
}
|
55
configs/gardena-smart-gateway-mt7688-ram_defconfig
Normal file
55
configs/gardena-smart-gateway-mt7688-ram_defconfig
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
CONFIG_MIPS=y
|
||||||
|
CONFIG_SYS_TEXT_BASE=0x80010000
|
||||||
|
CONFIG_ARCH_MT7620=y
|
||||||
|
# CONFIG_MIPS_BOOT_CMDLINE_LEGACY is not set
|
||||||
|
# CONFIG_MIPS_BOOT_ENV_LEGACY is not set
|
||||||
|
CONFIG_MIPS_BOOT_FDT=y
|
||||||
|
CONFIG_NR_DRAM_BANKS=1
|
||||||
|
# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
|
||||||
|
CONFIG_OF_STDOUT_VIA_ALIAS=y
|
||||||
|
CONFIG_SYS_CONSOLE_INFO_QUIET=y
|
||||||
|
CONFIG_BOARD_EARLY_INIT_F=y
|
||||||
|
CONFIG_HUSH_PARSER=y
|
||||||
|
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_MEMINFO=y
|
||||||
|
# CONFIG_CMD_FLASH is not set
|
||||||
|
# CONFIG_CMD_LOADS is not set
|
||||||
|
CONFIG_CMD_SF=y
|
||||||
|
CONFIG_CMD_SPI=y
|
||||||
|
# CONFIG_CMD_NET is not set
|
||||||
|
CONFIG_CMD_TIME=y
|
||||||
|
CONFIG_MTDIDS_DEFAULT="spi-nand0=spi-nand0"
|
||||||
|
CONFIG_MTDPARTS_DEFAULT="mtdparts=spi-nand0:-(ubi)"
|
||||||
|
CONFIG_CMD_UBI=y
|
||||||
|
CONFIG_OF_EMBED=y
|
||||||
|
CONFIG_DEFAULT_DEVICE_TREE="gardena-smart-gateway-mt7688"
|
||||||
|
CONFIG_ENV_IS_IN_SPI_FLASH=y
|
||||||
|
# CONFIG_DM_DEVICE_REMOVE is not set
|
||||||
|
CONFIG_HAVE_BLOCK_DEVICE=y
|
||||||
|
CONFIG_CLK=y
|
||||||
|
CONFIG_CPU=y
|
||||||
|
CONFIG_DM_GPIO=y
|
||||||
|
CONFIG_LED=y
|
||||||
|
CONFIG_LED_BLINK=y
|
||||||
|
CONFIG_LED_GPIO=y
|
||||||
|
CONFIG_MTD=y
|
||||||
|
CONFIG_SPI_FLASH=y
|
||||||
|
CONFIG_SPI_FLASH_GIGADEVICE=y
|
||||||
|
CONFIG_SPI_FLASH_MACRONIX=y
|
||||||
|
CONFIG_SPI_FLASH_SPANSION=y
|
||||||
|
CONFIG_SPI_FLASH_STMICRO=y
|
||||||
|
CONFIG_SPI_FLASH_WINBOND=y
|
||||||
|
CONFIG_SPI_FLASH_MTD=y
|
||||||
|
CONFIG_PHY=y
|
||||||
|
CONFIG_POWER_DOMAIN=y
|
||||||
|
CONFIG_RAM=y
|
||||||
|
CONFIG_DM_RESET=y
|
||||||
|
CONFIG_BAUDRATE=57600
|
||||||
|
# CONFIG_SPL_SERIAL_PRESENT is not set
|
||||||
|
CONFIG_SYS_NS16550=y
|
||||||
|
CONFIG_SPI=y
|
||||||
|
CONFIG_SYSRESET_SYSCON=y
|
58
configs/gardena-smart-gateway-mt7688_defconfig
Normal file
58
configs/gardena-smart-gateway-mt7688_defconfig
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
CONFIG_MIPS=y
|
||||||
|
CONFIG_SYS_TEXT_BASE=0x9c000000
|
||||||
|
CONFIG_ARCH_MT7620=y
|
||||||
|
CONFIG_BOOT_ROM=y
|
||||||
|
CONFIG_ONBOARD_DDR2_SIZE_1024MBIT=y
|
||||||
|
CONFIG_ONBOARD_DDR2_CHIP_WIDTH_16BIT=y
|
||||||
|
# CONFIG_MIPS_BOOT_CMDLINE_LEGACY is not set
|
||||||
|
# CONFIG_MIPS_BOOT_ENV_LEGACY is not set
|
||||||
|
CONFIG_MIPS_BOOT_FDT=y
|
||||||
|
CONFIG_NR_DRAM_BANKS=1
|
||||||
|
# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
|
||||||
|
CONFIG_OF_STDOUT_VIA_ALIAS=y
|
||||||
|
CONFIG_SYS_CONSOLE_INFO_QUIET=y
|
||||||
|
CONFIG_BOARD_EARLY_INIT_F=y
|
||||||
|
CONFIG_HUSH_PARSER=y
|
||||||
|
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_MEMINFO=y
|
||||||
|
# CONFIG_CMD_FLASH is not set
|
||||||
|
# CONFIG_CMD_LOADS is not set
|
||||||
|
CONFIG_CMD_SF=y
|
||||||
|
CONFIG_CMD_SPI=y
|
||||||
|
# CONFIG_CMD_NET is not set
|
||||||
|
CONFIG_CMD_TIME=y
|
||||||
|
CONFIG_MTDIDS_DEFAULT="spi-nand0=spi-nand0"
|
||||||
|
CONFIG_MTDPARTS_DEFAULT="mtdparts=spi-nand0:-(ubi)"
|
||||||
|
CONFIG_CMD_UBI=y
|
||||||
|
CONFIG_OF_EMBED=y
|
||||||
|
CONFIG_DEFAULT_DEVICE_TREE="gardena-smart-gateway-mt7688"
|
||||||
|
CONFIG_ENV_IS_IN_SPI_FLASH=y
|
||||||
|
# CONFIG_DM_DEVICE_REMOVE is not set
|
||||||
|
CONFIG_HAVE_BLOCK_DEVICE=y
|
||||||
|
CONFIG_CLK=y
|
||||||
|
CONFIG_CPU=y
|
||||||
|
CONFIG_DM_GPIO=y
|
||||||
|
CONFIG_LED=y
|
||||||
|
CONFIG_LED_BLINK=y
|
||||||
|
CONFIG_LED_GPIO=y
|
||||||
|
CONFIG_MTD=y
|
||||||
|
CONFIG_SPI_FLASH=y
|
||||||
|
CONFIG_SPI_FLASH_GIGADEVICE=y
|
||||||
|
CONFIG_SPI_FLASH_MACRONIX=y
|
||||||
|
CONFIG_SPI_FLASH_SPANSION=y
|
||||||
|
CONFIG_SPI_FLASH_STMICRO=y
|
||||||
|
CONFIG_SPI_FLASH_WINBOND=y
|
||||||
|
CONFIG_SPI_FLASH_MTD=y
|
||||||
|
CONFIG_PHY=y
|
||||||
|
CONFIG_POWER_DOMAIN=y
|
||||||
|
CONFIG_RAM=y
|
||||||
|
CONFIG_DM_RESET=y
|
||||||
|
CONFIG_BAUDRATE=57600
|
||||||
|
# CONFIG_SPL_SERIAL_PRESENT is not set
|
||||||
|
CONFIG_SYS_NS16550=y
|
||||||
|
CONFIG_SPI=y
|
||||||
|
CONFIG_SYSRESET_SYSCON=y
|
55
include/configs/gardena-smart-gateway-mt7688.h
Normal file
55
include/configs/gardena-smart-gateway-mt7688.h
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2018 Stefan Roese <sr@denx.de>
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __CONFIG_GARDENA_SMART_GATEWAY_H
|
||||||
|
#define __CONFIG_GARDENA_SMART_GATEWAY_H
|
||||||
|
|
||||||
|
/* CPU */
|
||||||
|
#define CONFIG_SYS_MIPS_TIMER_FREQ 200000000
|
||||||
|
|
||||||
|
/* RAM */
|
||||||
|
#define CONFIG_SYS_SDRAM_BASE 0x80000000
|
||||||
|
|
||||||
|
#define CONFIG_SYS_LOAD_ADDR CONFIG_SYS_SDRAM_BASE + 0x100000
|
||||||
|
|
||||||
|
#define CONFIG_SYS_INIT_SP_OFFSET 0x400000
|
||||||
|
|
||||||
|
#ifdef CONFIG_BOOT_RAM
|
||||||
|
#define CONFIG_SKIP_LOWLEVEL_INIT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* UART */
|
||||||
|
#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200, \
|
||||||
|
230400, 500000, 1500000 }
|
||||||
|
|
||||||
|
/* RAM */
|
||||||
|
#define CONFIG_SYS_MEMTEST_START 0x80100000
|
||||||
|
#define CONFIG_SYS_MEMTEST_END 0x80400000
|
||||||
|
|
||||||
|
/* Memory usage */
|
||||||
|
#define CONFIG_SYS_MAXARGS 64
|
||||||
|
#define CONFIG_SYS_MALLOC_LEN (1024 * 1024)
|
||||||
|
#define CONFIG_SYS_BOOTPARAMS_LEN (128 * 1024)
|
||||||
|
#define CONFIG_SYS_CBSIZE 512
|
||||||
|
|
||||||
|
/* U-Boot */
|
||||||
|
#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE
|
||||||
|
|
||||||
|
/* Environment settings */
|
||||||
|
#define CONFIG_ENV_OFFSET 0x80000
|
||||||
|
#define CONFIG_ENV_SIZE (64 << 10)
|
||||||
|
#define CONFIG_ENV_SECT_SIZE (64 << 10)
|
||||||
|
#define CONFIG_SYS_REDUNDAND_ENVIRONMENT
|
||||||
|
#define CONFIG_ENV_OFFSET_REDUND (CONFIG_ENV_OFFSET + \
|
||||||
|
CONFIG_ENV_SECT_SIZE)
|
||||||
|
#define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Environment is right behind U-Boot in flash. Make sure U-Boot
|
||||||
|
* doesn't grow into the environment area.
|
||||||
|
*/
|
||||||
|
#define CONFIG_BOARD_SIZE_LIMIT CONFIG_ENV_OFFSET
|
||||||
|
|
||||||
|
#endif /* __CONFIG_GARDENA_SMART_GATEWAY_H */
|
Loading…
Reference in New Issue
Block a user