WIP FPC-III support
[linux/fpc-iii.git] / arch / arm / plat-orion / include / plat / common.h
blob3647d3b33c2061e6d1eacef1bc961e3582ad128e
1 /*
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.
9 */
11 #ifndef __PLAT_COMMON_H
12 #include <linux/mv643xx_eth.h>
13 #include <linux/platform_data/usb-ehci-orion.h>
15 struct dsa_chip_data;
16 struct mv_sata_platform_data;
18 void __init orion_uart0_init(void __iomem *membase,
19 resource_size_t mapbase,
20 unsigned int irq,
21 struct clk *clk);
23 void __init orion_uart1_init(void __iomem *membase,
24 resource_size_t mapbase,
25 unsigned int irq,
26 struct clk *clk);
28 void __init orion_uart2_init(void __iomem *membase,
29 resource_size_t mapbase,
30 unsigned int irq,
31 struct clk *clk);
33 void __init orion_uart3_init(void __iomem *membase,
34 resource_size_t mapbase,
35 unsigned int irq,
36 struct clk *clk);
38 void __init orion_rtc_init(unsigned long mapbase,
39 unsigned long irq);
41 void __init orion_ge00_init(struct mv643xx_eth_platform_data *eth_data,
42 unsigned long mapbase,
43 unsigned long irq,
44 unsigned long irq_err,
45 unsigned int tx_csum_limit);
47 void __init orion_ge01_init(struct mv643xx_eth_platform_data *eth_data,
48 unsigned long mapbase,
49 unsigned long irq,
50 unsigned int tx_csum_limit);
52 void __init orion_ge10_init(struct mv643xx_eth_platform_data *eth_data,
53 unsigned long mapbase,
54 unsigned long irq);
56 void __init orion_ge11_init(struct mv643xx_eth_platform_data *eth_data,
57 unsigned long mapbase,
58 unsigned long irq);
60 void __init orion_ge00_switch_init(struct dsa_chip_data *d);
62 void __init orion_i2c_init(unsigned long mapbase,
63 unsigned long irq,
64 unsigned long freq_m);
66 void __init orion_i2c_1_init(unsigned long mapbase,
67 unsigned long irq,
68 unsigned long freq_m);
70 void __init orion_spi_init(unsigned long mapbase);
72 void __init orion_spi_1_init(unsigned long mapbase);
74 void __init orion_xor0_init(unsigned long mapbase_low,
75 unsigned long mapbase_high,
76 unsigned long irq_0,
77 unsigned long irq_1);
79 void __init orion_xor1_init(unsigned long mapbase_low,
80 unsigned long mapbase_high,
81 unsigned long irq_0,
82 unsigned long irq_1);
84 void __init orion_ehci_init(unsigned long mapbase,
85 unsigned long irq,
86 enum orion_ehci_phy_ver phy_version);
88 void __init orion_ehci_1_init(unsigned long mapbase,
89 unsigned long irq);
91 void __init orion_ehci_2_init(unsigned long mapbase,
92 unsigned long irq);
94 void __init orion_sata_init(struct mv_sata_platform_data *sata_data,
95 unsigned long mapbase,
96 unsigned long irq);
98 void __init orion_crypto_init(unsigned long mapbase,
99 unsigned long srambase,
100 unsigned long sram_size,
101 unsigned long irq);
103 void __init orion_clkdev_add(const char *con_id, const char *dev_id,
104 struct clk *clk);
106 void __init orion_clkdev_init(struct clk *tclk);
107 #endif