1 /* 2 * linux/arch/arm/mach-versatile/core.h 3 * 4 * Copyright (C) 2004 ARM Limited 5 * Copyright (C) 2000 Deep Blue Solutions Ltd 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation; either version 2 of the License, or 10 * (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program; if not, write to the Free Software 19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 20 */ 21 22 #ifndef __ASM_ARCH_VERSATILE_H 23 #define __ASM_ARCH_VERSATILE_H 24 25 #include <linux/amba/bus.h> 26 #include <linux/of_platform.h> 27 #include <linux/reboot.h> 28 29 extern void __init versatile_init(void); 30 extern void __init versatile_init_early(void); 31 extern void __init versatile_init_irq(void); 32 extern void __init versatile_map_io(void); 33 extern void versatile_timer_init(void); 34 extern void versatile_restart(enum reboot_mode, const char *); 35 extern unsigned int mmc_status(struct device *dev); 36 #ifdef CONFIG_OF 37 extern struct of_dev_auxdata versatile_auxdata_lookup[]; 38 #endif 39 40 #define APB_DEVICE(name, busid, base, plat) \ 41 static AMBA_APB_DEVICE(name, busid, 0, VERSATILE_##base##_BASE, base##_IRQ, plat) 42 43 #define AHB_DEVICE(name, busid, base, plat) \ 44 static AMBA_AHB_DEVICE(name, busid, 0, VERSATILE_##base##_BASE, base##_IRQ, plat) 45 46 #endif 47