An error occurred fetching the project authors.
- 30 Jan, 2009 2 commits
-
-
Ben Hutchings authored
Currently we use a spin-lock to serialise statistics fetches and also to inhibit them for short periods of time, plus a flag to enable/disable statistics fetches for longer periods of time, during online reset. This was apparently insufficient to deal with the several reasons for stats being disabled. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Ben Hutchings authored
All 10Xpress PHYs require autonegotiation all the time; enforce this in the set_settings() method and do not treat it as a workaround. Remove claimed support for 100M HD mode since it is not supported by current firmware. Do not set speed override bits when AN is enabled, and do not use register 1.49192 for AN configuration as it can override what we set elsewhere. Always set the AN selector bits to 1 (802.3). Fix confusion between Next Page and Extended Next Page. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
- 26 Dec, 2008 2 commits
-
-
Ben Hutchings authored
Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Ben Hutchings authored
Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
- 13 Dec, 2008 10 commits
-
-
Ben Hutchings authored
Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Ben Hutchings authored
Some of the PHY type names are overly generic. Change them to include the model numbers of the PHYs they represent. Correct the model number reference at the top of xfp_phy.c. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Ben Hutchings authored
Add type codes for the new PHY and rename the SFX7101 type code. Add definition of clause 22 extension MMD. Adapt the 10Xpress SFX7101 code to support the SFT9001 as well. Clean up register definitions. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Ben Hutchings authored
From: Steve Hodgson <shodgson@solarflare.com> MAC, PHY and board events may be separately enabled and signalled. Our current arrangement of chaining the polling functions can result in events being missed. Change them to be more independent. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Ben Hutchings authored
Add infrastructure for auto-negotiation of speed, duplex and flow control. When using 10Xpress, auto-negotiate flow control. While we're at it, clean up the code to warn when partner is not 10GBASE-T capable. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Ben Hutchings authored
The SFC4000 has a separate MAC for use at sub-10G speeds. Introduce an efx_mac_operations structure with implementations for the two MACs. Switch between the MACs as necessary. PHY settings are independent of the MAC, so add get_settings() and set_settings() to efx_phy_operations. Also add macs field to indicate which MACs the PHY is connected to. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Ben Hutchings authored
Replace efx_nic::link_options bitfield with link_speed (speed in Mbit/s) and link_fd (full duplex flag). Remove broken auto-negotiation functions. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Ben Hutchings authored
Allocate IRQs with the name format <device>[-<type>]-<number> so that future versions of irqbalanced understand what we're doing. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Neil Turton authored
In a bidirectional forwarding test, we find that the best performance is achieved by sending the TX completion interrupts from one NIC to a CPU which shares an L2 cache with RX completion interrupts from the other NIC. To facilitate this, add an option (through a module parameter) to create separate channels for RX and TX completion with separate IRQs when MSI-X is available. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Steve Hodgson authored
Each reset is serialised by the rtnl_lock anyway, so there's no win per-NIC. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
- 06 Nov, 2008 2 commits
-
-
Ben Hutchings authored
Add board monitoring to periodic work whenever link is down. For SFE4001, report when a fault has caused the PHY to turn off. For SFE4002, switch XFP PHY into low-power state in case of a fault. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
The boot code that appears as a PCI expansion ROM on the SFC4000 is stored in flash. Expose this as a standard MTD device to allow for in-place upgrades. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
- 24 Sep, 2008 3 commits
-
-
Ben Hutchings authored
For some buffers we use a starting offset of either NET_IP_ALIGN or 0 depending on whether we believe the architecture supports efficient access to unaligned words. There is now a config macro specifying whether this is the case, so check that rather than checking for specific architectures. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Increase the potential retry count for RX flushes from 5 to 100. Stop polling the RX_DESC_PTR_TBL to infer that a flush might have happened. Instead absolutely rely on the flush events, unless bug 7803 applies (Falcon rev A only). To keep things quick, request flushes for every TX and RX queue up front, and match up the events to requests. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
There was a bug in XAUI synchronisation in early 10Xpress firmware versions. This is fixed in released firmware and we do not need to work around it. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
- 03 Sep, 2008 13 commits
-
-
Ben Hutchings authored
This was originally a kludge to fix broken locking, which has since been fixed properly. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Include PMA/PMD in loopback self-tests as intended. Add NVRAM checksum validation and include it in self-tests. Add register self-tests. Run PHY self-tests where available. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
This allows updating PHY firmware for one interface without removing all other interfaces handled by the driver. Replace tx_disabled flags and 10Xpress status enumeration with flags in enum efx_phy_mode. Prevent an interface from being brought up while in PHY flash mode. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
It is redundant with efx_channel::channel. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Currently each channel can have at most one RX queue, so go straight to that one. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Rename efx_nic::rss_queues to the more obvious n_rx_queues Remove efx_rx_queue::used and other stuff that's redundant with it. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
efx_channel::has_interrupt is redundant with efx_channel::used_flags. Remove efx_test_eventq() because it is now obviously unreachable. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Extend the SPI device setup code to support this. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Replace (cond ? 1 : 0) with cond or !!cond as appropriate, and (cond ? 0 : 1) with !cond. Remove some redundant boolean temporaries. Rename one field that looks like a flag but isn't. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Remove unmap_addr since it can be calculated from dma_addr, len and unmap_len. This saves 4-16 bytes. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Checksum generation is an attribute of our hardware TX queues, not TX descriptors. We previously used a single queue and turned checksum generation on or off as requested through ethtool. However, this can result in regenerating checksums in raw packets that should not be modified. We now create 2 hardware TX queues with checksum generation on or off. They are presented to the net core as one queue since it does not know how to select between them. The self-test verifies that a bad checksum is unaltered on the queue with checksum generation off. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Steve Hodgson authored
Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
This means the compiler doesn't need to use real division instructions. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
- 22 Jul, 2008 1 commit
-
-
Ben Hutchings authored
This avoids deadlock in case a reset is triggered during self-test. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
- 31 May, 2008 1 commit
-
-
Ben Hutchings authored
Remove our own implementation of I2C bit-banging. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
- 22 May, 2008 6 commits
-
-
Ben Hutchings authored
This driver has diverged from the out-of-tree driver to which the version number originally applied. It should be identified primarily by kernel version. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Remove redundant casts and variable. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Also change type of efx_nic_type::max_dma_mask to u64, matching pci_dma_supported() parameter type. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
This should make the driver work on 32-bit systems with 64-bit PCI support. Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-
Ben Hutchings authored
Signed-off-by:
Ben Hutchings <bhutchings@solarflare.com> Signed-off-by:
Jeff Garzik <jgarzik@redhat.com>
-