Commit 65319628 authored by Graf Yang's avatar Graf Yang Committed by Bryan Wu

Blackfin arch: add platform device bfin_mii-bus and KSZ8893M switch driver...

Blackfin arch: add platform device bfin_mii-bus and KSZ8893M switch driver platform resources to board files
Signed-off-by: default avatarGraf Yang <graf.yang@analog.com>
Signed-off-by: default avatarBryan Wu <cooloney@kernel.org>
parent 583947c6
...@@ -46,6 +46,7 @@ ...@@ -46,6 +46,7 @@
#include <asm/dpmc.h> #include <asm/dpmc.h>
#include <asm/bfin_sdh.h> #include <asm/bfin_sdh.h>
#include <linux/spi/ad7877.h> #include <linux/spi/ad7877.h>
#include <net/dsa.h>
/* /*
* Name the Board for the /proc/cpuinfo * Name the Board for the /proc/cpuinfo
...@@ -104,8 +105,31 @@ static struct platform_device rtc_device = { ...@@ -104,8 +105,31 @@ static struct platform_device rtc_device = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
static struct platform_device bfin_mii_bus = {
.name = "bfin_mii_bus",
};
static struct platform_device bfin_mac_device = { static struct platform_device bfin_mac_device = {
.name = "bfin_mac", .name = "bfin_mac",
.dev.platform_data = &bfin_mii_bus,
};
#endif
#if defined(CONFIG_NET_DSA_KSZ8893M) || defined(CONFIG_NET_DSA_KSZ8893M_MODULE)
static struct dsa_platform_data ksz8893m_switch_data = {
.mii_bus = &bfin_mii_bus.dev,
.netdev = &bfin_mac_device.dev,
.port_names[0] = NULL,
.port_names[1] = "eth%d",
.port_names[2] = "eth%d",
.port_names[3] = "cpu",
};
static struct platform_device ksz8893m_switch_device = {
.name = "dsa",
.id = 0,
.num_resources = 0,
.dev.platform_data = &ksz8893m_switch_data,
}; };
#endif #endif
...@@ -147,6 +171,15 @@ static struct bfin5xx_spi_chip spi_adc_chip_info = { ...@@ -147,6 +171,15 @@ static struct bfin5xx_spi_chip spi_adc_chip_info = {
}; };
#endif #endif
#if defined(CONFIG_NET_DSA_KSZ8893M) \
|| defined(CONFIG_NET_DSA_KSZ8893M_MODULE)
/* SPI SWITCH CHIP */
static struct bfin5xx_spi_chip spi_switch_info = {
.enable_dma = 0,
.bits_per_word = 8,
};
#endif
#if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE)
static struct bfin5xx_spi_chip spi_mmc_chip_info = { static struct bfin5xx_spi_chip spi_mmc_chip_info = {
.enable_dma = 1, .enable_dma = 1,
...@@ -226,6 +259,19 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { ...@@ -226,6 +259,19 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = {
}, },
#endif #endif
#if defined(CONFIG_NET_DSA_KSZ8893M) \
|| defined(CONFIG_NET_DSA_KSZ8893M_MODULE)
{
.modalias = "ksz8893m",
.max_speed_hz = 5000000,
.bus_num = 0,
.chip_select = 1,
.platform_data = NULL,
.controller_data = &spi_switch_info,
.mode = SPI_MODE_3,
},
#endif
#if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE)
{ {
.modalias = "spi_mmc_dummy", .modalias = "spi_mmc_dummy",
...@@ -582,9 +628,14 @@ static struct platform_device *stamp_devices[] __initdata = { ...@@ -582,9 +628,14 @@ static struct platform_device *stamp_devices[] __initdata = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
&bfin_mii_bus,
&bfin_mac_device, &bfin_mac_device,
#endif #endif
#if defined(CONFIG_NET_DSA_KSZ8893M) || defined(CONFIG_NET_DSA_KSZ8893M_MODULE)
&ksz8893m_switch_device,
#endif
#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) #if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
&bfin_spi0_device, &bfin_spi0_device,
&bfin_spi1_device, &bfin_spi1_device,
......
...@@ -403,8 +403,13 @@ static struct platform_device isp1362_hcd_device = { ...@@ -403,8 +403,13 @@ static struct platform_device isp1362_hcd_device = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
static struct platform_device bfin_mii_bus = {
.name = "bfin_mii_bus",
};
static struct platform_device bfin_mac_device = { static struct platform_device bfin_mac_device = {
.name = "bfin_mac", .name = "bfin_mac",
.dev.platform_data = &bfin_mii_bus,
}; };
#endif #endif
...@@ -918,6 +923,7 @@ static struct platform_device *stamp_devices[] __initdata = { ...@@ -918,6 +923,7 @@ static struct platform_device *stamp_devices[] __initdata = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
&bfin_mii_bus,
&bfin_mac_device, &bfin_mac_device,
#endif #endif
......
...@@ -208,8 +208,13 @@ static struct platform_device rtc_device = { ...@@ -208,8 +208,13 @@ static struct platform_device rtc_device = {
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
static struct platform_device bfin_mii_bus = {
.name = "bfin_mii_bus",
};
static struct platform_device bfin_mac_device = { static struct platform_device bfin_mac_device = {
.name = "bfin_mac", .name = "bfin_mac",
.dev.platform_data = &bfin_mii_bus,
}; };
#endif #endif
...@@ -718,6 +723,7 @@ static struct platform_device *stamp_devices[] __initdata = { ...@@ -718,6 +723,7 @@ static struct platform_device *stamp_devices[] __initdata = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
&bfin_mii_bus,
&bfin_mac_device, &bfin_mac_device,
#endif #endif
......
...@@ -425,8 +425,13 @@ static struct platform_device isp1362_hcd_device = { ...@@ -425,8 +425,13 @@ static struct platform_device isp1362_hcd_device = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
static struct platform_device bfin_mii_bus = {
.name = "bfin_mii_bus",
};
static struct platform_device bfin_mac_device = { static struct platform_device bfin_mac_device = {
.name = "bfin_mac", .name = "bfin_mac",
.dev.platform_data = &bfin_mii_bus,
}; };
#endif #endif
...@@ -986,6 +991,7 @@ static struct platform_device *stamp_devices[] __initdata = { ...@@ -986,6 +991,7 @@ static struct platform_device *stamp_devices[] __initdata = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
&bfin_mii_bus,
&bfin_mac_device, &bfin_mac_device,
#endif #endif
......
...@@ -479,8 +479,13 @@ static struct platform_device bfin_sport1_uart_device = { ...@@ -479,8 +479,13 @@ static struct platform_device bfin_sport1_uart_device = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
static struct platform_device bfin_mii_bus = {
.name = "bfin_mii_bus",
};
static struct platform_device bfin_mac_device = { static struct platform_device bfin_mac_device = {
.name = "bfin_mac", .name = "bfin_mac",
.dev.platform_data = &bfin_mii_bus,
}; };
#endif #endif
...@@ -591,6 +596,7 @@ static struct platform_device *cm_bf537_devices[] __initdata = { ...@@ -591,6 +596,7 @@ static struct platform_device *cm_bf537_devices[] __initdata = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
&bfin_mii_bus,
&bfin_mac_device, &bfin_mac_device,
#endif #endif
......
...@@ -262,8 +262,13 @@ static struct platform_device isp1362_hcd_device = { ...@@ -262,8 +262,13 @@ static struct platform_device isp1362_hcd_device = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
static struct platform_device bfin_mii_bus = {
.name = "bfin_mii_bus",
};
static struct platform_device bfin_mac_device = { static struct platform_device bfin_mac_device = {
.name = "bfin_mac", .name = "bfin_mac",
.dev.platform_data = &bfin_mii_bus,
}; };
#endif #endif
...@@ -662,6 +667,7 @@ static struct platform_device *stamp_devices[] __initdata = { ...@@ -662,6 +667,7 @@ static struct platform_device *stamp_devices[] __initdata = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
&bfin_mii_bus,
&bfin_mac_device, &bfin_mac_device,
#endif #endif
......
...@@ -61,8 +61,13 @@ static struct platform_device rtc_device = { ...@@ -61,8 +61,13 @@ static struct platform_device rtc_device = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
static struct platform_device bfin_mii_bus = {
.name = "bfin_mii_bus",
};
static struct platform_device bfin_mac_device = { static struct platform_device bfin_mac_device = {
.name = "bfin_mac", .name = "bfin_mac",
.dev.platform_data = &bfin_mii_bus,
}; };
#endif #endif
...@@ -324,6 +329,7 @@ static struct platform_device *minotaur_devices[] __initdata = { ...@@ -324,6 +329,7 @@ static struct platform_device *minotaur_devices[] __initdata = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
&bfin_mii_bus,
&bfin_mac_device, &bfin_mac_device,
#endif #endif
......
...@@ -198,8 +198,13 @@ static struct platform_device isp1362_hcd_device = { ...@@ -198,8 +198,13 @@ static struct platform_device isp1362_hcd_device = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
static struct platform_device bfin_mii_bus = {
.name = "bfin_mii_bus",
};
static struct platform_device bfin_mac_device = { static struct platform_device bfin_mac_device = {
.name = "bfin_mac", .name = "bfin_mac",
.dev.platform_data = &bfin_mii_bus,
}; };
#endif #endif
...@@ -529,6 +534,7 @@ static struct platform_device *stamp_devices[] __initdata = { ...@@ -529,6 +534,7 @@ static struct platform_device *stamp_devices[] __initdata = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
&bfin_mii_bus,
&bfin_mac_device, &bfin_mac_device,
#endif #endif
......
...@@ -321,8 +321,13 @@ static struct platform_device isp1362_hcd_device = { ...@@ -321,8 +321,13 @@ static struct platform_device isp1362_hcd_device = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
static struct platform_device bfin_mii_bus = {
.name = "bfin_mii_bus",
};
static struct platform_device bfin_mac_device = { static struct platform_device bfin_mac_device = {
.name = "bfin_mac", .name = "bfin_mac",
.dev.platform_data = &bfin_mii_bus,
}; };
#endif #endif
...@@ -1215,6 +1220,7 @@ static struct platform_device *stamp_devices[] __initdata = { ...@@ -1215,6 +1220,7 @@ static struct platform_device *stamp_devices[] __initdata = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
&bfin_mii_bus,
&bfin_mac_device, &bfin_mac_device,
#endif #endif
......
...@@ -481,8 +481,13 @@ static struct platform_device bfin_sport1_uart_device = { ...@@ -481,8 +481,13 @@ static struct platform_device bfin_sport1_uart_device = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
static struct platform_device bfin_mii_bus = {
.name = "bfin_mii_bus",
};
static struct platform_device bfin_mac_device = { static struct platform_device bfin_mac_device = {
.name = "bfin_mac", .name = "bfin_mac",
.dev.platform_data = &bfin_mii_bus,
}; };
#endif #endif
...@@ -593,6 +598,7 @@ static struct platform_device *cm_bf537_devices[] __initdata = { ...@@ -593,6 +598,7 @@ static struct platform_device *cm_bf537_devices[] __initdata = {
#endif #endif
#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
&bfin_mii_bus,
&bfin_mac_device, &bfin_mac_device,
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment