Age | Commit message (Collapse) | Author | Files | Lines |
|
On Siena each TX queue can be configured to send only packets for
which there is a TX MAC filter that matches the source MAC address,
queue ID, and optionally VID. This will be used to implement the
'spoofchk' feature for SR-IOV virtual functions.
Signed-off-by: Ben Hutchings <[email protected]>
|
|
On Siena all received packets that don't match a more specific filter
will match the unicast or multicast default filter. Currently we
leave these set to the default values (RSS with base queue number of
0). Allow them to be reconfigured to select a single RX queue.
These default filters are programmed through the FILTER_CTL register,
but we represent them internally as an additional table of size 2.
Signed-off-by: Ben Hutchings <[email protected]>
|
|
Hi Dave,
This patch is sent in conjunction with the cxgb3 firmware update submission on linux-firmware.
(https://lkml.org/lkml/2012/2/13/27)
Cheers,
Divy
From: Divy Le Ray <[email protected]>
This patch updates the firmware version cxgb3 is requesting to 7.12.0.
Signed-off-by: Divy Le Ray <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
There a two different irq variables ks->irq and netdev->irq.
Only ks->irq is set on probe, so disabling irq in ks_start_xmit fails.
This patches remove ks->irq from private data and use only netdev->irq.
Tested on a kernel 3.0 based OMAP4430 SMP Board
Signed-off-by: Jan Weitzel <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Remove double include of linux/interrupt.h.
Signed-off-by: Danny Kukawka <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Use eth_hw_addr_random() instead of calling random_ether_addr()
to set addr_assign_type correctly to NET_ADDR_RANDOM.
Reset the state to NET_ADDR_PERM as soon as the MAC get
changed via .ndo_set_mac_address.
v2: adapt to renamed eth_hw_addr_random()
Signed-off-by: Danny Kukawka <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Replace usage of random_ether_addr() with eth_hw_addr_random()
to set addr_assign_type correctly to NET_ADDR_RANDOM.
Change the trivial cases.
v2: adapt to renamed eth_hw_addr_random()
Signed-off-by: Danny Kukawka <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
The phy FW version is stored in regular memory, no MDC-MDIO access or
any special locks are required to read it in the current implementation.
Signed-off-by: Yuval Mintz <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Signed-off-by: Yuval Mintz <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Signed-off-by: Yuval Mintz <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Signed-off-by: Yuval Mintz <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Signed-off-by: Yuval Mintz <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
From: Merav Sicron <[email protected]>
Current ethtool self tests usesa large buffer on stack. This patch replaces
that array by dynamically allocated memory
Signed-off-by: Merav Sicron <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
From: Yaniv Rosner <[email protected]>
Signed-off-by: Yaniv Rosner <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
From: Yaniv Rosner <[email protected]>
Signed-off-by: Yaniv Rosner <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Following the changes in the ethtool source code, this patch enables
the bnx2x driver to publish the Link partner's capabilities s, when ethtool
is used on an interface which completed autoneg.
Signed-off-by: Yuval Mintz <[email protected]>
Signed-off-by: Yaniv Rosner <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
From: Yaniv Rosner <[email protected]>
Several boards require an additional HW bit written in-order to enable
half duplex.
Signed-off-by: Yaniv Rosner <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Currently bnx2x statistics are reset by inner driver reload, e.g. by MTU
change. This patch fixes this issue - from now on statistics should only
be reset upon device closure.
Thanks to Michal Schmidt <[email protected]> for his initial patch
regarding this issue.
Signed-off-by: Yuval Mintz <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Signed-off-by: Giuseppe Cavallaro <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
This patch moves the MAC HW initialization and
the HW feature verification from the open to the probe
function as D. Miller suggested.
So the patch actually reorganizes and tidies-up some parts of
the driver and indeed fixes some problem when tune its HW features.
These can be overwritten by looking at the HW cap register at
run-time and that generated problems.
Signed-off-by: Giuseppe Cavallaro <[email protected]>
Reviewed-by: Francesco Virlinzi <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
In case of we use an external Wake-Up IRQ line
(priv->wol_irq != dev->irq) we need to invoke the
request_irq.
Signed-off-by: Francesco Virlinzi <[email protected]>
Signed-off-by: Giuseppe Cavallaro <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
If this bit is set and the CRC error is reset, then the packet is valid.
Only report this as stat info.
Signed-off-by: Giuseppe Cavallaro <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Add unicast steering entries to resource tracker.
Do qp_detach also for these entries when VF doesn't shut down gracefully.
Otherwise there is leakage of these resources, since they are not tracked.
Signed-off-by: Eugenia Emantayev <[email protected]>
Reviewed-by: Yevgeny Petrilin <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
When adding new unicast steer entry, before moving qp to state ready,
actually before calling mlx4_RST2INIT_QP_wrapper(), there were added
a lot of entries with local_qpn=0 into radix tree.
This fact impacted the get_res() function and proper functioning
of resource tracker in addition to adding trash entries into radix tree.
Signed-off-by: Eugenia Emantayev <[email protected]>
Reviewed-by: Yevgeny Petrilin <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
When passing MLX4_UC_STEER=1 it was translated to value 2
after mlx4_QP_ATTACH_wrapper. Therefore in new_steering_entry()
unicast steer entries were added to index 2 of array of size 2.
Fixing this bug by shift right to one position.
Signed-off-by: Eugenia Emantayev <[email protected]>
Reviewed-by: Yevgeny Petrilin <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Jean Delvare reported bonding on top of 3c59x adapters was not detecting
network cable removal fast enough.
3c59x indeed uses a 60 seconds timer to check link status if carrier is
on, and 5 seconds if carrier is off.
This patch reduces timer period to 5 seconds if device is a bonding
slave.
Reported-by: Jean Delvare <[email protected]>
Acked-by: Jean Delvare <[email protected]>
Acked-by: Steffen Klassert <[email protected]>
Signed-off-by: Eric Dumazet <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
'poll' was a debugging option, but turning it on these days leads to
kernel panic. Remove it.
Signed-off-by: Michal Schmidt <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Add unicast steering entries to resource tracker.
Do qp_detach also for these entries when VF doesn't shut down gracefully.
Otherwise there is leakage of these resources, since they are not tracked.
Signed-off-by: Eugenia Emantayev <[email protected]>
Reviewed-by: Yevgeny Petrilin <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
mlx4_multicast_attach/detach() should use always MLX4_MC_STEER flag
Signed-off-by: Eugenia Emantayev <[email protected]>
Reviewed-by: Yevgeny Petrilin <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
mlx4_uc_steer_add/release() should not add MLX4_UC_STEER flag to gid.
It is added in mlx4_unicast_attach/detach().
Signed-off-by: Eugenia Emantayev <[email protected]>
Reviewed-by: Yevgeny Petrilin <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
mlx4_qp_attach/detach_common() don't use hash variable, move it to find_entry()
static find_entry() in mcg.c doesn't use steer argument
Signed-off-by: Eugenia Emantayev <[email protected]>
Reviewed-by: Yevgeny Petrilin <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Remove unnecessary field high_prios from mlx4_steer struct and initialization
Signed-off-by: Eugenia Emantayev <[email protected]>
Reviewed-by: Yevgeny Petrilin <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
When adding new unicast steer entry, before moving qp to state ready,
actually before calling mlx4_RST2INIT_QP_wrapper(), there were added
a lot of entries with local_qpn=0 into radix tree.
This fact impacted the get_res() function and proper functioning
of resource tracker in addition to adding trash entries into radix tree.
Signed-off-by: Eugenia Emantayev <[email protected]>
Reviewed-by: Yevgeny Petrilin <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
When passing MLX4_UC_STEER=1 it was translated to value 2
after mlx4_QP_ATTACH_wrapper. Therefore in new_steering_entry()
unicast steer entries were added to index 2 of array of size 2.
Fixing this bug by shift right to one position.
Signed-off-by: Eugenia Emantayev <[email protected]>
Reviewed-by: Yevgeny Petrilin <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
This patch updates the copyright dates in the tg3 driver.
Signed-off-by: Matt Carlson <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
This patch replaces tg3's private SPEED_INVALID and DUPLEX_INVALID
definitions with SPEED_UNKNOWN and DUPLEX_UNKNOWN respectively.
Signed-off-by: Matt Carlson <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
This patch removes the unneeded link_config.orig_* members. When the
phy is in a low power state, the TG3_PHYFLG_IS_LOW_POWER flag solely
determines how the link is configured. When the phy is powered back up,
it can resume using the original settings.
For the phylib case, the link configuration still needs to be saved, but
since the phylib maintains its own configuration, we can repurpose the
(unused in this case) tg3 link configuration members.
Signed-off-by: Matt Carlson <[email protected]>
Reviewed-by: Michael Chan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
When tg3 devices are shutdown, the driver uses the
TG3_PHYFLG_IS_LOW_POWER flag to enable a static phy configuration.
Any attempt to use the link configuration variables is dead code. This
patch removes such code.
Signed-off-by: Matt Carlson <[email protected]>
Reviewed-by: Michael Chan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
Detecting the ASIC revision of a device is getting to be an increasingly
complex process. This patch consolidates all the ASIC rev detection
code to a single routine for better maintainability.
Signed-off-by: Matt Carlson <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
The tg3 driver needs to submit a few phy register values to the UMP
firmware each time the link state changes. Up until now, the driver
would wait for the previous event to complete, then proceed to gather
data through a series of phy accesses. Since phy accesses are
relatively slow, it is possible for another thread to attempt to submit
its own event while the UMP code is still construction its message.
This patch seeks to minimize the collision window as much as possible by
preloading the phy data.
Signed-off-by: Matt Carlson <[email protected]>
Reviewed-by: Michael Chan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
On newer devices, the hardware expects the NVRAM address register
to be written only once per NVRAM page. To do otherwise causes NVRAM
corruption. This patch fixes the problem.
Signed-off-by: Matt Carlson <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
When checking the autoneg advertisements, the driver failed to include
the master and master enable bits for the bcm5701. This patch fixes the
problem.
Signed-off-by: Matt Carlson <[email protected]>
Reviewed-by: Michael Chan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
If the tg3 interface is down, the driver will return ethtool stats
uninitialized. This patch zeroes out the destination stat buffer in
such a case.
Signed-off-by: Matt Carlson <[email protected]>
Reviewed-by: Michael Chan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
A bug was found in the new DMA engine for the 57766. This patch
disables it, which causes the device to fallback to the old DMA engine.
Signed-off-by: Matt Carlson <[email protected]>
Reviewed-by: Michael Chan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next
|
|
Log an explicit warning if we are unable to create MTDs for a net
device. Also correct the comment about why mtd_device_register() may
fail; there is no longer an MTD table to fill up.
Signed-off-by: Ben Hutchings <[email protected]>
|
|
The 'page size' for PCIe DMA, i.e. the alignment of boundaries at
which DMA must be broken, is 4KB. Name this value as EFX_PAGE_SIZE
and use it in efx_max_tx_len(). Redefine EFX_BUF_SIZE as
EFX_PAGE_SIZE since its value is also a result of that requirement,
and use it in efx_init_special_buffer().
Signed-off-by: Ben Hutchings <[email protected]>
|
|
If efx_pci_probe_main() schedules an INVISIBLE or ALL reset (but
nothing more drastic), we retry it up to 5 times. So far as I'm
aware, this was a workaround for bugs in Falcon A0 which were fixed
in production silicon. Remove the retry.
Signed-off-by: Ben Hutchings <[email protected]>
|
|
The code in efx_process_channel() to update the RX queue after each
batch of RX completions works out as a no-op on a TX-only channel
where the RX queue structure is set to all-zeroes, but
(1) efx_channel_get_rx_queue() will BUG() if DEBUG is defined, and
(2) it's a waste of time.
Signed-off-by: Ben Hutchings <[email protected]>
|
|
Per ./Documentation/CodingStyle, goto statements are acceptable for the
centralized exiting of functions when there are multiple exit points which
share common work such as cleanup. When no common work is required for
multiple exit points, the function should just return at these exit points
instead of doing an unnecessary jump to a centralized return. This patch
cleans up the inappropriate use of goto statements, and removes unnecessary
variables (or move to a smaller scope) where possible as a result of the
cleanups.
Signed-off-by: Bruce Allan <[email protected]>
Tested-by: Aaron Brown <[email protected]>
Signed-off-by: Jeff Kirsher <[email protected]>
|