common.h 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. /*
  2. * arch/arm/plat-orion/include/plat/common.h
  3. *
  4. * Marvell Orion SoC common setup code used by different mach-/common.c
  5. *
  6. * This file is licensed under the terms of the GNU General Public
  7. * License version 2. This program is licensed "as is" without any
  8. * warranty of any kind, whether express or implied.
  9. */
  10. #ifndef __PLAT_COMMON_H
  11. #include <linux/mv643xx_eth.h>
  12. #include <linux/platform_data/usb-ehci-orion.h>
  13. struct dsa_platform_data;
  14. struct mv_sata_platform_data;
  15. void __init orion_uart0_init(void __iomem *membase,
  16. resource_size_t mapbase,
  17. unsigned int irq,
  18. struct clk *clk);
  19. void __init orion_uart1_init(void __iomem *membase,
  20. resource_size_t mapbase,
  21. unsigned int irq,
  22. struct clk *clk);
  23. void __init orion_uart2_init(void __iomem *membase,
  24. resource_size_t mapbase,
  25. unsigned int irq,
  26. struct clk *clk);
  27. void __init orion_uart3_init(void __iomem *membase,
  28. resource_size_t mapbase,
  29. unsigned int irq,
  30. struct clk *clk);
  31. void __init orion_rtc_init(unsigned long mapbase,
  32. unsigned long irq);
  33. void __init orion_ge00_init(struct mv643xx_eth_platform_data *eth_data,
  34. unsigned long mapbase,
  35. unsigned long irq,
  36. unsigned long irq_err,
  37. unsigned int tx_csum_limit);
  38. void __init orion_ge01_init(struct mv643xx_eth_platform_data *eth_data,
  39. unsigned long mapbase,
  40. unsigned long irq,
  41. unsigned long irq_err,
  42. unsigned int tx_csum_limit);
  43. void __init orion_ge10_init(struct mv643xx_eth_platform_data *eth_data,
  44. unsigned long mapbase,
  45. unsigned long irq,
  46. unsigned long irq_err);
  47. void __init orion_ge11_init(struct mv643xx_eth_platform_data *eth_data,
  48. unsigned long mapbase,
  49. unsigned long irq,
  50. unsigned long irq_err);
  51. void __init orion_ge00_switch_init(struct dsa_platform_data *d,
  52. int irq);
  53. void __init orion_i2c_init(unsigned long mapbase,
  54. unsigned long irq,
  55. unsigned long freq_m);
  56. void __init orion_i2c_1_init(unsigned long mapbase,
  57. unsigned long irq,
  58. unsigned long freq_m);
  59. void __init orion_spi_init(unsigned long mapbase);
  60. void __init orion_spi_1_init(unsigned long mapbase);
  61. void __init orion_wdt_init(void);
  62. void __init orion_xor0_init(unsigned long mapbase_low,
  63. unsigned long mapbase_high,
  64. unsigned long irq_0,
  65. unsigned long irq_1);
  66. void __init orion_xor1_init(unsigned long mapbase_low,
  67. unsigned long mapbase_high,
  68. unsigned long irq_0,
  69. unsigned long irq_1);
  70. void __init orion_ehci_init(unsigned long mapbase,
  71. unsigned long irq,
  72. enum orion_ehci_phy_ver phy_version);
  73. void __init orion_ehci_1_init(unsigned long mapbase,
  74. unsigned long irq);
  75. void __init orion_ehci_2_init(unsigned long mapbase,
  76. unsigned long irq);
  77. void __init orion_sata_init(struct mv_sata_platform_data *sata_data,
  78. unsigned long mapbase,
  79. unsigned long irq);
  80. void __init orion_crypto_init(unsigned long mapbase,
  81. unsigned long srambase,
  82. unsigned long sram_size,
  83. unsigned long irq);
  84. void __init orion_clkdev_add(const char *con_id, const char *dev_id,
  85. struct clk *clk);
  86. void __init orion_clkdev_init(struct clk *tclk);
  87. #endif