setup.h 1.3 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
/*
 * Copyright (C) 2009 ST-Ericsson.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 * These symbols are needed for board-specific files to call their
 * own cpu-specific files
 */
#ifndef __ASM_ARCH_SETUP_H
#define __ASM_ARCH_SETUP_H

#include <asm/mach/time.h>
#include <linux/init.h>
16
#include <linux/mfd/abx500/ab8500.h>
17

R
Rabin Vincent 已提交
18
void __init ux500_map_io(void);
19 20
extern void __init u8500_map_io(void);

21
extern struct device * __init u8500_init_devices(struct ab8500_platform_data *ab8500);
22

23
extern void __init ux500_init_irq(void);
24
extern void __init ux500_init_late(void);
P
Per Forlin 已提交
25

26
extern struct device *ux500_soc_device_init(const char *soc_id);
P
Per Forlin 已提交
27

R
Rabin Vincent 已提交
28
struct amba_device;
29 30
extern void __init amba_add_devices(struct amba_device *devs[], int num);

S
Stephen Warren 已提交
31
extern void ux500_timer_init(void);
32

33 34 35 36 37 38 39
#define __IO_DEV_DESC(x, sz)	{		\
	.virtual	= IO_ADDRESS(x),	\
	.pfn		= __phys_to_pfn(x),	\
	.length		= sz,			\
	.type		= MT_DEVICE,		\
}

40 41 42 43 44 45 46
#define __MEM_DEV_DESC(x, sz)	{		\
	.virtual	= IO_ADDRESS(x),	\
	.pfn		= __phys_to_pfn(x),	\
	.length		= sz,			\
	.type		= MT_MEMORY,		\
}

47 48 49
extern struct smp_operations ux500_smp_ops;
extern void ux500_cpu_die(unsigned int cpu);

50
#endif /*  __ASM_ARCH_SETUP_H */