Commit f20136eb authored by Cyril Chemparathy's avatar Cyril Chemparathy Committed by Kevin Hilman

net: davinci_emac: separate out davinci mdio

Davinci's MDIO controller is present on other TI devices, without an
accompanying EMAC.  For example, on tnetv107x, the same MDIO module is used in
conjunction with a 3-port switch hardware.

By separating the MDIO controller code into its own platform driver, this
patch allows common logic to be reused on such platforms.
Signed-off-by: default avatarCyril Chemparathy <cyril@ti.com>
Tested-by: default avatarMichael Williamson <michael.williamson@criticallink.com>
Tested-by: default avatarCaglar Akyuz <caglarakyuz@gmail.com>
Signed-off-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
parent 87748823
...@@ -958,6 +958,16 @@ config TI_DAVINCI_EMAC ...@@ -958,6 +958,16 @@ config TI_DAVINCI_EMAC
To compile this driver as a module, choose M here: the module To compile this driver as a module, choose M here: the module
will be called davinci_emac_driver. This is recommended. will be called davinci_emac_driver. This is recommended.
config TI_DAVINCI_MDIO
tristate "TI DaVinci MDIO Support"
depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 )
select PHYLIB
help
This driver supports TI's DaVinci MDIO module.
To compile this driver as a module, choose M here: the module
will be called davinci_mdio. This is recommended.
config DM9000 config DM9000
tristate "DM9000 support" tristate "DM9000 support"
depends on ARM || BLACKFIN || MIPS depends on ARM || BLACKFIN || MIPS
......
...@@ -7,6 +7,7 @@ obj-$(CONFIG_MDIO) += mdio.o ...@@ -7,6 +7,7 @@ obj-$(CONFIG_MDIO) += mdio.o
obj-$(CONFIG_PHYLIB) += phy/ obj-$(CONFIG_PHYLIB) += phy/
obj-$(CONFIG_TI_DAVINCI_EMAC) += davinci_emac.o obj-$(CONFIG_TI_DAVINCI_EMAC) += davinci_emac.o
obj-$(CONFIG_TI_DAVINCI_MDIO) += davinci_mdio.o
obj-$(CONFIG_E1000) += e1000/ obj-$(CONFIG_E1000) += e1000/
obj-$(CONFIG_E1000E) += e1000e/ obj-$(CONFIG_E1000E) += e1000e/
......
This diff is collapsed.
...@@ -14,6 +14,10 @@ ...@@ -14,6 +14,10 @@
#include <linux/if_ether.h> #include <linux/if_ether.h>
#include <linux/memory.h> #include <linux/memory.h>
struct mdio_platform_data {
unsigned long bus_freq;
};
struct emac_platform_data { struct emac_platform_data {
char mac_addr[ETH_ALEN]; char mac_addr[ETH_ALEN];
u32 ctrl_reg_offset; u32 ctrl_reg_offset;
......
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