|
@@ -18,6 +18,9 @@
|
|
#include <linux/timer.h>
|
|
#include <linux/timer.h>
|
|
#include <linux/ata_platform.h>
|
|
#include <linux/ata_platform.h>
|
|
#include <linux/mv643xx_eth.h>
|
|
#include <linux/mv643xx_eth.h>
|
|
|
|
+#include <linux/spi/flash.h>
|
|
|
|
+#include <linux/spi/spi.h>
|
|
|
|
+#include <linux/spi/orion_spi.h>
|
|
#include <asm/mach-types.h>
|
|
#include <asm/mach-types.h>
|
|
#include <asm/mach/arch.h>
|
|
#include <asm/mach/arch.h>
|
|
#include <asm/mach/pci.h>
|
|
#include <asm/mach/pci.h>
|
|
@@ -34,6 +37,21 @@ static struct mv_sata_platform_data rd88f6192_sata_data = {
|
|
.n_ports = 2,
|
|
.n_ports = 2,
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+static const struct flash_platform_data rd88F6192_spi_slave_data = {
|
|
|
|
+ .type = "m25p128",
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static struct spi_board_info __initdata rd88F6192_spi_slave_info[] = {
|
|
|
|
+ {
|
|
|
|
+ .modalias = "m25p80",
|
|
|
|
+ .platform_data = &rd88F6192_spi_slave_data,
|
|
|
|
+ .irq = -1,
|
|
|
|
+ .max_speed_hz = 20000000,
|
|
|
|
+ .bus_num = 0,
|
|
|
|
+ .chip_select = 0,
|
|
|
|
+ },
|
|
|
|
+};
|
|
|
|
+
|
|
static void __init rd88f6192_init(void)
|
|
static void __init rd88f6192_init(void)
|
|
{
|
|
{
|
|
/*
|
|
/*
|
|
@@ -45,6 +63,9 @@ static void __init rd88f6192_init(void)
|
|
kirkwood_ge00_init(&rd88f6192_ge00_data);
|
|
kirkwood_ge00_init(&rd88f6192_ge00_data);
|
|
kirkwood_rtc_init();
|
|
kirkwood_rtc_init();
|
|
kirkwood_sata_init(&rd88f6192_sata_data);
|
|
kirkwood_sata_init(&rd88f6192_sata_data);
|
|
|
|
+ spi_register_board_info(rd88F6192_spi_slave_info,
|
|
|
|
+ ARRAY_SIZE(rd88F6192_spi_slave_info));
|
|
|
|
+ kirkwood_spi_init();
|
|
kirkwood_uart0_init();
|
|
kirkwood_uart0_init();
|
|
kirkwood_xor0_init();
|
|
kirkwood_xor0_init();
|
|
kirkwood_xor1_init();
|
|
kirkwood_xor1_init();
|