1 /* 2 * linux/arch/arm/mach-pxa/generic.h 3 * 4 * Author: Nicolas Pitre 5 * Copyright: MontaVista Software Inc. 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 version 2 as 9 * published by the Free Software Foundation. 10 */ 11 12 #include <linux/reboot.h> 13 14 struct irq_data; 15 16 extern void pxa_timer_init(void); 17 18 extern void __init pxa_map_io(void); 19 20 extern unsigned int get_clk_frequency_khz(int info); 21 22 #define SET_BANK(__nr,__start,__size) \ 23 mi->bank[__nr].start = (__start), \ 24 mi->bank[__nr].size = (__size) 25 26 #define ARRAY_AND_SIZE(x) (x), ARRAY_SIZE(x) 27 28 #ifdef CONFIG_PXA25x 29 extern unsigned pxa25x_get_clk_frequency_khz(int); 30 #else 31 #define pxa25x_get_clk_frequency_khz(x) (0) 32 #endif 33 34 #ifdef CONFIG_PXA27x 35 extern unsigned pxa27x_get_clk_frequency_khz(int); 36 #else 37 #define pxa27x_get_clk_frequency_khz(x) (0) 38 #endif 39 40 #if defined(CONFIG_PXA25x) || defined(CONFIG_PXA27x) 41 extern void pxa2xx_clear_reset_status(unsigned int); 42 #else 43 static inline void pxa2xx_clear_reset_status(unsigned int mask) {} 44 #endif 45 46 #ifdef CONFIG_PXA3xx 47 extern unsigned pxa3xx_get_clk_frequency_khz(int); 48 #else 49 #define pxa3xx_get_clk_frequency_khz(x) (0) 50 #endif 51 52 extern struct syscore_ops pxa_irq_syscore_ops; 53 extern struct syscore_ops pxa2xx_mfp_syscore_ops; 54 extern struct syscore_ops pxa3xx_mfp_syscore_ops; 55 56 void __init pxa_set_ffuart_info(void *info); 57 void __init pxa_set_btuart_info(void *info); 58 void __init pxa_set_stuart_info(void *info); 59 void __init pxa_set_hwuart_info(void *info); 60 61 void pxa_restart(enum reboot_mode, const char *); 62