2 * arch/arm/plat-orion/include/plat/common.h
4 * Marvell Orion SoC common setup code used by different mach-/common.c
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.
11 #ifndef __PLAT_COMMON_H
12 #include <linux/mv643xx_eth.h>
14 struct dsa_platform_data;
16 void __init orion_uart0_init(unsigned int membase,
17 resource_size_t mapbase,
19 unsigned int uartclk);
21 void __init orion_uart1_init(unsigned int membase,
22 resource_size_t mapbase,
24 unsigned int uartclk);
26 void __init orion_uart2_init(unsigned int membase,
27 resource_size_t mapbase,
29 unsigned int uartclk);
31 void __init orion_uart3_init(unsigned int membase,
32 resource_size_t mapbase,
34 unsigned int uartclk);
36 void __init orion_rtc_init(unsigned long mapbase,
39 void __init orion_ge00_init(struct mv643xx_eth_platform_data *eth_data,
40 struct mbus_dram_target_info *mbus_dram_info,
41 unsigned long mapbase,
43 unsigned long irq_err,
45 unsigned int tx_csum_limit);
47 void __init orion_ge01_init(struct mv643xx_eth_platform_data *eth_data,
48 struct mbus_dram_target_info *mbus_dram_info,
49 unsigned long mapbase,
51 unsigned long irq_err,
53 unsigned int tx_csum_limit);
55 void __init orion_ge10_init(struct mv643xx_eth_platform_data *eth_data,
56 struct mbus_dram_target_info *mbus_dram_info,
57 unsigned long mapbase,
59 unsigned long irq_err,
62 void __init orion_ge11_init(struct mv643xx_eth_platform_data *eth_data,
63 struct mbus_dram_target_info *mbus_dram_info,
64 unsigned long mapbase,
66 unsigned long irq_err,
69 void __init orion_ge00_switch_init(struct dsa_platform_data *d,
71 void __init orion_i2c_init(unsigned long mapbase,
73 unsigned long freq_m);
75 void __init orion_i2c_1_init(unsigned long mapbase,
77 unsigned long freq_m);
79 void __init orion_spi_init(unsigned long mapbase,
82 void __init orion_spi_1_init(unsigned long mapbase,
85 void __init orion_wdt_init(unsigned long tclk);
87 void __init orion_xor0_init(struct mbus_dram_target_info *mbus_dram_info,
88 unsigned long mapbase_low,
89 unsigned long mapbase_high,
93 void __init orion_xor1_init(unsigned long mapbase_low,
94 unsigned long mapbase_high,
98 void __init orion_ehci_init(struct mbus_dram_target_info *mbus_dram_info,
99 unsigned long mapbase,
101 enum orion_ehci_phy_ver phy_version);
103 void __init orion_ehci_1_init(struct mbus_dram_target_info *mbus_dram_info,
104 unsigned long mapbase,
107 void __init orion_ehci_2_init(struct mbus_dram_target_info *mbus_dram_info,
108 unsigned long mapbase,
111 void __init orion_sata_init(struct mv_sata_platform_data *sata_data,
112 struct mbus_dram_target_info *mbus_dram_info,
113 unsigned long mapbase,
116 void __init orion_crypto_init(unsigned long mapbase,
117 unsigned long srambase,
118 unsigned long sram_size,