Commit f5203a3d authored by Robert Hancock's avatar Robert Hancock Committed by David S. Miller

net: axienet: convert to phylink API

Convert this driver to use the phylink API rather than the legacy PHY
API. This allows for better support for SFP modules connected using a
1000BaseX or SGMII interface.
Signed-off-by: default avatarRobert Hancock <hancock@sedsystems.ca>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 28ef9ebd
...@@ -27,7 +27,7 @@ config XILINX_EMACLITE ...@@ -27,7 +27,7 @@ config XILINX_EMACLITE
config XILINX_AXI_EMAC config XILINX_AXI_EMAC
tristate "Xilinx 10/100/1000 AXI Ethernet support" tristate "Xilinx 10/100/1000 AXI Ethernet support"
depends on MICROBLAZE || X86 || ARM || COMPILE_TEST depends on MICROBLAZE || X86 || ARM || COMPILE_TEST
select PHYLIB select PHYLINK
---help--- ---help---
This driver supports the 10/100/1000 Ethernet from Xilinx for the This driver supports the 10/100/1000 Ethernet from Xilinx for the
AXI bus interface used in Xilinx Virtex FPGAs. AXI bus interface used in Xilinx Virtex FPGAs.
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
#include <linux/spinlock.h> #include <linux/spinlock.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <linux/if_vlan.h> #include <linux/if_vlan.h>
#include <linux/phylink.h>
/* Packet size info */ /* Packet size info */
#define XAE_HDR_SIZE 14 /* Size of Ethernet header */ #define XAE_HDR_SIZE 14 /* Size of Ethernet header */
...@@ -420,6 +421,9 @@ struct axienet_local { ...@@ -420,6 +421,9 @@ struct axienet_local {
/* Connection to PHY device */ /* Connection to PHY device */
struct device_node *phy_node; struct device_node *phy_node;
struct phylink *phylink;
struct phylink_config phylink_config;
/* Clock for AXI bus */ /* Clock for AXI bus */
struct clk *clk; struct clk *clk;
...@@ -439,7 +443,6 @@ struct axienet_local { ...@@ -439,7 +443,6 @@ struct axienet_local {
phy_interface_t phy_mode; phy_interface_t phy_mode;
u32 options; /* Current options word */ u32 options; /* Current options word */
u32 last_link;
u32 features; u32 features;
/* Buffer descriptors */ /* Buffer descriptors */
......
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