board: mediatek: add MT8390 EVK board support

This adds support for the MT8390 EVK board with the following
features enabled/tested: Boot, UART, Watchdog and MMC.

MT8390 is based on MT8188.

Signed-off-by: Julien Masson <jmasson@baylibre.com>
Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
This commit is contained in:
Julien Masson
2026-02-02 09:23:42 +01:00
committed by Tom Rini
parent 28a1ac87b8
commit ede7198a37
4 changed files with 70 additions and 0 deletions

View File

@@ -0,0 +1,6 @@
MT8390 EVK
M: Julien Masson <jmasson@baylibre.com>
M: Macpaul Lin <Macpaul.Lin@mediatek.com>
S: Maintained
F: board/mediatek/mt8390_evk/
F: configs/mt8390_evk_defconfig

View File

@@ -0,0 +1,3 @@
# SPDX-License-Identifier: GPL-2.0
obj-y += mt8390_evk.o

View File

@@ -0,0 +1,34 @@
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (C) 2026 BayLibre SAS
* Author: Julien Masson <jmasson@baylibre.com>
*/
#include <linux/types.h>
#include <asm/armv8/mmu.h>
int board_init(void)
{
return 0;
}
static struct mm_region mt8390_evk_mem_map[] = {
{
/* DDR */
.virt = 0x40000000UL,
.phys = 0x40000000UL,
.size = 0x200000000UL,
.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) | PTE_BLOCK_OUTER_SHARE,
}, {
.virt = 0x00000000UL,
.phys = 0x00000000UL,
.size = 0x20000000UL,
.attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
PTE_BLOCK_NON_SHARE |
PTE_BLOCK_PXN | PTE_BLOCK_UXN
}, {
0,
}
};
struct mm_region *mem_map = mt8390_evk_mem_map;

View File

@@ -0,0 +1,27 @@
CONFIG_ARM=y
CONFIG_SYS_BOARD="mt8390_evk"
CONFIG_COUNTER_FREQUENCY=13000000
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_TEXT_BASE=0x4c000000
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEFAULT_DEVICE_TREE="mediatek/mt8390-genio-700-evk"
CONFIG_TARGET_MT8188=y
CONFIG_SYS_LOAD_ADDR=0x4c000000
CONFIG_IDENT_STRING="mt8390-evk"
CONFIG_CMD_CLK=y
CONFIG_CMD_GPT=y
CONFIG_CMD_MMC=y
CONFIG_CMD_PART=y
CONFIG_OF_UPSTREAM=y
CONFIG_CLK=y
CONFIG_MMC_MTK=y
CONFIG_PINCTRL=y
CONFIG_PINCONF=y
CONFIG_PINCTRL_MT8188=y
CONFIG_BAUDRATE=921600
CONFIG_DM_SERIAL=y
CONFIG_MTK_SERIAL=y
CONFIG_WDT=y
CONFIG_WDT_MTK=y
# CONFIG_RANDOM_UUID is not set