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 #include <linux/platform_data/usb-ehci-orion.h> 14 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 int tx_csum_limit); 50 51 void __init orion_ge10_init(struct mv643xx_eth_platform_data *eth_data, 52 unsigned long mapbase, 53 unsigned long irq); 54 55 void __init orion_ge11_init(struct mv643xx_eth_platform_data *eth_data, 56 unsigned long mapbase, 57 unsigned long irq); 58 59 void __init orion_i2c_init(unsigned long mapbase, 60 unsigned long irq, 61 unsigned long freq_m); 62 63 void __init orion_i2c_1_init(unsigned long mapbase, 64 unsigned long irq, 65 unsigned long freq_m); 66 67 void __init orion_spi_init(unsigned long mapbase); 68 69 void __init orion_spi_1_init(unsigned long mapbase); 70 71 void __init orion_xor0_init(unsigned long mapbase_low, 72 unsigned long mapbase_high, 73 unsigned long irq_0, 74 unsigned long irq_1); 75 76 void __init orion_xor1_init(unsigned long mapbase_low, 77 unsigned long mapbase_high, 78 unsigned long irq_0, 79 unsigned long irq_1); 80 81 void __init orion_ehci_init(unsigned long mapbase, 82 unsigned long irq, 83 enum orion_ehci_phy_ver phy_version); 84 85 void __init orion_ehci_1_init(unsigned long mapbase, 86 unsigned long irq); 87 88 void __init orion_ehci_2_init(unsigned long mapbase, 89 unsigned long irq); 90 91 void __init orion_sata_init(struct mv_sata_platform_data *sata_data, 92 unsigned long mapbase, 93 unsigned long irq); 94 95 void __init orion_crypto_init(unsigned long mapbase, 96 unsigned long srambase, 97 unsigned long sram_size, 98 unsigned long irq); 99 100 void __init orion_clkdev_add(const char *con_id, const char *dev_id, 101 struct clk *clk); 102 103 void __init orion_clkdev_init(struct clk *tclk); 104 #endif 105