Don't need to keep Yukon-2 related definitions around for Skge
driver that is only for Yukon-1 and Genesis.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
When skge is booted up, the PHY may be stuck in power down state
by the previous OS. So we may need to turn it on.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Cleanup receive buffer allocation and management,
Add more error handling checks from PHY and bump version.
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Merge of four previous patches and the Kconfig fix
* Remove debug printk's
* whitespace cleanup and version number change
* clear interrupts, reset phy, and reset hardware on shutdown
* ignore 64bit counter overflow interrupts
* fix a couple of places where second port could clobber state
of first port.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Some versions of the Marvell yukon generate bogus sensor warning interrupts.
The driver would flood log with these messages. Handle this situation
cleanly by masking away at boot time.
Fixes: http://bugs.gentoo.org/show_bug.cgi?id=87182
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
drivers/net/skge.c | 24 ++++++++++--------------
drivers/net/skge.h | 8 ++++++--
2 files changed, 16 insertions(+), 16 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Cleanup code that is used to toggle LED's. Since we
get called from ethtool, can use that thread rather than
setting up a timer.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
During autonegotiation set PHY interrupt mask to ignore
bogus speed change interrupts.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
The code to clear fifo errors was incorrect and sending garbage
to the external phy. Removed the no longer used inline's funcs.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Need to handle receive and transmit packet arbiter timeouts.
Transmit arbiter timeouts happens when Gigabit sends to 100Mbit port
on same switch and pause occurs.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Cleanup messages (for debug) about PHY interrrupts, because when
user can't get driver working that is often the problem.
Use a consistent way of enabling interrupts by port.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Rewrite the code for handling the Broadcom PHY to something that
works. Remove link polling because Broadcom and Yukon don't need it.
When I wrote initial code, didn't have a genesis chipset based
board to test, so it was a non-working guess.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Replace inline accessor functions for chip revision and number of ports
with simple structure members.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
The inlines and macro's needed some cleanup's and fixes:
* change name of macro SKGEMAC_REG to SK_REG to better reflect usage
and fix comments
* ditto for SK_GEXM_REG -> SK_XMAC_REG and SKGEGMA_REG -> SK_GMA_REG
* change skge_gm_ to just gm_ since it is just a local function and long
names look ugly.
* change skge_xm_ to just xm_
* fix xm_write32 to write as two u16's with correct byte order
* fix xm_outaddr to correctly use offset
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>