aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Hesselbarth <sebastian.hesselbarth@gmail.com>2014-10-22 14:26:45 -0400
committerDavid S. Miller <davem@davemloft.net>2014-10-24 15:49:20 -0400
commite7de17abeda24d8acc316b2e07bd969d03099eea (patch)
tree956a8d0c5b75de42998b4c589d5421cf229c469a
parent6b358aedced8180830727258718c3916bef3e249 (diff)
net: pxa168_eth: Provide phy_interface mode on platform_data
The PXA168 Ethernet IP support MII and RMII connection to its PHY. Currently, pxa168 platform_data does not provide a way to pass that and there is one user of pxa168 platform_data (mach-mmp/gplug). Given the pinctrl settings of gplug it uses RMII, so add and pass a corresponding phy_interface_t. Tested-by: Antoine Ténart <antoine.tenart@free-electrons.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--arch/arm/mach-mmp/gplugd.c2
-rw-r--r--include/linux/pxa168_eth.h1
2 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/mach-mmp/gplugd.c b/arch/arm/mach-mmp/gplugd.c
index d81b2475e67e..3b5794cd0357 100644
--- a/arch/arm/mach-mmp/gplugd.c
+++ b/arch/arm/mach-mmp/gplugd.c
@@ -12,6 +12,7 @@
12#include <linux/platform_device.h> 12#include <linux/platform_device.h>
13#include <linux/gpio.h> 13#include <linux/gpio.h>
14#include <linux/gpio-pxa.h> 14#include <linux/gpio-pxa.h>
15#include <linux/phy.h>
15 16
16#include <asm/mach/arch.h> 17#include <asm/mach/arch.h>
17#include <asm/mach-types.h> 18#include <asm/mach-types.h>
@@ -158,6 +159,7 @@ struct pxa168_eth_platform_data gplugd_eth_platform_data = {
158 .port_number = 0, 159 .port_number = 0,
159 .phy_addr = 0, 160 .phy_addr = 0,
160 .speed = 0, /* Autonagotiation */ 161 .speed = 0, /* Autonagotiation */
162 .intf = PHY_INTERFACE_MODE_RMII,
161 .init = gplugd_eth_init, 163 .init = gplugd_eth_init,
162}; 164};
163 165
diff --git a/include/linux/pxa168_eth.h b/include/linux/pxa168_eth.h
index 18d75e795606..37c381120bc8 100644
--- a/include/linux/pxa168_eth.h
+++ b/include/linux/pxa168_eth.h
@@ -13,6 +13,7 @@ struct pxa168_eth_platform_data {
13 */ 13 */
14 int speed; /* 0, SPEED_10, SPEED_100 */ 14 int speed; /* 0, SPEED_10, SPEED_100 */
15 int duplex; /* DUPLEX_HALF or DUPLEX_FULL */ 15 int duplex; /* DUPLEX_HALF or DUPLEX_FULL */
16 phy_interface_t intf;
16 17
17 /* 18 /*
18 * Override default RX/TX queue sizes if nonzero. 19 * Override default RX/TX queue sizes if nonzero.