common.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. /*
  2. * Copyright (c) 2012 Samsung Electronics Co., Ltd.
  3. * http://www.samsung.com
  4. *
  5. * Common Header for S3C24XX SoCs
  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. #ifndef __ARCH_ARM_MACH_S3C24XX_COMMON_H
  12. #define __ARCH_ARM_MACH_S3C24XX_COMMON_H __FILE__
  13. #ifdef CONFIG_CPU_S3C2410
  14. extern int s3c2410_init(void);
  15. extern int s3c2410a_init(void);
  16. extern void s3c2410_map_io(void);
  17. extern void s3c2410_init_uarts(struct s3c2410_uartcfg *cfg, int no);
  18. extern void s3c2410_init_clocks(int xtal);
  19. #else
  20. #define s3c2410_init_clocks NULL
  21. #define s3c2410_init_uarts NULL
  22. #define s3c2410_map_io NULL
  23. #define s3c2410_init NULL
  24. #define s3c2410a_init NULL
  25. #endif
  26. #ifdef CONFIG_CPU_S3C2412
  27. extern int s3c2412_init(void);
  28. extern void s3c2412_map_io(void);
  29. extern void s3c2412_init_uarts(struct s3c2410_uartcfg *cfg, int no);
  30. extern void s3c2412_init_clocks(int xtal);
  31. extern int s3c2412_baseclk_add(void);
  32. extern void s3c2412_restart(char mode, const char *cmd);
  33. #else
  34. #define s3c2412_init_clocks NULL
  35. #define s3c2412_init_uarts NULL
  36. #define s3c2412_map_io NULL
  37. #define s3c2412_init NULL
  38. #define s3c2412_restart NULL
  39. #endif
  40. #ifdef CONFIG_CPU_S3C2416
  41. struct s3c2410_uartcfg;
  42. extern int s3c2416_init(void);
  43. extern void s3c2416_map_io(void);
  44. extern void s3c2416_init_uarts(struct s3c2410_uartcfg *cfg, int no);
  45. extern void s3c2416_init_clocks(int xtal);
  46. extern int s3c2416_baseclk_add(void);
  47. extern void s3c2416_restart(char mode, const char *cmd);
  48. extern void s3c2416_init_irq(void);
  49. extern struct syscore_ops s3c2416_irq_syscore_ops;
  50. #else
  51. #define s3c2416_init_clocks NULL
  52. #define s3c2416_init_uarts NULL
  53. #define s3c2416_map_io NULL
  54. #define s3c2416_init NULL
  55. #define s3c2416_restart NULL
  56. #endif
  57. #if defined(CONFIG_CPU_S3C2440) || defined(CONFIG_CPU_S3C2442)
  58. extern void s3c244x_map_io(void);
  59. extern void s3c244x_init_uarts(struct s3c2410_uartcfg *cfg, int no);
  60. extern void s3c244x_init_clocks(int xtal);
  61. #else
  62. #define s3c244x_init_clocks NULL
  63. #define s3c244x_init_uarts NULL
  64. #endif
  65. #ifdef CONFIG_CPU_S3C2440
  66. extern int s3c2440_init(void);
  67. extern void s3c2440_map_io(void);
  68. #else
  69. #define s3c2440_init NULL
  70. #define s3c2440_map_io NULL
  71. #endif
  72. #ifdef CONFIG_CPU_S3C2442
  73. extern int s3c2442_init(void);
  74. extern void s3c2442_map_io(void);
  75. #else
  76. #define s3c2442_init NULL
  77. #define s3c2442_map_io NULL
  78. #endif
  79. #ifdef CONFIG_CPU_S3C2443
  80. struct s3c2410_uartcfg;
  81. extern int s3c2443_init(void);
  82. extern void s3c2443_map_io(void);
  83. extern void s3c2443_init_uarts(struct s3c2410_uartcfg *cfg, int no);
  84. extern void s3c2443_init_clocks(int xtal);
  85. extern int s3c2443_baseclk_add(void);
  86. extern void s3c2443_restart(char mode, const char *cmd);
  87. extern void s3c2443_init_irq(void);
  88. #else
  89. #define s3c2443_init_clocks NULL
  90. #define s3c2443_init_uarts NULL
  91. #define s3c2443_map_io NULL
  92. #define s3c2443_init NULL
  93. #define s3c2443_restart NULL
  94. #endif
  95. void s3c2410_restart(char mode, const char *cmd);
  96. void s3c244x_restart(char mode, const char *cmd);
  97. extern struct syscore_ops s3c24xx_irq_syscore_ops;
  98. #endif /* __ARCH_ARM_MACH_S3C24XX_COMMON_H */