aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-kirkwood/rd88f6281-setup.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-kirkwood/rd88f6281-setup.c')
-rw-r--r--arch/arm/mach-kirkwood/rd88f6281-setup.c19
1 files changed, 14 insertions, 5 deletions
diff --git a/arch/arm/mach-kirkwood/rd88f6281-setup.c b/arch/arm/mach-kirkwood/rd88f6281-setup.c
index e1c0516c4df3..31e996d65fc4 100644
--- a/arch/arm/mach-kirkwood/rd88f6281-setup.c
+++ b/arch/arm/mach-kirkwood/rd88f6281-setup.c
@@ -11,21 +11,20 @@
11#include <linux/kernel.h> 11#include <linux/kernel.h>
12#include <linux/init.h> 12#include <linux/init.h>
13#include <linux/platform_device.h> 13#include <linux/platform_device.h>
14#include <linux/pci.h>
15#include <linux/irq.h> 14#include <linux/irq.h>
16#include <linux/mtd/physmap.h>
17#include <linux/mtd/nand.h> 15#include <linux/mtd/nand.h>
18#include <linux/timer.h> 16#include <linux/mtd/partitions.h>
19#include <linux/ata_platform.h> 17#include <linux/ata_platform.h>
20#include <linux/mv643xx_eth.h> 18#include <linux/mv643xx_eth.h>
21#include <linux/ethtool.h> 19#include <linux/ethtool.h>
22#include <net/dsa.h> 20#include <net/dsa.h>
23#include <asm/mach-types.h> 21#include <asm/mach-types.h>
24#include <asm/mach/arch.h> 22#include <asm/mach/arch.h>
25#include <asm/mach/pci.h>
26#include <mach/kirkwood.h> 23#include <mach/kirkwood.h>
24#include <plat/mvsdio.h>
27#include <plat/orion_nand.h> 25#include <plat/orion_nand.h>
28#include "common.h" 26#include "common.h"
27#include "mpp.h"
29 28
30static struct mtd_partition rd88f6281_nand_parts[] = { 29static struct mtd_partition rd88f6281_nand_parts[] = {
31 { 30 {
@@ -96,6 +95,15 @@ static struct mv_sata_platform_data rd88f6281_sata_data = {
96 .n_ports = 2, 95 .n_ports = 2,
97}; 96};
98 97
98static struct mvsdio_platform_data rd88f6281_mvsdio_data = {
99 .gpio_card_detect = 28,
100};
101
102static unsigned int rd88f6281_mpp_config[] __initdata = {
103 MPP28_GPIO,
104 0
105};
106
99static void __init rd88f6281_init(void) 107static void __init rd88f6281_init(void)
100{ 108{
101 u32 dev, rev; 109 u32 dev, rev;
@@ -104,6 +112,7 @@ static void __init rd88f6281_init(void)
104 * Basic setup. Needs to be called early. 112 * Basic setup. Needs to be called early.
105 */ 113 */
106 kirkwood_init(); 114 kirkwood_init();
115 kirkwood_mpp_conf(rd88f6281_mpp_config);
107 116
108 kirkwood_ehci_init(); 117 kirkwood_ehci_init();
109 118
@@ -117,8 +126,8 @@ static void __init rd88f6281_init(void)
117 } 126 }
118 kirkwood_ge00_switch_init(&rd88f6281_switch_plat_data, NO_IRQ); 127 kirkwood_ge00_switch_init(&rd88f6281_switch_plat_data, NO_IRQ);
119 128
120 kirkwood_rtc_init();
121 kirkwood_sata_init(&rd88f6281_sata_data); 129 kirkwood_sata_init(&rd88f6281_sata_data);
130 kirkwood_sdio_init(&rd88f6281_mvsdio_data);
122 kirkwood_uart0_init(); 131 kirkwood_uart0_init();
123 132
124 platform_device_register(&rd88f6281_nand_flash); 133 platform_device_register(&rd88f6281_nand_flash);