common.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Copyright (c) 2011 Samsung Electronics Co., Ltd.
  4. * http://www.samsung.com
  5. *
  6. * Copyright 2008 Openmoko, Inc.
  7. * Copyright 2008 Simtec Electronics
  8. * Ben Dooks <ben@simtec.co.uk>
  9. * http://armlinux.simtec.co.uk/
  10. *
  11. * Common Header for S3C64XX machines
  12. */
  13. #ifndef __ARCH_ARM_MACH_S3C64XX_COMMON_H
  14. #define __ARCH_ARM_MACH_S3C64XX_COMMON_H
  15. #include <linux/reboot.h>
  16. void s3c64xx_init_irq(u32 vic0, u32 vic1);
  17. void s3c64xx_init_io(struct map_desc *mach_desc, int size);
  18. void s3c64xx_restart(enum reboot_mode mode, const char *cmd);
  19. struct device_node;
  20. void s3c64xx_clk_init(struct device_node *np, unsigned long xtal_f,
  21. unsigned long xusbxti_f, bool is_s3c6400, void __iomem *reg_base);
  22. void s3c64xx_set_xtal_freq(unsigned long freq);
  23. void s3c64xx_set_xusbxti_freq(unsigned long freq);
  24. #ifdef CONFIG_CPU_S3C6400
  25. extern int s3c6400_init(void);
  26. extern void s3c6400_init_irq(void);
  27. extern void s3c6400_map_io(void);
  28. #else
  29. #define s3c6400_map_io NULL
  30. #define s3c6400_init NULL
  31. #endif
  32. #ifdef CONFIG_CPU_S3C6410
  33. extern int s3c6410_init(void);
  34. extern void s3c6410_init_irq(void);
  35. extern void s3c6410_map_io(void);
  36. #else
  37. #define s3c6410_map_io NULL
  38. #define s3c6410_init NULL
  39. #endif
  40. #ifdef CONFIG_S3C64XX_PL080
  41. extern struct pl08x_platform_data s3c64xx_dma0_plat_data;
  42. extern struct pl08x_platform_data s3c64xx_dma1_plat_data;
  43. #endif
  44. #endif /* __ARCH_ARM_MACH_S3C64XX_COMMON_H */