board: Add STMicroelectronics STiH410-B2260 support
authorPatrice Chotard <patrice.chotard@st.com>
Tue, 21 Feb 2017 12:37:12 +0000 (13:37 +0100)
committerTom Rini <trini@konsulko.com>
Wed, 15 Mar 2017 00:40:21 +0000 (20:40 -0400)
This is a 96Board compliant board based on STiH410 SoC:
  - 1GB DDR
  - On-Board USB combo WiFi/Bluetooth RTL8723BU
    with PCB soldered antenna
  - Ethernet 1000-BaseT
  - SATA
  - HDMI
  - 2 x USB2.0 type A
  - 1 x USB2.0 type micro-AB
  - SD card slot
  - High speed connector (SD/I2C/USB interfaces)
  - Low speed connector (UART/I2C/GPIO/SPI/PCM interfaces)

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
arch/arm/mach-sti/Kconfig
board/st/stih410-b2260/Kconfig [new file with mode: 0644]
board/st/stih410-b2260/MAINTAINERS [new file with mode: 0644]
board/st/stih410-b2260/Makefile [new file with mode: 0644]
board/st/stih410-b2260/board.c [new file with mode: 0644]
configs/stih410-b2260_defconfig [new file with mode: 0644]
include/configs/stih410-b2260.h [new file with mode: 0644]

index 87c04b2c684852fa4c157e26e28bf50ba60397b2..f9a583af8d85bffb1ff1620e71fb970140dead9d 100644 (file)
@@ -3,4 +3,29 @@ if ARCH_STI
 config SYS_SOC
        default "stih410"
 
+choice
+       prompt "STiH410 board select"
+
+config TARGET_STIH410_B2260
+       bool "96Boards STiH410-B2260"
+       help
+         Support for 96Board STiH410-B2260 based on STMicrolectronics
+         STiH410 soc. This board complies with 96Board Open Platform
+         Specifications. Features:
+         - 1GB DDR
+         - On-Board USB combo WiFi/Bluetooth RTL8723BU
+           with PCB soldered antenna
+         - Ethernet 1000-BaseT
+         - Sata
+         - HDMI
+         - 2 x USB2 type A
+         - micro USB2 type AB
+         - SD card slot
+         - High speed connector (SD/I2C/USB interfaces)
+         - Low speed connector (UART/I2C/GPIO/SPI/PCM interfaces)
+
+endchoice
+
+source "board/st/stih410-b2260/Kconfig"
+
 endif
