^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) // SPDX-License-Identifier: GPL-2.0-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * Marvell MMP3 aka PXA2128 aka 88AP2128 support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) * Copyright (C) 2019 Lubomir Rintel <lkundrak@v3.sk>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) #include <linux/io.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #include <linux/irqchip.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #include <linux/of_platform.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #include <linux/clk-provider.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) #include <asm/mach/arch.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) #include <asm/hardware/cache-l2x0.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) #include "common.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) static const char *const mmp3_dt_board_compat[] __initconst = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) "marvell,mmp3",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) NULL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) DT_MACHINE_START(MMP2_DT, "Marvell MMP3")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) .map_io = mmp2_map_io,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) .dt_compat = mmp3_dt_board_compat,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) .l2c_aux_val = 1 << L310_AUX_CTRL_FWA_SHIFT |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) L310_AUX_CTRL_DATA_PREFETCH |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) L310_AUX_CTRL_INSTR_PREFETCH,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) .l2c_aux_mask = 0xc20fffff,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) MACHINE_END