diff options
author | Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> | 2014-10-22 14:26:45 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-10-24 15:49:20 -0400 |
commit | e7de17abeda24d8acc316b2e07bd969d03099eea (patch) | |
tree | 956a8d0c5b75de42998b4c589d5421cf229c469a | |
parent | 6b358aedced8180830727258718c3916bef3e249 (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.c | 2 | ||||
-rw-r--r-- | include/linux/pxa168_eth.h | 1 |
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. |