Andrew Lunn | 28a2b45 | 2011-05-15 13:32:41 +0200 | [diff] [blame] | 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 |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 12 | #include <linux/mv643xx_eth.h> |
Andrew Lunn | 28a2b45 | 2011-05-15 13:32:41 +0200 | [diff] [blame] | 13 | |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 14 | struct dsa_platform_data; |
Andrew Lunn | 28a2b45 | 2011-05-15 13:32:41 +0200 | [diff] [blame] | 15 | |
| 16 | void __init orion_uart0_init(unsigned int membase, |
| 17 | resource_size_t mapbase, |
| 18 | unsigned int irq, |
Andrew Lunn | 74c3357 | 2011-12-24 03:06:34 +0100 | [diff] [blame] | 19 | struct clk *clk); |
Andrew Lunn | 28a2b45 | 2011-05-15 13:32:41 +0200 | [diff] [blame] | 20 | |
| 21 | void __init orion_uart1_init(unsigned int membase, |
| 22 | resource_size_t mapbase, |
| 23 | unsigned int irq, |
Andrew Lunn | 74c3357 | 2011-12-24 03:06:34 +0100 | [diff] [blame] | 24 | struct clk *clk); |
Andrew Lunn | 28a2b45 | 2011-05-15 13:32:41 +0200 | [diff] [blame] | 25 | |
| 26 | void __init orion_uart2_init(unsigned int membase, |
| 27 | resource_size_t mapbase, |
| 28 | unsigned int irq, |
Andrew Lunn | 74c3357 | 2011-12-24 03:06:34 +0100 | [diff] [blame] | 29 | struct clk *clk); |
Andrew Lunn | 28a2b45 | 2011-05-15 13:32:41 +0200 | [diff] [blame] | 30 | |
| 31 | void __init orion_uart3_init(unsigned int membase, |
| 32 | resource_size_t mapbase, |
| 33 | unsigned int irq, |
Andrew Lunn | 74c3357 | 2011-12-24 03:06:34 +0100 | [diff] [blame] | 34 | struct clk *clk); |
Andrew Lunn | f6eaccb | 2011-05-15 13:32:42 +0200 | [diff] [blame] | 35 | |
| 36 | void __init orion_rtc_init(unsigned long mapbase, |
| 37 | unsigned long irq); |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 38 | |
| 39 | void __init orion_ge00_init(struct mv643xx_eth_platform_data *eth_data, |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 40 | unsigned long mapbase, |
| 41 | unsigned long irq, |
Andrew Lunn | 452503e | 2011-12-24 01:24:24 +0100 | [diff] [blame] | 42 | unsigned long irq_err); |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 43 | |
| 44 | void __init orion_ge01_init(struct mv643xx_eth_platform_data *eth_data, |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 45 | unsigned long mapbase, |
| 46 | unsigned long irq, |
Andrew Lunn | 452503e | 2011-12-24 01:24:24 +0100 | [diff] [blame] | 47 | unsigned long irq_err); |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 48 | |
| 49 | void __init orion_ge10_init(struct mv643xx_eth_platform_data *eth_data, |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 50 | unsigned long mapbase, |
| 51 | unsigned long irq, |
Andrew Lunn | 452503e | 2011-12-24 01:24:24 +0100 | [diff] [blame] | 52 | unsigned long irq_err); |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 53 | |
| 54 | void __init orion_ge11_init(struct mv643xx_eth_platform_data *eth_data, |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 55 | unsigned long mapbase, |
| 56 | unsigned long irq, |
Andrew Lunn | 452503e | 2011-12-24 01:24:24 +0100 | [diff] [blame] | 57 | unsigned long irq_err); |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 58 | |
| 59 | void __init orion_ge00_switch_init(struct dsa_platform_data *d, |
| 60 | int irq); |
Andrew Lunn | 452503e | 2011-12-24 01:24:24 +0100 | [diff] [blame] | 61 | |
Andrew Lunn | aac7ffa | 2011-05-15 13:32:45 +0200 | [diff] [blame] | 62 | void __init orion_i2c_init(unsigned long mapbase, |
| 63 | unsigned long irq, |
| 64 | unsigned long freq_m); |
Andrew Lunn | 7e3819d | 2011-05-15 13:32:44 +0200 | [diff] [blame] | 65 | |
Andrew Lunn | aac7ffa | 2011-05-15 13:32:45 +0200 | [diff] [blame] | 66 | void __init orion_i2c_1_init(unsigned long mapbase, |
| 67 | unsigned long irq, |
| 68 | unsigned long freq_m); |
Andrew Lunn | 980f9f6 | 2011-05-15 13:32:46 +0200 | [diff] [blame] | 69 | |
Andrew Lunn | 4574b88 | 2012-04-06 17:17:26 +0200 | [diff] [blame] | 70 | void __init orion_spi_init(unsigned long mapbase); |
Andrew Lunn | 980f9f6 | 2011-05-15 13:32:46 +0200 | [diff] [blame] | 71 | |
Andrew Lunn | 4574b88 | 2012-04-06 17:17:26 +0200 | [diff] [blame] | 72 | void __init orion_spi_1_init(unsigned long mapbase); |
Andrew Lunn | 5e00d37 | 2011-05-15 13:32:47 +0200 | [diff] [blame] | 73 | |
Andrew Lunn | 4f04be6 | 2012-03-04 16:57:31 +0100 | [diff] [blame] | 74 | void __init orion_wdt_init(void); |
Andrew Lunn | ee96272 | 2011-05-15 13:32:48 +0200 | [diff] [blame] | 75 | |
Andrew Lunn | db33f4d | 2011-12-07 21:48:08 +0100 | [diff] [blame] | 76 | void __init orion_xor0_init(unsigned long mapbase_low, |
Andrew Lunn | ee96272 | 2011-05-15 13:32:48 +0200 | [diff] [blame] | 77 | unsigned long mapbase_high, |
| 78 | unsigned long irq_0, |
| 79 | unsigned long irq_1); |
| 80 | |
| 81 | void __init orion_xor1_init(unsigned long mapbase_low, |
| 82 | unsigned long mapbase_high, |
| 83 | unsigned long irq_0, |
| 84 | unsigned long irq_1); |
Andrew Lunn | 4fcd3f3 | 2011-05-15 13:32:49 +0200 | [diff] [blame] | 85 | |
Andrew Lunn | db33f4d | 2011-12-07 21:48:08 +0100 | [diff] [blame] | 86 | void __init orion_ehci_init(unsigned long mapbase, |
Andrew Lunn | 7205335 | 2012-02-08 15:52:47 +0100 | [diff] [blame] | 87 | unsigned long irq, |
| 88 | enum orion_ehci_phy_ver phy_version); |
Andrew Lunn | 4fcd3f3 | 2011-05-15 13:32:49 +0200 | [diff] [blame] | 89 | |
Andrew Lunn | db33f4d | 2011-12-07 21:48:08 +0100 | [diff] [blame] | 90 | void __init orion_ehci_1_init(unsigned long mapbase, |
Andrew Lunn | 4fcd3f3 | 2011-05-15 13:32:49 +0200 | [diff] [blame] | 91 | unsigned long irq); |
| 92 | |
Andrew Lunn | db33f4d | 2011-12-07 21:48:08 +0100 | [diff] [blame] | 93 | void __init orion_ehci_2_init(unsigned long mapbase, |
Andrew Lunn | 4fcd3f3 | 2011-05-15 13:32:49 +0200 | [diff] [blame] | 94 | unsigned long irq); |
Andrew Lunn | 9e613f8 | 2011-05-15 13:32:50 +0200 | [diff] [blame] | 95 | |
| 96 | void __init orion_sata_init(struct mv_sata_platform_data *sata_data, |
Andrew Lunn | 9e613f8 | 2011-05-15 13:32:50 +0200 | [diff] [blame] | 97 | unsigned long mapbase, |
| 98 | unsigned long irq); |
Andrew Lunn | 4435006 | 2011-05-15 13:32:51 +0200 | [diff] [blame] | 99 | |
| 100 | void __init orion_crypto_init(unsigned long mapbase, |
| 101 | unsigned long srambase, |
| 102 | unsigned long sram_size, |
| 103 | unsigned long irq); |
Andrew Lunn | 4574b88 | 2012-04-06 17:17:26 +0200 | [diff] [blame] | 104 | |
| 105 | void __init orion_clkdev_add(const char *con_id, const char *dev_id, |
| 106 | struct clk *clk); |
| 107 | |
| 108 | void __init orion_clkdev_init(struct clk *tclk); |
Andrew Lunn | 28a2b45 | 2011-05-15 13:32:41 +0200 | [diff] [blame] | 109 | #endif |