Linux Audio

Check our new training course

Loading...
v4.10.11
 
  1/*
  2 * Copyright (C) 2005 Nokia Corporation
  3 * Author: Paul Mundt <paul.mundt@nokia.com>
  4 *
  5 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
  6 *
  7 * Modified from the original mach-omap/omap2/board-generic.c did by Paul
  8 * to support the OMAP2+ device tree boards with an unique board file.
  9 *
 10 * This program is free software; you can redistribute it and/or modify
 11 * it under the terms of the GNU General Public License version 2 as
 12 * published by the Free Software Foundation.
 13 */
 14#include <linux/io.h>
 15#include <linux/of_irq.h>
 16#include <linux/of_platform.h>
 17#include <linux/irqdomain.h>
 18
 19#include <asm/setup.h>
 20#include <asm/mach/arch.h>
 21#include <asm/system_info.h>
 22
 23#include "common.h"
 24
 25static const struct of_device_id omap_dt_match_table[] __initconst = {
 26	{ .compatible = "simple-bus", },
 27	{ .compatible = "ti,omap-infra", },
 28	{ }
 29};
 30
 31static void __init omap_generic_init(void)
 32{
 33	pdata_quirks_init(omap_dt_match_table);
 34
 35	omapdss_init_of();
 36}
 37
 38#ifdef CONFIG_SOC_OMAP2420
 39static const char *const omap242x_boards_compat[] __initconst = {
 40	"ti,omap2420",
 41	NULL,
 42};
 43
 44DT_MACHINE_START(OMAP242X_DT, "Generic OMAP2420 (Flattened Device Tree)")
 45	.reserve	= omap_reserve,
 46	.map_io		= omap242x_map_io,
 47	.init_early	= omap2420_init_early,
 48	.init_machine	= omap_generic_init,
 49	.init_time	= omap_init_time,
 50	.dt_compat	= omap242x_boards_compat,
 51	.restart	= omap2xxx_restart,
 52MACHINE_END
 53#endif
 54
 55#ifdef CONFIG_SOC_OMAP2430
 56static const char *const omap243x_boards_compat[] __initconst = {
 57	"ti,omap2430",
 58	NULL,
 59};
 60
 61DT_MACHINE_START(OMAP243X_DT, "Generic OMAP2430 (Flattened Device Tree)")
 62	.reserve	= omap_reserve,
 63	.map_io		= omap243x_map_io,
 64	.init_early	= omap2430_init_early,
 65	.init_machine	= omap_generic_init,
 66	.init_time	= omap_init_time,
 67	.dt_compat	= omap243x_boards_compat,
 68	.restart	= omap2xxx_restart,
 69MACHINE_END
 70#endif
 71
 72#ifdef CONFIG_ARCH_OMAP3
 73/* Some boards need board name for legacy userspace in /proc/cpuinfo */
 74static const char *const n900_boards_compat[] __initconst = {
 75	"nokia,omap3-n900",
 76	NULL,
 77};
 78
 79/* Set system_rev from atags */
 80static void __init rx51_set_system_rev(const struct tag *tags)
 81{
 82	const struct tag *tag;
 83
 84	if (tags->hdr.tag != ATAG_CORE)
 85		return;
 86
 87	for_each_tag(tag, tags) {
 88		if (tag->hdr.tag == ATAG_REVISION) {
 89			system_rev = tag->u.revision.rev;
 90			break;
 91		}
 92	}
 93}
 94
 95/* Legacy userspace on Nokia N900 needs ATAGS exported in /proc/atags,
 96 * save them while the data is still not overwritten
 97 */
 98static void __init rx51_reserve(void)
 99{
100	const struct tag *tags = (const struct tag *)(PAGE_OFFSET + 0x100);
101
102	save_atags(tags);
103	rx51_set_system_rev(tags);
104	omap_reserve();
105}
106
107DT_MACHINE_START(OMAP3_N900_DT, "Nokia RX-51 board")
108	.reserve	= rx51_reserve,
109	.map_io		= omap3_map_io,
110	.init_early	= omap3430_init_early,
111	.init_machine	= omap_generic_init,
112	.init_late	= omap3_init_late,
113	.init_time	= omap_init_time,
114	.dt_compat	= n900_boards_compat,
115	.restart	= omap3xxx_restart,
116MACHINE_END
117
118/* Generic omap3 boards, most boards can use these */
119static const char *const omap3_boards_compat[] __initconst = {
120	"ti,omap3430",
121	"ti,omap3",
122	NULL,
123};
124
125DT_MACHINE_START(OMAP3_DT, "Generic OMAP3 (Flattened Device Tree)")
126	.reserve	= omap_reserve,
127	.map_io		= omap3_map_io,
128	.init_early	= omap3430_init_early,
129	.init_machine	= omap_generic_init,
130	.init_late	= omap3_init_late,
131	.init_time	= omap_init_time,
132	.dt_compat	= omap3_boards_compat,
133	.restart	= omap3xxx_restart,
134MACHINE_END
135
136static const char *const omap36xx_boards_compat[] __initconst = {
137	"ti,omap3630",
138	"ti,omap36xx",
139	NULL,
140};
141
142DT_MACHINE_START(OMAP36XX_DT, "Generic OMAP36xx (Flattened Device Tree)")
143	.reserve	= omap_reserve,
144	.map_io		= omap3_map_io,
145	.init_early	= omap3630_init_early,
146	.init_machine	= omap_generic_init,
147	.init_late	= omap3_init_late,
148	.init_time	= omap_init_time,
149	.dt_compat	= omap36xx_boards_compat,
150	.restart	= omap3xxx_restart,
151MACHINE_END
152
153static const char *const omap3_gp_boards_compat[] __initconst = {
154	"ti,omap3-beagle",
155	"timll,omap3-devkit8000",
156	NULL,
157};
158
159DT_MACHINE_START(OMAP3_GP_DT, "Generic OMAP3-GP (Flattened Device Tree)")
160	.reserve	= omap_reserve,
161	.map_io		= omap3_map_io,
162	.init_early	= omap3430_init_early,
163	.init_machine	= omap_generic_init,
164	.init_late	= omap3_init_late,
165	.init_time	= omap3_secure_sync32k_timer_init,
166	.dt_compat	= omap3_gp_boards_compat,
167	.restart	= omap3xxx_restart,
168MACHINE_END
169
170static const char *const am3517_boards_compat[] __initconst = {
171	"ti,am3517",
172	NULL,
173};
174
175DT_MACHINE_START(AM3517_DT, "Generic AM3517 (Flattened Device Tree)")
176	.reserve	= omap_reserve,
177	.map_io		= omap3_map_io,
178	.init_early	= am35xx_init_early,
179	.init_machine	= omap_generic_init,
180	.init_late	= omap3_init_late,
181	.init_time	= omap3_gptimer_timer_init,
182	.dt_compat	= am3517_boards_compat,
183	.restart	= omap3xxx_restart,
184MACHINE_END
185#endif
186
187#ifdef CONFIG_SOC_TI81XX
188static const char *const ti814x_boards_compat[] __initconst = {
189	"ti,dm8148",
190	"ti,dm814",
191	NULL,
192};
193
194DT_MACHINE_START(TI814X_DT, "Generic ti814x (Flattened Device Tree)")
195	.reserve	= omap_reserve,
196	.map_io		= ti81xx_map_io,
197	.init_early	= ti814x_init_early,
198	.init_machine	= omap_generic_init,
199	.init_late	= ti81xx_init_late,
200	.init_time	= omap3_gptimer_timer_init,
201	.dt_compat	= ti814x_boards_compat,
202	.restart	= ti81xx_restart,
203MACHINE_END
204
205static const char *const ti816x_boards_compat[] __initconst = {
206	"ti,dm8168",
207	"ti,dm816",
208	NULL,
209};
210
211DT_MACHINE_START(TI816X_DT, "Generic ti816x (Flattened Device Tree)")
212	.reserve	= omap_reserve,
213	.map_io		= ti81xx_map_io,
214	.init_early	= ti816x_init_early,
215	.init_machine	= omap_generic_init,
216	.init_late	= ti81xx_init_late,
217	.init_time	= omap3_gptimer_timer_init,
218	.dt_compat	= ti816x_boards_compat,
219	.restart	= ti81xx_restart,
220MACHINE_END
221#endif
222
223#ifdef CONFIG_SOC_AM33XX
224static const char *const am33xx_boards_compat[] __initconst = {
225	"ti,am33xx",
226	NULL,
227};
228
229DT_MACHINE_START(AM33XX_DT, "Generic AM33XX (Flattened Device Tree)")
230	.reserve	= omap_reserve,
231	.map_io		= am33xx_map_io,
232	.init_early	= am33xx_init_early,
233	.init_machine	= omap_generic_init,
234	.init_late	= am33xx_init_late,
235	.init_time	= omap3_gptimer_timer_init,
236	.dt_compat	= am33xx_boards_compat,
237	.restart	= am33xx_restart,
238MACHINE_END
239#endif
240
241#ifdef CONFIG_ARCH_OMAP4
242static const char *const omap4_boards_compat[] __initconst = {
243	"ti,omap4460",
244	"ti,omap4430",
245	"ti,omap4",
246	NULL,
247};
248
249DT_MACHINE_START(OMAP4_DT, "Generic OMAP4 (Flattened Device Tree)")
250	.l2c_aux_val	= OMAP_L2C_AUX_CTRL,
251	.l2c_aux_mask	= 0xcf9fffff,
252	.l2c_write_sec	= omap4_l2c310_write_sec,
253	.reserve	= omap_reserve,
254	.smp		= smp_ops(omap4_smp_ops),
255	.map_io		= omap4_map_io,
256	.init_early	= omap4430_init_early,
257	.init_irq	= omap_gic_of_init,
258	.init_machine	= omap_generic_init,
259	.init_late	= omap4430_init_late,
260	.init_time	= omap4_local_timer_init,
261	.dt_compat	= omap4_boards_compat,
262	.restart	= omap44xx_restart,
263MACHINE_END
264#endif
265
266#ifdef CONFIG_SOC_OMAP5
267static const char *const omap5_boards_compat[] __initconst = {
268	"ti,omap5432",
269	"ti,omap5430",
270	"ti,omap5",
271	NULL,
272};
273
274DT_MACHINE_START(OMAP5_DT, "Generic OMAP5 (Flattened Device Tree)")
275#if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE)
276	.dma_zone_size	= SZ_2G,
277#endif
278	.reserve	= omap_reserve,
279	.smp		= smp_ops(omap4_smp_ops),
280	.map_io		= omap5_map_io,
281	.init_early	= omap5_init_early,
282	.init_irq	= omap_gic_of_init,
283	.init_machine	= omap_generic_init,
284	.init_late	= omap5_init_late,
285	.init_time	= omap5_realtime_timer_init,
286	.dt_compat	= omap5_boards_compat,
287	.restart	= omap44xx_restart,
288MACHINE_END
289#endif
290
291#ifdef CONFIG_SOC_AM43XX
292static const char *const am43_boards_compat[] __initconst = {
293	"ti,am4372",
294	"ti,am43",
295	NULL,
296};
297
298DT_MACHINE_START(AM43_DT, "Generic AM43 (Flattened Device Tree)")
299	.l2c_aux_val	= OMAP_L2C_AUX_CTRL,
300	.l2c_aux_mask	= 0xcf9fffff,
301	.l2c_write_sec	= omap4_l2c310_write_sec,
302	.map_io		= am33xx_map_io,
303	.init_early	= am43xx_init_early,
304	.init_late	= am43xx_init_late,
305	.init_irq	= omap_gic_of_init,
306	.init_machine	= omap_generic_init,
307	.init_time	= omap3_gptimer_timer_init,
308	.dt_compat	= am43_boards_compat,
309	.restart	= omap44xx_restart,
310MACHINE_END
311#endif
312
313#ifdef CONFIG_SOC_DRA7XX
314static const char *const dra74x_boards_compat[] __initconst = {
 
315	"ti,am5728",
316	"ti,am5726",
317	"ti,dra742",
318	"ti,dra7",
319	NULL,
320};
321
322DT_MACHINE_START(DRA74X_DT, "Generic DRA74X (Flattened Device Tree)")
323#if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE)
324	.dma_zone_size	= SZ_2G,
325#endif
326	.reserve	= omap_reserve,
327	.smp		= smp_ops(omap4_smp_ops),
328	.map_io		= dra7xx_map_io,
329	.init_early	= dra7xx_init_early,
330	.init_late	= dra7xx_init_late,
331	.init_irq	= omap_gic_of_init,
332	.init_machine	= omap_generic_init,
333	.init_time	= omap5_realtime_timer_init,
334	.dt_compat	= dra74x_boards_compat,
335	.restart	= omap44xx_restart,
336MACHINE_END
337
338static const char *const dra72x_boards_compat[] __initconst = {
339	"ti,am5718",
340	"ti,am5716",
341	"ti,dra722",
342	"ti,dra718",
343	NULL,
344};
345
346DT_MACHINE_START(DRA72X_DT, "Generic DRA72X (Flattened Device Tree)")
347#if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE)
348	.dma_zone_size	= SZ_2G,
349#endif
350	.reserve	= omap_reserve,
351	.map_io		= dra7xx_map_io,
352	.init_early	= dra7xx_init_early,
353	.init_late	= dra7xx_init_late,
354	.init_irq	= omap_gic_of_init,
355	.init_machine	= omap_generic_init,
356	.init_time	= omap5_realtime_timer_init,
357	.dt_compat	= dra72x_boards_compat,
358	.restart	= omap44xx_restart,
359MACHINE_END
360#endif
v5.4
  1// SPDX-License-Identifier: GPL-2.0-only
  2/*
  3 * Copyright (C) 2005 Nokia Corporation
  4 * Author: Paul Mundt <paul.mundt@nokia.com>
  5 *
  6 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
  7 *
  8 * Modified from the original mach-omap/omap2/board-generic.c did by Paul
  9 * to support the OMAP2+ device tree boards with an unique board file.
 
 
 
 
 10 */
 11#include <linux/io.h>
 12#include <linux/of_irq.h>
 13#include <linux/of_platform.h>
 14#include <linux/irqdomain.h>
 15
 16#include <asm/setup.h>
 17#include <asm/mach/arch.h>
 18#include <asm/system_info.h>
 19
 20#include "common.h"
 21
 22static const struct of_device_id omap_dt_match_table[] __initconst = {
 23	{ .compatible = "simple-bus", },
 24	{ .compatible = "ti,omap-infra", },
 25	{ }
 26};
 27
 28static void __init __maybe_unused omap_generic_init(void)
 29{
 30	pdata_quirks_init(omap_dt_match_table);
 31	omap_soc_device_init();
 
 32}
 33
 34#ifdef CONFIG_SOC_OMAP2420
 35static const char *const omap242x_boards_compat[] __initconst = {
 36	"ti,omap2420",
 37	NULL,
 38};
 39
 40DT_MACHINE_START(OMAP242X_DT, "Generic OMAP2420 (Flattened Device Tree)")
 41	.reserve	= omap_reserve,
 42	.map_io		= omap242x_map_io,
 43	.init_early	= omap2420_init_early,
 44	.init_machine	= omap_generic_init,
 45	.init_time	= omap_init_time,
 46	.dt_compat	= omap242x_boards_compat,
 47	.restart	= omap2xxx_restart,
 48MACHINE_END
 49#endif
 50
 51#ifdef CONFIG_SOC_OMAP2430
 52static const char *const omap243x_boards_compat[] __initconst = {
 53	"ti,omap2430",
 54	NULL,
 55};
 56
 57DT_MACHINE_START(OMAP243X_DT, "Generic OMAP2430 (Flattened Device Tree)")
 58	.reserve	= omap_reserve,
 59	.map_io		= omap243x_map_io,
 60	.init_early	= omap2430_init_early,
 61	.init_machine	= omap_generic_init,
 62	.init_time	= omap_init_time,
 63	.dt_compat	= omap243x_boards_compat,
 64	.restart	= omap2xxx_restart,
 65MACHINE_END
 66#endif
 67
 68#ifdef CONFIG_ARCH_OMAP3
 69/* Some boards need board name for legacy userspace in /proc/cpuinfo */
 70static const char *const n900_boards_compat[] __initconst = {
 71	"nokia,omap3-n900",
 72	NULL,
 73};
 74
 75/* Set system_rev from atags */
 76static void __init rx51_set_system_rev(const struct tag *tags)
 77{
 78	const struct tag *tag;
 79
 80	if (tags->hdr.tag != ATAG_CORE)
 81		return;
 82
 83	for_each_tag(tag, tags) {
 84		if (tag->hdr.tag == ATAG_REVISION) {
 85			system_rev = tag->u.revision.rev;
 86			break;
 87		}
 88	}
 89}
 90
 91/* Legacy userspace on Nokia N900 needs ATAGS exported in /proc/atags,
 92 * save them while the data is still not overwritten
 93 */
 94static void __init rx51_reserve(void)
 95{
 96	const struct tag *tags = (const struct tag *)(PAGE_OFFSET + 0x100);
 97
 98	save_atags(tags);
 99	rx51_set_system_rev(tags);
100	omap_reserve();
101}
102
103DT_MACHINE_START(OMAP3_N900_DT, "Nokia RX-51 board")
104	.reserve	= rx51_reserve,
105	.map_io		= omap3_map_io,
106	.init_early	= omap3430_init_early,
107	.init_machine	= omap_generic_init,
108	.init_late	= omap3_init_late,
109	.init_time	= omap_init_time,
110	.dt_compat	= n900_boards_compat,
111	.restart	= omap3xxx_restart,
112MACHINE_END
113
114/* Generic omap3 boards, most boards can use these */
115static const char *const omap3_boards_compat[] __initconst = {
116	"ti,omap3430",
117	"ti,omap3",
118	NULL,
119};
120
121DT_MACHINE_START(OMAP3_DT, "Generic OMAP3 (Flattened Device Tree)")
122	.reserve	= omap_reserve,
123	.map_io		= omap3_map_io,
124	.init_early	= omap3430_init_early,
125	.init_machine	= omap_generic_init,
126	.init_late	= omap3_init_late,
127	.init_time	= omap_init_time,
128	.dt_compat	= omap3_boards_compat,
129	.restart	= omap3xxx_restart,
130MACHINE_END
131
132static const char *const omap36xx_boards_compat[] __initconst = {
133	"ti,omap3630",
134	"ti,omap36xx",
135	NULL,
136};
137
138DT_MACHINE_START(OMAP36XX_DT, "Generic OMAP36xx (Flattened Device Tree)")
139	.reserve	= omap_reserve,
140	.map_io		= omap3_map_io,
141	.init_early	= omap3630_init_early,
142	.init_machine	= omap_generic_init,
143	.init_late	= omap3_init_late,
144	.init_time	= omap_init_time,
145	.dt_compat	= omap36xx_boards_compat,
146	.restart	= omap3xxx_restart,
147MACHINE_END
148
149static const char *const omap3_gp_boards_compat[] __initconst = {
150	"ti,omap3-beagle",
151	"timll,omap3-devkit8000",
152	NULL,
153};
154
155DT_MACHINE_START(OMAP3_GP_DT, "Generic OMAP3-GP (Flattened Device Tree)")
156	.reserve	= omap_reserve,
157	.map_io		= omap3_map_io,
158	.init_early	= omap3430_init_early,
159	.init_machine	= omap_generic_init,
160	.init_late	= omap3_init_late,
161	.init_time	= omap3_secure_sync32k_timer_init,
162	.dt_compat	= omap3_gp_boards_compat,
163	.restart	= omap3xxx_restart,
164MACHINE_END
165
166static const char *const am3517_boards_compat[] __initconst = {
167	"ti,am3517",
168	NULL,
169};
170
171DT_MACHINE_START(AM3517_DT, "Generic AM3517 (Flattened Device Tree)")
172	.reserve	= omap_reserve,
173	.map_io		= omap3_map_io,
174	.init_early	= am35xx_init_early,
175	.init_machine	= omap_generic_init,
176	.init_late	= omap3_init_late,
177	.init_time	= omap3_gptimer_timer_init,
178	.dt_compat	= am3517_boards_compat,
179	.restart	= omap3xxx_restart,
180MACHINE_END
181#endif
182
183#ifdef CONFIG_SOC_TI81XX
184static const char *const ti814x_boards_compat[] __initconst = {
185	"ti,dm8148",
186	"ti,dm814",
187	NULL,
188};
189
190DT_MACHINE_START(TI814X_DT, "Generic ti814x (Flattened Device Tree)")
191	.reserve	= omap_reserve,
192	.map_io		= ti81xx_map_io,
193	.init_early	= ti814x_init_early,
194	.init_machine	= omap_generic_init,
195	.init_late	= ti81xx_init_late,
196	.init_time	= omap3_gptimer_timer_init,
197	.dt_compat	= ti814x_boards_compat,
198	.restart	= ti81xx_restart,
199MACHINE_END
200
201static const char *const ti816x_boards_compat[] __initconst = {
202	"ti,dm8168",
203	"ti,dm816",
204	NULL,
205};
206
207DT_MACHINE_START(TI816X_DT, "Generic ti816x (Flattened Device Tree)")
208	.reserve	= omap_reserve,
209	.map_io		= ti81xx_map_io,
210	.init_early	= ti816x_init_early,
211	.init_machine	= omap_generic_init,
212	.init_late	= ti81xx_init_late,
213	.init_time	= omap3_gptimer_timer_init,
214	.dt_compat	= ti816x_boards_compat,
215	.restart	= ti81xx_restart,
216MACHINE_END
217#endif
218
219#ifdef CONFIG_SOC_AM33XX
220static const char *const am33xx_boards_compat[] __initconst = {
221	"ti,am33xx",
222	NULL,
223};
224
225DT_MACHINE_START(AM33XX_DT, "Generic AM33XX (Flattened Device Tree)")
226	.reserve	= omap_reserve,
227	.map_io		= am33xx_map_io,
228	.init_early	= am33xx_init_early,
229	.init_machine	= omap_generic_init,
230	.init_late	= am33xx_init_late,
231	.init_time	= omap3_gptimer_timer_init,
232	.dt_compat	= am33xx_boards_compat,
233	.restart	= am33xx_restart,
234MACHINE_END
235#endif
236
237#ifdef CONFIG_ARCH_OMAP4
238static const char *const omap4_boards_compat[] __initconst = {
239	"ti,omap4460",
240	"ti,omap4430",
241	"ti,omap4",
242	NULL,
243};
244
245DT_MACHINE_START(OMAP4_DT, "Generic OMAP4 (Flattened Device Tree)")
246	.l2c_aux_val	= OMAP_L2C_AUX_CTRL,
247	.l2c_aux_mask	= 0xcf9fffff,
248	.l2c_write_sec	= omap4_l2c310_write_sec,
249	.reserve	= omap_reserve,
250	.smp		= smp_ops(omap4_smp_ops),
251	.map_io		= omap4_map_io,
252	.init_early	= omap4430_init_early,
253	.init_irq	= omap_gic_of_init,
254	.init_machine	= omap_generic_init,
255	.init_late	= omap4430_init_late,
256	.init_time	= omap4_local_timer_init,
257	.dt_compat	= omap4_boards_compat,
258	.restart	= omap44xx_restart,
259MACHINE_END
260#endif
261
262#ifdef CONFIG_SOC_OMAP5
263static const char *const omap5_boards_compat[] __initconst = {
264	"ti,omap5432",
265	"ti,omap5430",
266	"ti,omap5",
267	NULL,
268};
269
270DT_MACHINE_START(OMAP5_DT, "Generic OMAP5 (Flattened Device Tree)")
271#if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE)
272	.dma_zone_size	= SZ_2G,
273#endif
274	.reserve	= omap_reserve,
275	.smp		= smp_ops(omap4_smp_ops),
276	.map_io		= omap5_map_io,
277	.init_early	= omap5_init_early,
278	.init_irq	= omap_gic_of_init,
279	.init_machine	= omap_generic_init,
280	.init_late	= omap5_init_late,
281	.init_time	= omap5_realtime_timer_init,
282	.dt_compat	= omap5_boards_compat,
283	.restart	= omap44xx_restart,
284MACHINE_END
285#endif
286
287#ifdef CONFIG_SOC_AM43XX
288static const char *const am43_boards_compat[] __initconst = {
289	"ti,am4372",
290	"ti,am43",
291	NULL,
292};
293
294DT_MACHINE_START(AM43_DT, "Generic AM43 (Flattened Device Tree)")
295	.l2c_aux_val	= OMAP_L2C_AUX_CTRL,
296	.l2c_aux_mask	= 0xcf9fffff,
297	.l2c_write_sec	= omap4_l2c310_write_sec,
298	.map_io		= am33xx_map_io,
299	.init_early	= am43xx_init_early,
300	.init_late	= am43xx_init_late,
301	.init_irq	= omap_gic_of_init,
302	.init_machine	= omap_generic_init,
303	.init_time	= omap3_gptimer_timer_init,
304	.dt_compat	= am43_boards_compat,
305	.restart	= omap44xx_restart,
306MACHINE_END
307#endif
308
309#ifdef CONFIG_SOC_DRA7XX
310static const char *const dra74x_boards_compat[] __initconst = {
311	"ti,dra762",
312	"ti,am5728",
313	"ti,am5726",
314	"ti,dra742",
315	"ti,dra7",
316	NULL,
317};
318
319DT_MACHINE_START(DRA74X_DT, "Generic DRA74X (Flattened Device Tree)")
320#if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE)
321	.dma_zone_size	= SZ_2G,
322#endif
323	.reserve	= omap_reserve,
324	.smp		= smp_ops(omap4_smp_ops),
325	.map_io		= dra7xx_map_io,
326	.init_early	= dra7xx_init_early,
327	.init_late	= dra7xx_init_late,
328	.init_irq	= omap_gic_of_init,
329	.init_machine	= omap_generic_init,
330	.init_time	= omap5_realtime_timer_init,
331	.dt_compat	= dra74x_boards_compat,
332	.restart	= omap44xx_restart,
333MACHINE_END
334
335static const char *const dra72x_boards_compat[] __initconst = {
336	"ti,am5718",
337	"ti,am5716",
338	"ti,dra722",
339	"ti,dra718",
340	NULL,
341};
342
343DT_MACHINE_START(DRA72X_DT, "Generic DRA72X (Flattened Device Tree)")
344#if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE)
345	.dma_zone_size	= SZ_2G,
346#endif
347	.reserve	= omap_reserve,
348	.map_io		= dra7xx_map_io,
349	.init_early	= dra7xx_init_early,
350	.init_late	= dra7xx_init_late,
351	.init_irq	= omap_gic_of_init,
352	.init_machine	= omap_generic_init,
353	.init_time	= omap5_realtime_timer_init,
354	.dt_compat	= dra72x_boards_compat,
355	.restart	= omap44xx_restart,
356MACHINE_END
357#endif