Linux Audio

Check our new training course

Loading...
v6.13.7
 1// SPDX-License-Identifier: GPL-2.0-only
 2/*
 3 * arch/arm/mach-spear13xx/spear1310.c
 4 *
 5 * SPEAr1310 machine source file
 6 *
 7 * Copyright (C) 2012 ST Microelectronics
 8 * Viresh Kumar <vireshk@kernel.org>
 9 */
10
11#define pr_fmt(fmt) "SPEAr1310: " fmt
12
13#include <linux/amba/pl022.h>
14#include <linux/pata_arasan_cf_data.h>
15#include <asm/mach/arch.h>
16#include <asm/mach/map.h>
17#include "generic.h"
18#include "spear.h"
19
20/* Base addresses */
21#define SPEAR1310_RAS_GRP1_BASE			UL(0xD8000000)
22#define VA_SPEAR1310_RAS_GRP1_BASE		UL(0xFA000000)
23
24static void __init spear1310_dt_init(void)
25{
26	platform_device_register_simple("spear-cpufreq", -1, NULL, 0);
27}
28
29static const char * const spear1310_dt_board_compat[] = {
30	"st,spear1310",
31	"st,spear1310-evb",
32	NULL,
33};
34
35/*
36 * Following will create 16MB static virtual/physical mappings
37 * PHYSICAL		VIRTUAL
38 * 0xD8000000		0xFA000000
39 */
40static struct map_desc spear1310_io_desc[] __initdata = {
41	{
42		.virtual	= VA_SPEAR1310_RAS_GRP1_BASE,
43		.pfn		= __phys_to_pfn(SPEAR1310_RAS_GRP1_BASE),
44		.length		= SZ_16M,
45		.type		= MT_DEVICE
46	},
47};
48
49static void __init spear1310_map_io(void)
50{
51	iotable_init(spear1310_io_desc, ARRAY_SIZE(spear1310_io_desc));
52	spear13xx_map_io();
53}
54
55DT_MACHINE_START(SPEAR1310_DT, "ST SPEAr1310 SoC with Flattened Device Tree")
56	.smp		=	smp_ops(spear13xx_smp_ops),
57	.map_io		=	spear1310_map_io,
58	.init_time	=	spear13xx_timer_init,
59	.init_machine	=	spear1310_dt_init,
60	.restart	=	spear_restart,
61	.dt_compat	=	spear1310_dt_board_compat,
62MACHINE_END
v6.8
 1// SPDX-License-Identifier: GPL-2.0-only
 2/*
 3 * arch/arm/mach-spear13xx/spear1310.c
 4 *
 5 * SPEAr1310 machine source file
 6 *
 7 * Copyright (C) 2012 ST Microelectronics
 8 * Viresh Kumar <vireshk@kernel.org>
 9 */
10
11#define pr_fmt(fmt) "SPEAr1310: " fmt
12
13#include <linux/amba/pl022.h>
14#include <linux/pata_arasan_cf_data.h>
15#include <asm/mach/arch.h>
16#include <asm/mach/map.h>
17#include "generic.h"
18#include "spear.h"
19
20/* Base addresses */
21#define SPEAR1310_RAS_GRP1_BASE			UL(0xD8000000)
22#define VA_SPEAR1310_RAS_GRP1_BASE		UL(0xFA000000)
23
24static void __init spear1310_dt_init(void)
25{
26	platform_device_register_simple("spear-cpufreq", -1, NULL, 0);
27}
28
29static const char * const spear1310_dt_board_compat[] = {
30	"st,spear1310",
31	"st,spear1310-evb",
32	NULL,
33};
34
35/*
36 * Following will create 16MB static virtual/physical mappings
37 * PHYSICAL		VIRTUAL
38 * 0xD8000000		0xFA000000
39 */
40static struct map_desc spear1310_io_desc[] __initdata = {
41	{
42		.virtual	= VA_SPEAR1310_RAS_GRP1_BASE,
43		.pfn		= __phys_to_pfn(SPEAR1310_RAS_GRP1_BASE),
44		.length		= SZ_16M,
45		.type		= MT_DEVICE
46	},
47};
48
49static void __init spear1310_map_io(void)
50{
51	iotable_init(spear1310_io_desc, ARRAY_SIZE(spear1310_io_desc));
52	spear13xx_map_io();
53}
54
55DT_MACHINE_START(SPEAR1310_DT, "ST SPEAr1310 SoC with Flattened Device Tree")
56	.smp		=	smp_ops(spear13xx_smp_ops),
57	.map_io		=	spear1310_map_io,
58	.init_time	=	spear13xx_timer_init,
59	.init_machine	=	spear1310_dt_init,
60	.restart	=	spear_restart,
61	.dt_compat	=	spear1310_dt_board_compat,
62MACHINE_END