Linux Audio

Check our new training course

Loading...
v6.13.7
 1// SPDX-License-Identifier: GPL-2.0-or-later
 2/*
 3 *  Setup code for AT91SAM9
 4 *
 5 *  Copyright (C) 2011 Atmel,
 6 *                2011 Nicolas Ferre <nicolas.ferre@atmel.com>
 
 
 7 */
 8
 9#include <linux/of.h>
10#include <linux/of_platform.h>
11
12#include <asm/mach/arch.h>
13#include <asm/system_misc.h>
14
15#include "generic.h"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
17static void __init at91sam9_init(void)
18{
19	of_platform_default_populate(NULL, NULL, NULL);
 
 
 
 
 
 
 
 
20
21	at91sam9_pm_init();
 
 
 
22}
23
24static const char *const at91_dt_board_compat[] __initconst = {
25	"atmel,at91sam9",
26	NULL
27};
28
29DT_MACHINE_START(at91sam_dt, "Atmel AT91SAM9")
30	/* Maintainer: Atmel */
31	.init_machine	= at91sam9_init,
32	.dt_compat	= at91_dt_board_compat,
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33MACHINE_END
v4.10.11
 
  1/*
  2 *  Setup code for AT91SAM9
  3 *
  4 *  Copyright (C) 2011 Atmel,
  5 *                2011 Nicolas Ferre <nicolas.ferre@atmel.com>
  6 *
  7 * Licensed under GPLv2 or later.
  8 */
  9
 10#include <linux/of.h>
 11#include <linux/of_platform.h>
 12
 13#include <asm/mach/arch.h>
 14#include <asm/system_misc.h>
 15
 16#include "generic.h"
 17#include "soc.h"
 18
 19static const struct at91_soc at91sam9_socs[] = {
 20	AT91_SOC(AT91SAM9260_CIDR_MATCH, 0, "at91sam9260", NULL),
 21	AT91_SOC(AT91SAM9261_CIDR_MATCH, 0, "at91sam9261", NULL),
 22	AT91_SOC(AT91SAM9263_CIDR_MATCH, 0, "at91sam9263", NULL),
 23	AT91_SOC(AT91SAM9G20_CIDR_MATCH, 0, "at91sam9g20", NULL),
 24	AT91_SOC(AT91SAM9RL64_CIDR_MATCH, 0, "at91sam9rl64", NULL),
 25	AT91_SOC(AT91SAM9G45_CIDR_MATCH, AT91SAM9M11_EXID_MATCH,
 26		 "at91sam9m11", "at91sam9g45"),
 27	AT91_SOC(AT91SAM9G45_CIDR_MATCH, AT91SAM9M10_EXID_MATCH,
 28		 "at91sam9m10", "at91sam9g45"),
 29	AT91_SOC(AT91SAM9G45_CIDR_MATCH, AT91SAM9G46_EXID_MATCH,
 30		 "at91sam9g46", "at91sam9g45"),
 31	AT91_SOC(AT91SAM9G45_CIDR_MATCH, AT91SAM9G45_EXID_MATCH,
 32		 "at91sam9g45", "at91sam9g45"),
 33	AT91_SOC(AT91SAM9X5_CIDR_MATCH, AT91SAM9G15_EXID_MATCH,
 34		 "at91sam9g15", "at91sam9x5"),
 35	AT91_SOC(AT91SAM9X5_CIDR_MATCH, AT91SAM9G35_EXID_MATCH,
 36		 "at91sam9g35", "at91sam9x5"),
 37	AT91_SOC(AT91SAM9X5_CIDR_MATCH, AT91SAM9X35_EXID_MATCH,
 38		 "at91sam9x35", "at91sam9x5"),
 39	AT91_SOC(AT91SAM9X5_CIDR_MATCH, AT91SAM9G25_EXID_MATCH,
 40		 "at91sam9g25", "at91sam9x5"),
 41	AT91_SOC(AT91SAM9X5_CIDR_MATCH, AT91SAM9X25_EXID_MATCH,
 42		 "at91sam9x25", "at91sam9x5"),
 43	AT91_SOC(AT91SAM9N12_CIDR_MATCH, AT91SAM9CN12_EXID_MATCH,
 44		 "at91sam9cn12", "at91sam9n12"),
 45	AT91_SOC(AT91SAM9N12_CIDR_MATCH, AT91SAM9N12_EXID_MATCH,
 46		 "at91sam9n12", "at91sam9n12"),
 47	AT91_SOC(AT91SAM9N12_CIDR_MATCH, AT91SAM9CN11_EXID_MATCH,
 48		 "at91sam9cn11", "at91sam9n12"),
 49	AT91_SOC(AT91SAM9XE128_CIDR_MATCH, 0, "at91sam9xe128", "at91sam9xe128"),
 50	AT91_SOC(AT91SAM9XE256_CIDR_MATCH, 0, "at91sam9xe256", "at91sam9xe256"),
 51	AT91_SOC(AT91SAM9XE512_CIDR_MATCH, 0, "at91sam9xe512", "at91sam9xe512"),
 52	{ /* sentinel */ },
 53};
 54
 55static void __init at91sam9_common_init(void)
 56{
 57	struct soc_device *soc;
 58	struct device *soc_dev = NULL;
 59
 60	soc = at91_soc_init(at91sam9_socs);
 61	if (soc != NULL)
 62		soc_dev = soc_device_to_device(soc);
 63
 64	of_platform_default_populate(NULL, NULL, soc_dev);
 65}
 66
 67static void __init at91sam9_dt_device_init(void)
 68{
 69	at91sam9_common_init();
 70	at91sam9260_pm_init();
 71}
 72
 73static const char *const at91_dt_board_compat[] __initconst = {
 74	"atmel,at91sam9",
 75	NULL
 76};
 77
 78DT_MACHINE_START(at91sam_dt, "Atmel AT91SAM9")
 79	/* Maintainer: Atmel */
 80	.init_machine	= at91sam9_dt_device_init,
 81	.dt_compat	= at91_dt_board_compat,
 82MACHINE_END
 83
 84static void __init at91sam9g45_dt_device_init(void)
 85{
 86	at91sam9_common_init();
 87	at91sam9g45_pm_init();
 88}
 89
 90static const char *const at91sam9g45_board_compat[] __initconst = {
 91	"atmel,at91sam9g45",
 92	NULL
 93};
 94
 95DT_MACHINE_START(at91sam9g45_dt, "Atmel AT91SAM9G45")
 96	/* Maintainer: Atmel */
 97	.init_machine	= at91sam9g45_dt_device_init,
 98	.dt_compat	= at91sam9g45_board_compat,
 99MACHINE_END
100
101static void __init at91sam9x5_dt_device_init(void)
102{
103	at91sam9_common_init();
104	at91sam9x5_pm_init();
105}
106
107static const char *const at91sam9x5_board_compat[] __initconst = {
108	"atmel,at91sam9x5",
109	"atmel,at91sam9n12",
110	NULL
111};
112
113DT_MACHINE_START(at91sam9x5_dt, "Atmel AT91SAM9")
114	/* Maintainer: Atmel */
115	.init_machine	= at91sam9x5_dt_device_init,
116	.dt_compat	= at91sam9x5_board_compat,
117MACHINE_END