diff --git a/board/st/stih410-b2260/Kconfig b/board/st/stih410-b2260/Kconfig
new file mode 100644 (file)
index 0000000..590add0
--- /dev/null
@@ -0,0 +1,19 @@
+if TARGET_STIH410_B2260
+
+config SYS_BOARD
+       string
+       default "stih410-b2260"
+
+config SYS_VENDOR
+       string
+       default "st"
+
+config SYS_SOC
+       string
+       default "stih410"
+
+config SYS_CONFIG_NAME
+       string
+       default "stih410-b2260"
+
+endif
diff --git a/board/st/stih410-b2260/MAINTAINERS b/board/st/stih410-b2260/MAINTAINERS
new file mode 100644 (file)
index 0000000..4f557ac
--- /dev/null
@@ -0,0 +1,7 @@
+STIH410-B2260 BOARD
+M:     Patrice Chotard <patrice.chotard@st.com>
+S:     Maintained
+F:     board/st/stih410-b2260/
+F:     include/configs/stih410-b2260.h
+F:     configs/stih410-b2260_defconfig
+F:     arch/arm/dts/stih*
diff --git a/board/st/stih410-b2260/Makefile b/board/st/stih410-b2260/Makefile
new file mode 100644 (file)
index 0000000..68a7903
--- /dev/null
@@ -0,0 +1,8 @@
+#
+# (C) Copyright 2017
+# Patrice Chotard, <patrice.chotard@st.com>
+#
+# SPDX-License-Identifier:     GPL-2.0+
+#
+
+obj-y  = board.o
diff --git a/board/st/stih410-b2260/board.c b/board/st/stih410-b2260/board.c
new file mode 100644 (file)
index 0000000..0c06bca
--- /dev/null
@@ -0,0 +1,28 @@
+/*
+ * Board init file for STiH410-B2260
+ *
+ * (C) Copyright 2017 Patrice Chotard <patrice.chotard@st.com>
+ *
+ * SPDX-License-Identifier:    GPL-2.0+
+ */
+
+#include <common.h>
+
+DECLARE_GLOBAL_DATA_PTR;
+
+int dram_init(void)
+{
+       gd->ram_size = PHYS_SDRAM_1_SIZE;
+       return 0;
+}
+
+void dram_init_banksize(void)
+{
+       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
+       gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
+}
+
+int board_init(void)
+{
+       return 0;
+}
diff --git a/configs/stih410-b2260_defconfig b/configs/stih410-b2260_defconfig
new file mode 100644 (file)
index 0000000..4e6942f
--- /dev/null
@@ -0,0 +1,26 @@
+CONFIG_ARM=y
+CONFIG_ARCH_STI=y
+CONFIG_IDENT_STRING="STMicroelectronics STiH410-B2260"
+CONFIG_DEFAULT_DEVICE_TREE="stih410-b2260"
+CONFIG_FIT=y
+CONFIG_FIT_VERBOSE=y
+# CONFIG_DISPLAY_CPUINFO is not set
+CONFIG_SYS_PROMPT="stih410-b2260 => "
+# CONFIG_CMD_IMLS is not set
+CONFIG_CMD_MMC=y
+CONFIG_CMD_TIME=y
+CONFIG_CMD_TIMER=y
+CONFIG_CMD_EXT2=y
+CONFIG_CMD_EXT4=y
+CONFIG_CMD_FAT=y
+CONFIG_CMD_FS_GENERIC=y
+CONFIG_OF_CONTROL=y
+CONFIG_REGMAP=y
+CONFIG_SYSCON=y
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_STI=y
+CONFIG_PINCTRL=y
+CONFIG_STI_ASC_SERIAL=y
+CONFIG_SYSRESET=y
+CONFIG_TIMER=y
+CONFIG_SPL_OF_LIBFDT=y
diff --git a/include/configs/stih410-b2260.h b/include/configs/stih410-b2260.h
new file mode 100644 (file)
index 0000000..28e2f7f
--- /dev/null
@@ -0,0 +1,60 @@
+/*
+ * (C) Copyright 2017
+ * Patrice Chotard, <patrice.chotard@st.com>
+ *
+ * SPDX-License-Identifier:    GPL-2.0+
+ */
+
+#ifndef __CONFIG_H
+#define __CONFIG_H
+
+#include <config.h>
+
+/* ram memory-related information */
+#define CONFIG_NR_DRAM_BANKS           1
+#define PHYS_SDRAM_1                   0x40000000
+#define CONFIG_SYS_SDRAM_BASE          PHYS_SDRAM_1
+#define PHYS_SDRAM_1_SIZE              0x3FE00000
+#define CONFIG_SYS_TEXT_BASE           0x7D600000
+#define CONFIG_SYS_LOAD_ADDR           PHYS_SDRAM_1    /* default load addr */
+
+#define CONFIG_BAUDRATE                        115200
+
+#define CONFIG_SYS_HZ_CLOCK            1000000000      /* 1 GHz */
+
+/* Libraries */
+#define CONFIG_MD5
+
+#define CONFIG_BOOTARGS                                                        \
+       "console=ttyS0,115200 earlyprintk consoleblank=0 ignore_loglevel"
+
+/* Environment */
+#define CONFIG_EXTRA_ENV_SETTINGS \
+       "board= B2260" \
+       "load_addr= #CONFIG_SYS_LOAD_ADDR \0"
+
+#define CONFIG_ENV_IS_NOWHERE
+#define CONFIG_ENV_SIZE 0x4000
+
+/* Extra Commands */
+#define CONFIG_CMD_ASKENV
+#define CONFIG_SYS_LONGHELP
+
+#define CONFIG_SETUP_MEMORY_TAGS
+
+/* Size of malloc() pool */
+#define CONFIG_SYS_MALLOC_LEN          0x1800000
+#define CONFIG_SYS_GBL_DATA_SIZE       1024    /* Global data structures */
+#define CONFIG_SYS_INIT_SP_ADDR                (CONFIG_SYS_TEXT_BASE - \
+                                        CONFIG_SYS_MALLOC_LEN - \
+                                        CONFIG_SYS_GBL_DATA_SIZE)
+
+/* Monitor Command Prompt */
+#define CONFIG_SYS_CBSIZE              1024    /* Console I/O Buffer Size */
+
+#define CONFIG_SYS_MAXARGS             16      /* max number of command args */
+#define CONFIG_SYS_MAX_FLASH_BANKS     1
+
+#define CONFIG_SKIP_LOWLEVEL_INIT
+
+#endif /* __CONFIG_H */