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 11 #ifndef __PLAT_COMMON_H 12 #include <linux/mv643xx_eth.h> 13 14 struct dsa_platform_data; 15 struct mv_sata_platform_data; 16 17 void __init orion_uart0_init(void __iomem *membase, 18 resource_size_t mapbase, 19 unsigned int irq, 20 struct clk *clk); 21 22 void __init orion_uart1_init(void __iomem *membase, 23 resource_size_t mapbase, 24 unsigned int irq, 25 struct clk *clk); 26 27 void __init orion_uart2_init(void __iomem *membase, 28 resource_size_t mapbase, 29 unsigned int irq, 30 struct clk *clk); 31 32 void __init orion_uart3_init(void __iomem *membase, 33 resource_size_t mapbase, 34 unsigned int irq, 35 struct clk *clk); 36 37 void __init orion_rtc_init(unsigned long mapbase, 38 unsigned long irq); 39 40 void __init orion_ge00_init(struct mv643xx_eth_platform_data *eth_data, 41 unsigned long mapbase, 42 unsigned long irq, 43 unsigned long irq_err, 44 unsigned int tx_csum_limit); 45 46 void __init orion_ge01_init(struct mv643xx_eth_platform_data *eth_data, 47 unsigned long mapbase, 48 unsigned long irq, 49 unsigned long irq_err, 50 unsigned int tx_csum_limit); 51 52 void __init orion_ge10_init(struct mv643xx_eth_platform_data *eth_data, 53 unsigned long mapbase, 54 unsigned long irq, 55 unsigned long irq_err); 56 57 void __init orion_ge11_init(struct mv643xx_eth_platform_data *eth_data, 58 unsigned long mapbase, 59 unsigned long irq, 60 unsigned long irq_err); 61 62 void __init orion_ge00_switch_init(struct dsa_platform_data *d, 63 int irq); 64 65 void __init orion_i2c_init(unsigned long mapbase, 66 unsigned long irq, 67 unsigned long freq_m); 68 69 void __init orion_i2c_1_init(unsigned long mapbase, 70 unsigned long irq, 71 unsigned long freq_m); 72 73 void __init orion_spi_init(unsigned long mapbase); 74 75 void __init orion_spi_1_init(unsigned long mapbase); 76 77 void __init orion_wdt_init(void); 78 79 void __init orion_xor0_init(unsigned long mapbase_low, 80 unsigned long mapbase_high, 81 unsigned long irq_0, 82 unsigned long irq_1); 83 84 void __init orion_xor1_init(unsigned long mapbase_low, 85 unsigned long mapbase_high, 86 unsigned long irq_0, 87 unsigned long irq_1); 88 89 void __init orion_ehci_init(unsigned long mapbase, 90 unsigned long irq, 91 enum orion_ehci_phy_ver phy_version); 92 93 void __init orion_ehci_1_init(unsigned long mapbase, 94 unsigned long irq); 95 96 void __init orion_ehci_2_init(unsigned long mapbase, 97 unsigned long irq); 98 99 void __init orion_sata_init(struct mv_sata_platform_data *sata_data, 100 unsigned long mapbase, 101 unsigned long irq); 102 103 void __init orion_crypto_init(unsigned long mapbase, 104 unsigned long srambase, 105 unsigned long sram_size, 106 unsigned long irq); 107 108 void __init orion_clkdev_add(const char *con_id, const char *dev_id, 109 struct clk *clk); 110 111 void __init orion_clkdev_init(struct clk *tclk); 112 #endif 113