ar71xx: pass netdev and miidev pointer to ar71xx_add_device_dsa
SVN-Revision: 28981
This commit is contained in:
parent
a9216bb76e
commit
b07b687aec
4 changed files with 12 additions and 20 deletions
|
@ -22,27 +22,15 @@ static struct platform_device ar71xx_dsa_switch_device = {
|
|||
.id = 0,
|
||||
};
|
||||
|
||||
void __init ar71xx_add_device_dsa(unsigned int id,
|
||||
void __init ar71xx_add_device_dsa(struct device *netdev,
|
||||
struct device *miidev,
|
||||
struct dsa_platform_data *d)
|
||||
{
|
||||
int i;
|
||||
|
||||
switch (id) {
|
||||
case 0:
|
||||
d->netdev = &ar71xx_eth0_device.dev;
|
||||
break;
|
||||
case 1:
|
||||
d->netdev = &ar71xx_eth1_device.dev;
|
||||
break;
|
||||
default:
|
||||
printk(KERN_ERR
|
||||
"ar71xx: invalid ethernet id %d for DSA switch\n",
|
||||
id);
|
||||
return;
|
||||
}
|
||||
|
||||
d->netdev = netdev;
|
||||
for (i = 0; i < d->nr_chips; i++)
|
||||
d->chip[i].mii_bus = &ar71xx_mdio_device.dev;
|
||||
d->chip[i].mii_bus = miidev;
|
||||
|
||||
ar71xx_dsa_switch_device.dev.platform_data = d;
|
||||
|
||||
|
|
|
@ -14,7 +14,8 @@
|
|||
|
||||
#include <net/dsa.h>
|
||||
|
||||
void ar71xx_add_device_dsa(unsigned int id,
|
||||
void ar71xx_add_device_dsa(struct device *netdev,
|
||||
struct device *miidev,
|
||||
struct dsa_platform_data *d) __init;
|
||||
|
||||
#endif /* _AR71XX_DEV_DSA_H */
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
|
||||
#include <linux/mtd/mtd.h>
|
||||
#include <linux/mtd/partitions.h>
|
||||
#include <linux/platform_device.h>
|
||||
|
||||
#include <asm/mach-ar71xx/ar71xx.h>
|
||||
|
||||
|
@ -125,8 +126,8 @@ static void __init tl_wr841n_v1_setup(void)
|
|||
ar71xx_eth0_data.duplex = DUPLEX_FULL;
|
||||
|
||||
ar71xx_add_device_eth(0);
|
||||
|
||||
ar71xx_add_device_dsa(0, &tl_wr841n_v1_dsa_data);
|
||||
ar71xx_add_device_dsa(&ar71xx_eth0_device.dev, &ar71xx_mdio_device.dev,
|
||||
&tl_wr841n_v1_dsa_data);
|
||||
|
||||
ar71xx_add_device_m25p80(&tl_wr841n_v1_flash_data);
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
|
||||
#include <linux/mtd/mtd.h>
|
||||
#include <linux/mtd/partitions.h>
|
||||
#include <linux/platform_device.h>
|
||||
|
||||
#include <asm/mach-ar71xx/ar71xx.h>
|
||||
|
||||
|
@ -130,7 +131,8 @@ static void __init tl_wr941nd_setup(void)
|
|||
ar71xx_eth0_data.duplex = DUPLEX_FULL;
|
||||
|
||||
ar71xx_add_device_eth(0);
|
||||
ar71xx_add_device_dsa(0, &tl_wr941nd_dsa_data);
|
||||
ar71xx_add_device_dsa(&ar71xx_eth0_device.dev, &ar71xx_mdio_device.dev,
|
||||
&tl_wr941nd_dsa_data);
|
||||
|
||||
ar71xx_add_device_m25p80(&tl_wr941nd_flash_data);
|
||||
|
||||
|
|
Loading…
Reference in a new issue