diff options
author | Weijie Gao <weijie.gao@mediatek.com> | 2022-09-09 19:59:11 +0800 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2022-09-23 15:09:15 -0400 |
commit | ed86e4fba10d8dcb9f65bef7a3535d17cefc9cf8 (patch) | |
tree | da8fdfe65eb9dcd8d6d3279672b4257e8f02373e /arch/arm/mach-mediatek/mt7981/init.c | |
parent | 10c62336968ab99d673319541c0c246dd6a525fb (diff) | |
download | u-boot-ed86e4fba10d8dcb9f65bef7a3535d17cefc9cf8.tar.gz |
arm: mediatek: add support for MediaTek MT7981 SoC
This patch adds basic support for MediaTek MT7981 SoC.
This include the file that will initialize the SoC after boot and its
device tree.
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
Diffstat (limited to 'arch/arm/mach-mediatek/mt7981/init.c')
-rw-r--r-- | arch/arm/mach-mediatek/mt7981/init.c | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/arch/arm/mach-mediatek/mt7981/init.c b/arch/arm/mach-mediatek/mt7981/init.c new file mode 100644 index 00000000000..4f77a3defb0 --- /dev/null +++ b/arch/arm/mach-mediatek/mt7981/init.c @@ -0,0 +1,45 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2022 MediaTek Inc. + * Author: Sam Shih <sam.shih@mediatek.com> + */ + +#include <init.h> +#include <asm/armv8/mmu.h> +#include <asm/system.h> +#include <asm/global_data.h> + +DECLARE_GLOBAL_DATA_PTR; + +int dram_init(void) +{ + gd->ram_size = get_ram_size((void *)CONFIG_SYS_SDRAM_BASE, SZ_2G); + + return 0; +} + +void reset_cpu(ulong addr) +{ + psci_system_reset(); +} + +static struct mm_region mt7981_mem_map[] = { + { + /* DDR */ + .virt = 0x40000000UL, + .phys = 0x40000000UL, + .size = 0x80000000UL, + .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) | PTE_BLOCK_OUTER_SHARE, + }, { + .virt = 0x00000000UL, + .phys = 0x00000000UL, + .size = 0x40000000UL, + .attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) | + PTE_BLOCK_NON_SHARE | + PTE_BLOCK_PXN | PTE_BLOCK_UXN + }, { + 0, + } +}; + +struct mm_region *mem_map = mt7981_mem_map; |