aboutsummaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorYang Xiwen <forbidden405@outlook.com>2023-04-01 19:17:36 +0800
committerTom Rini <trini@konsulko.com>2023-05-03 09:05:24 -0400
commit33f19038cc6b3de9d7eac4567801dc317dab2fbe (patch)
tree96dd10fc7df27aa3a41d1fc73bdb64637f72fc08 /board
parent08ad608aa22b13b42cfb1f32ce071e52791cd669 (diff)
downloadu-boot-33f19038cc6b3de9d7eac4567801dc317dab2fbe.zip
u-boot-33f19038cc6b3de9d7eac4567801dc317dab2fbe.tar.gz
u-boot-33f19038cc6b3de9d7eac4567801dc317dab2fbe.tar.bz2
arm: histb: hi3798mv200: add initial support for Hi3798MV200 HC2910-2AGHD05 board
A board with Hi3798MV200 SoC and various peripherals. Details are in the board README.md. Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
Diffstat (limited to 'board')
-rw-r--r--board/skyworth/hc2910-2aghd05/Kconfig15
-rw-r--r--board/skyworth/hc2910-2aghd05/MAINTAINERS6
-rw-r--r--board/skyworth/hc2910-2aghd05/Makefile1
-rw-r--r--board/skyworth/hc2910-2aghd05/README25
-rw-r--r--board/skyworth/hc2910-2aghd05/hc2910-2aghd05.c26
5 files changed, 73 insertions, 0 deletions
diff --git a/board/skyworth/hc2910-2aghd05/Kconfig b/board/skyworth/hc2910-2aghd05/Kconfig
new file mode 100644
index 0000000..f85f1f2
--- /dev/null
+++ b/board/skyworth/hc2910-2aghd05/Kconfig
@@ -0,0 +1,15 @@
+if TARGET_HC2910_2AGHD05
+
+config SYS_BOARD
+ default "hc2910-2aghd05"
+
+config SYS_VENDOR
+ default "skyworth"
+
+config SYS_SOC
+ default "hi3798mv200"
+
+config SYS_CONFIG_NAME
+ default "hc2910-2aghd05"
+
+endif
diff --git a/board/skyworth/hc2910-2aghd05/MAINTAINERS b/board/skyworth/hc2910-2aghd05/MAINTAINERS
new file mode 100644
index 0000000..2c1e750
--- /dev/null
+++ b/board/skyworth/hc2910-2aghd05/MAINTAINERS
@@ -0,0 +1,6 @@
+HC2910 2AGHD05 BOARD
+M: Yang Xiwen <firbidden405@outlook.com>
+S: Maintained
+F: board/skyworth/hc2910-2aghd05
+F: include/configs/hc2910-2aghd05.h
+F: configs/hc2910_2aghd05_defconfig
diff --git a/board/skyworth/hc2910-2aghd05/Makefile b/board/skyworth/hc2910-2aghd05/Makefile
new file mode 100644
index 0000000..193fd15
--- /dev/null
+++ b/board/skyworth/hc2910-2aghd05/Makefile
@@ -0,0 +1 @@
+obj-y := hc2910-2aghd05.o
diff --git a/board/skyworth/hc2910-2aghd05/README b/board/skyworth/hc2910-2aghd05/README
new file mode 100644
index 0000000..a838956
--- /dev/null
+++ b/board/skyworth/hc2910-2aghd05/README
@@ -0,0 +1,25 @@
+================================================================================
+ Board Information
+================================================================================
+
+The board features the Hi3798M V200 with an integrated quad-core 64-bit ARM
+Cortex A53 processor.
+SOC Hisilicon Hi3798CV200
+CPU Quad-core ARM Cortex-A53 64 bit
+DRAM DDR3/3L/4 SDRAM interface, maximum 32-bit data width 2 GB
+USB 1x USB 2.0 ports 1x USB 3.0 ports
+CONSOLE USB-micro port for console support
+ETHERNET 1 GBe Ethernet, 1 MBe Ethernet
+WIFI 802.11n with Bluebooth
+CONNECTORS One connector for Smart Card One connector for TSI
+
+
+================================================================================
+ BUILD INSTRUCTIONS
+================================================================================
+
+The U-Boot relies on a modified l-loader and TF-A for Hi3798MV200.
+The source for l-loader can be obtained at: [l-loader](https://github.com/185264646/l-loader)
+The mainline port for TF-A is still under development. For now, you can use the TF-A for poplar directly.
+
+For more information, please refer to <board/hisilicon/poplar/README>.
diff --git a/board/skyworth/hc2910-2aghd05/hc2910-2aghd05.c b/board/skyworth/hc2910-2aghd05/hc2910-2aghd05.c
new file mode 100644
index 0000000..abad5ef
--- /dev/null
+++ b/board/skyworth/hc2910-2aghd05/hc2910-2aghd05.c
@@ -0,0 +1,26 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Board init file for Skyworth HC2910 2AGHD05
+ */
+
+#include <common.h>
+#include <fdtdec.h>
+#include <init.h>
+#include <asm/system.h>
+#include <linux/io.h>
+
+#define HI3798MV200_PERI_CTRL_BASE 0xf8a20000
+#define SDIO0_LDO_OFFSET 0x11c
+
+static int sdio0_set_ldo(void)
+{
+ // SDIO LDO bypassed, 3.3V
+ writel(HI3798MV200_PERI_CTRL_BASE + SDIO0_LDO_OFFSET, 0x60);
+ return 0;
+}
+
+int board_init(void)
+{
+ sdio0_set_ldo();
+ return 0;
+}