1 /* 2 * Copyright (c) 2011 Samsung Electronics Co., Ltd. 3 * http://www.samsung.com 4 * 5 * Copyright 2008 Openmoko, Inc. 6 * Copyright 2008 Simtec Electronics 7 * Ben Dooks <ben@simtec.co.uk> 8 * http://armlinux.simtec.co.uk/ 9 * 10 * Common Header for S3C64XX machines 11 * 12 * This program is free software; you can redistribute it and/or modify 13 * it under the terms of the GNU General Public License version 2 as 14 * published by the Free Software Foundation. 15 */ 16 17 #ifndef __ARCH_ARM_MACH_S3C64XX_COMMON_H 18 #define __ARCH_ARM_MACH_S3C64XX_COMMON_H 19 20 void s3c64xx_init_irq(u32 vic0, u32 vic1); 21 void s3c64xx_init_io(struct map_desc *mach_desc, int size); 22 23 void s3c64xx_register_clocks(unsigned long xtal, unsigned armclk_limit); 24 void s3c64xx_setup_clocks(void); 25 26 void s3c64xx_restart(char mode, const char *cmd); 27 void s3c64xx_init_late(void); 28 29 #ifdef CONFIG_CPU_S3C6400 30 31 extern int s3c6400_init(void); 32 extern void s3c6400_init_irq(void); 33 extern void s3c6400_map_io(void); 34 extern void s3c6400_init_clocks(int xtal); 35 36 #else 37 #define s3c6400_init_clocks NULL 38 #define s3c6400_map_io NULL 39 #define s3c6400_init NULL 40 #endif 41 42 #ifdef CONFIG_CPU_S3C6410 43 44 extern int s3c6410_init(void); 45 extern void s3c6410_init_irq(void); 46 extern void s3c6410_map_io(void); 47 extern void s3c6410_init_clocks(int xtal); 48 49 #else 50 #define s3c6410_init_clocks NULL 51 #define s3c6410_map_io NULL 52 #define s3c6410_init NULL 53 #endif 54 55 #ifdef CONFIG_PM 56 int __init s3c64xx_pm_late_initcall(void); 57 #else s3c64xx_pm_late_initcall(void)58static inline int s3c64xx_pm_late_initcall(void) { return 0; } 59 #endif 60 61 #endif /* __ARCH_ARM_MACH_S3C64XX_COMMON_H */ 62