summaryrefslogtreecommitdiffstats
path: root/drivers/staging/octeon/octeon-ethernet.h
diff options
context:
space:
mode:
authorDavid Daney <david.daney@cavium.com>2014-05-29 11:10:02 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-06-19 15:24:52 -0700
commitec3a2207c322e518f7f42c80e54b8ecaf8a6f03e (patch)
tree5a0783b7013cab2d9c8327d54884b798c8d41e9d /drivers/staging/octeon/octeon-ethernet.h
parent91177d53a394a982735262428d2c876df0aaa38d (diff)
downloadop-kernel-dev-ec3a2207c322e518f7f42c80e54b8ecaf8a6f03e.zip
op-kernel-dev-ec3a2207c322e518f7f42c80e54b8ecaf8a6f03e.tar.gz
staging: octeon-ethernet: Move PHY activation to .ndo_open().
This prevents PHY not found types of errors for PHY drivers that are probed after the Ethernet driver is probed, because the ifconfig UP is done from userspace after all drivers have been probed. Also avoid the cvmx-helper-board.c PHY code if a real PHY driver is present, this allows a bootloader supplied device tree to specify the PHY information rather than having to modify the code for each different board. Tested-by: Alex Smith <alex.smith@imgtec.com> Signed-off-by: David Daney <david.daney@cavium.com> Signed-off-by: Alex Smith <alex.smith@imgtec.com> Cc: devel@driverdev.osuosl.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/octeon/octeon-ethernet.h')
-rw-r--r--drivers/staging/octeon/octeon-ethernet.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/staging/octeon/octeon-ethernet.h b/drivers/staging/octeon/octeon-ethernet.h
index 4cf3884..d0e3211 100644
--- a/drivers/staging/octeon/octeon-ethernet.h
+++ b/drivers/staging/octeon/octeon-ethernet.h
@@ -44,6 +44,8 @@ struct octeon_ethernet {
int queue;
/* Hardware fetch and add to count outstanding tx buffers */
int fau;
+ /* My netdev. */
+ struct net_device *netdev;
/*
* Type of port. This is one of the enums in
* cvmx_helper_interface_mode_t
@@ -85,6 +87,8 @@ extern int cvm_oct_xaui_stop(struct net_device *dev);
extern int cvm_oct_common_init(struct net_device *dev);
extern void cvm_oct_common_uninit(struct net_device *dev);
+void cvm_oct_adjust_link(struct net_device *dev);
+int cvm_oct_common_stop(struct net_device *dev);
extern int always_use_pow;
extern int pow_send_group;
OpenPOWER on IntegriCloud