Call efx_set_channels() before efx->type->dimension_resources()
authorDaniel Pieczko <dpieczko@solarflare.com>
Tue, 1 Apr 2014 12:10:34 +0000 (13:10 +0100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 1 Apr 2014 20:25:51 +0000 (16:25 -0400)
commit52ad762b85ed7947ec9eff6b036eb985352f6874
treeeeb702d106b39d7eea57cbd425713f2767ba319b
parente9d8b2c2968499c1f96563e6522c56958d5a1d0d
Call efx_set_channels() before efx->type->dimension_resources()

When using the "separate_tx_channels=1" module parameter, the TX queues are
initially numbered starting from the first TX-only channel number (after all the
RX-only channels).  efx_set_channels() renumbers the queues so that they are
indexed from zero.

On EF10, the TX queues need to be relabelled in this way before calling the
dimension_resources NIC type operation, otherwise the TX queue PIO buffers can be
linked to the wrong VIs when using "separate_tx_channels=1".

Added comments to explain UC/WC mappings for PIO buffers

Signed-off-by: Shradha Shah <sshah@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/sfc/ef10.c
drivers/net/ethernet/sfc/efx.c