xref: /openbmc/linux/arch/arm/mach-berlin/berlin.c (revision 1c37fa10)
11c37fa10SSebastian Hesselbarth /*
21c37fa10SSebastian Hesselbarth  * Device Tree support for Marvell Berlin SoCs.
31c37fa10SSebastian Hesselbarth  *
41c37fa10SSebastian Hesselbarth  * Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
51c37fa10SSebastian Hesselbarth  *
61c37fa10SSebastian Hesselbarth  * based on GPL'ed 2.6 kernel sources
71c37fa10SSebastian Hesselbarth  *  (c) Marvell International Ltd.
81c37fa10SSebastian Hesselbarth  *
91c37fa10SSebastian Hesselbarth  * This file is licensed under the terms of the GNU General Public
101c37fa10SSebastian Hesselbarth  * License version 2.  This program is licensed "as is" without any
111c37fa10SSebastian Hesselbarth  * warranty of any kind, whether express or implied.
121c37fa10SSebastian Hesselbarth  */
131c37fa10SSebastian Hesselbarth 
141c37fa10SSebastian Hesselbarth #include <linux/init.h>
151c37fa10SSebastian Hesselbarth #include <linux/io.h>
161c37fa10SSebastian Hesselbarth #include <linux/kernel.h>
171c37fa10SSebastian Hesselbarth #include <linux/of_platform.h>
181c37fa10SSebastian Hesselbarth #include <asm/hardware/cache-l2x0.h>
191c37fa10SSebastian Hesselbarth #include <asm/mach/arch.h>
201c37fa10SSebastian Hesselbarth 
211c37fa10SSebastian Hesselbarth static void __init berlin_init_machine(void)
221c37fa10SSebastian Hesselbarth {
231c37fa10SSebastian Hesselbarth 	/*
241c37fa10SSebastian Hesselbarth 	 * with DT probing for L2CCs, berlin_init_machine can be removed.
251c37fa10SSebastian Hesselbarth 	 * Note: 88DE3005 (Armada 1500-mini) uses pl310 l2cc
261c37fa10SSebastian Hesselbarth 	 */
271c37fa10SSebastian Hesselbarth 	l2x0_of_init(0x70c00000, 0xfeffffff);
281c37fa10SSebastian Hesselbarth 	of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
291c37fa10SSebastian Hesselbarth }
301c37fa10SSebastian Hesselbarth 
311c37fa10SSebastian Hesselbarth static const char * const berlin_dt_compat[] = {
321c37fa10SSebastian Hesselbarth 	"marvell,berlin",
331c37fa10SSebastian Hesselbarth 	NULL,
341c37fa10SSebastian Hesselbarth };
351c37fa10SSebastian Hesselbarth 
361c37fa10SSebastian Hesselbarth DT_MACHINE_START(BERLIN_DT, "Marvell Berlin")
371c37fa10SSebastian Hesselbarth 	.dt_compat	= berlin_dt_compat,
381c37fa10SSebastian Hesselbarth 	.init_machine	= berlin_init_machine,
391c37fa10SSebastian Hesselbarth MACHINE_END
40