From 0eb92dfbc7ceeec6af0e5f0e2ace6c389541838f Mon Sep 17 00:00:00 2001 From: Tristan Shieh Date: Fri, 8 Jun 2018 18:21:45 +0800 Subject: mediatek/mt8183: Add MMU operation support Enable MMU in bootblock for performance, link common code to provide mtk_mmu_after_dram() to update MMU table in romstage after dram ready, implement mtk_soc_disable_l2c_sram(), and call mtk_mmu_disable_l2c_sram() to turn off L2C sram in ramstage. BUG=b:80501386 BRANCH=none TEST=Boots correctly on Kukui. Change-Id: I4e35f8276ca23de7fd13da3515b9f48d944ead32 Signed-off-by: Tristan Shieh Reviewed-on: https://review.coreboot.org/27303 Tested-by: build bot (Jenkins) Reviewed-by: Julius Werner --- src/soc/mediatek/mt8183/soc.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/soc/mediatek/mt8183/soc.c (limited to 'src/soc/mediatek/mt8183/soc.c') diff --git a/src/soc/mediatek/mt8183/soc.c b/src/soc/mediatek/mt8183/soc.c new file mode 100644 index 0000000000..b8348a1457 --- /dev/null +++ b/src/soc/mediatek/mt8183/soc.c @@ -0,0 +1,36 @@ +/* + * This file is part of the coreboot project. + * + * Copyright 2018 MediaTek Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include + +static void soc_init(struct device *dev) +{ + mtk_mmu_disable_l2c_sram(); +} + +static struct device_operations soc_ops = { + .init = soc_init, +}; + +static void enable_soc_dev(struct device *dev) +{ + dev->ops = &soc_ops; +} + +struct chip_operations soc_mediatek_mt8183_ops = { + CHIP_NAME("SOC Mediatek MT8183") + .enable_dev = enable_soc_dev, +}; -- cgit v1.2.3