Commit Graph

53 Commits

Author SHA1 Message Date
Bruce Richardson
e9d48c0072 update Intel copyright years to 2014
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
2014-02-25 21:29:14 +01:00
Richardson, Bruce
b2595c4aa9 igb/ixgbe: fix build with ICC
ICC requires an initializer be given for the static variables,
so adding one in cases where one wasn't previously given.

This problem was introduced in commit e8ae856140
(fix index overflow when resetting big queues).

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
2014-01-15 15:29:29 +01:00
Thomas Monjalon
e8ae856140 igb/ixgbe: fix index overflow when resetting big queues
Rings are resetted with a loop because memset cannot be used without
issuing a warning about volatile casting.
The index of the loop was a 16-bit variable which is sufficient for
ring entries number but not for the byte size of the whole ring.
The overflow happens when rings are configured for 4096 entries
(descriptor size is 16 bytes). The result is an endless loop.

It is fixed by indexing ring entries and resetting all bytes of the entry
with a simple assignment.
The descriptor initializer is zeroed thanks to its static declaration.

There already was a fix for ixgbe Tx only
(commit bcf457f8c0).
It is reverted to use the same fix everywhere (Rx/Tx for igb/ixgbe).

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Ivan Boule <ivan.boule@6wind.com>
2014-01-03 17:08:09 +01:00
Intel
03c95df15a e1000: add MAC control forward
Signed-off-by: Intel
2013-11-24 01:31:34 +01:00
Intel
df0f8da586 igb: fix PF build
Signed-off-by: Intel
2013-11-24 01:31:34 +01:00
Intel
e2aa75f170 igb: configure CRC stripping for i211 and i354
Signed-off-by: Intel
2013-11-24 01:31:34 +01:00
Intel
4f29810e3c igb: add i354 support
Signed-off-by: Intel
2013-11-24 01:31:34 +01:00
Intel
38db3f7f50 e1000: update base driver
The base driver supports more NICs:
    - i210 flashless
    - i217
    - i218
    - i354

The new features are not automatically used by the DPDK PMD.

Signed-off-by: Intel
2013-11-24 01:31:34 +01:00
Intel
dffbaf7880 e1000: revert fix for multicast in VF
Revert fix from commit 06cf9be95c.

Signed-off-by: Intel
2013-11-24 01:31:34 +01:00
Intel
1558bea6e3 e1000: more error checks
Signed-off-by: Intel
2013-11-24 01:31:33 +01:00
Intel
2fd4855f30 e1000: mark unused parameters
Signed-off-by: Intel
2013-11-24 01:31:33 +01:00
Intel
1d2d65121b e1000: minor changes
Signed-off-by: Intel
2013-11-24 01:31:33 +01:00
Intel
5037620be5 e1000: whitespace changes
Signed-off-by: Intel
2013-11-24 01:31:33 +01:00
Intel
7ef0072910 ethdev: random MAC address
Factorize code by moving random_addr() function in only place.
It will be reused for virtio.

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
d52147ec28 igb: add VMDq support
Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
5caeb1b143 igb: fix VF init without setup
In case of multi-process application, the secondary process can initialize
the driver without configuring queues. In this case the Rx/Tx functions
were not initialized because it was only done in queue setup.

Fix by reproducing the same behaviour as in eth_igb_dev_init().

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
a84f185a8a e1000: fix descriptor overflow
Allow rxq->rx_tail + offset > 65535
in eth_em_rx_descriptor_done().

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
b967915a03 e1000: minor changes
Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
1c1d4d7a92 doc: whitespace changes in licenses
Signed-off-by: Intel
2013-10-09 14:51:55 +02:00
Intel
c32ee651a4 igb: check DD bit of specific RX descriptor
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
0f6b7c7f7a igb: use DD bit to count RX available descriptors
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
3af34dec0b igb: force phy power up/down
Signed-off-by: Intel
2013-09-17 14:16:08 +02:00
Intel
28f682a176 igb: update VMDq/DCB support
Signed-off-by: Intel
2013-09-17 14:16:08 +02:00
Intel
be2d648a2d igb: add PF support
Signed-off-by: Intel
2013-09-17 14:16:08 +02:00
Intel
e51abef393 igb: fix max RX packet size and support dual VLAN
When in 'normal' mode, hardware is designed to receive up to 1522 bytes.
When in 'jumbo' mode, RLPML register must be updated so that hardware accepts
a 802.1q vlan header. If dual vlan is enabled, then a second vlan header is
expected, so update RLPML register according to dual vlan support.

Signed-off-by: Intel
2013-09-17 14:16:07 +02:00
Intel
23a6660113 igb: retrieve RX available descriptors
Signed-off-by: Intel
2013-09-17 14:16:07 +02:00
Intel
6acc6176c4 e1000: retrieve RX available descriptors
Signed-off-by: Intel
2013-09-17 14:16:07 +02:00
Intel
9236f43284 igb: RSS RETA configuration
Signed-off-by: Intel
2013-09-17 14:16:07 +02:00
Intel
a30ebfbb8c e1000: move workaround for wthresh on 82576 at wrong place
The workaround is moved in e1000em code but 82576 is an igb NIC.
It breaks the fix of the commit 7e9e49feea.

Signed-off-by: Intel <intel.com>
2013-09-17 14:14:59 +02:00
Stephen Hemminger
7e9e49feea igb: workaround errata with wthresh on 82576
The 82576 has known issues which require the write threshold to be set to 1.
See:
	http://download.intel.com/design/network/specupdt/82576_SPECUPDATE.pdf

If not then single packets will hang in transmit ring until more arrive.
Simple tests like ping will fail.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Reviewed-by: Vincent Jardin <vincent.jardin@6wind.com>
2013-09-17 14:09:23 +02:00
Intel
a22f5ce8fc pci: don't unbind resources on exit
unbind operations must be done before starting eal application

Signed-off-by: Intel
2013-09-17 14:09:22 +02:00
Intel
0a45657a67 pci: rework interrupt handling
Signed-off-by: Intel <intel.com>
2013-09-17 14:09:22 +02:00
Stephen Hemminger
eee16c964c pci: support multiple PCI regions per device
Need to change PCI code to support multiple I/O regions on a single device.
Some devices like VMXNET3 have multiple PCI memory regions, and some
have none.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Intel
2013-09-17 14:09:22 +02:00
Intel
a974564b34 lib: fix various compilation warnings
Signed-off-by: Intel
2013-09-06 11:43:07 +02:00
Intel
3b46fb77eb lib: 32/64-bit cleanups
Signed-off-by: Intel
2013-09-06 11:43:07 +02:00
Intel
b6df9fc871 update copyright date to 2013
Signed-off-by: Intel
2013-07-25 16:07:52 +02:00
Zijie Pan
06cf9be95c lib: fix uninitialized value
Fix warning "The left expression of the compound assignment
is an uninitialized value".

Signed-off-by: Zijie Pan <zijie.pan@6wind.com>
Acked-by: Ivan Boule <ivan.boule@6wind.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
2013-07-25 16:07:51 +02:00
Zijie Pan
a75cc7772c lib: fix uninitialized variables
Fix compilation errors caused by uninitialized variables.

Signed-off-by: Krzysztof Witek <krzysztof.witek@6wind.com>
Signed-off-by: Zijie Pan <zijie.pan@6wind.com>
Acked-by: Ivan Boule <ivan.boule@6wind.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
2013-07-25 16:07:51 +02:00
Zijie Pan
cddaf87a1e lib: fix unused values
Fix warnings of type "Value stored to 'xxx' is never read".

Signed-off-by: Zijie Pan <zijie.pan@6wind.com>
Acked-by: Ivan Boule <ivan.boule@6wind.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
2013-07-25 16:07:51 +02:00
Intel
c872db9ea5 igb: fix RX for Springville (i210)
Signed-off-by: Intel
2013-07-25 16:07:51 +02:00
Intel
bdb244b969 e1000: whitespace changes
Signed-off-by: Intel
2013-07-25 15:40:56 +02:00
Intel
805803445a e1000: support EM devices (also known as e1000/e1000e)
Signed-off-by: Intel
2013-07-25 15:40:56 +02:00
Intel
0197e3ecf5 e1000: update RX/TX queue configuration
Queues are allocated by rte_ether.

Signed-off-by: Intel
2013-07-25 15:40:55 +02:00
Intel
7da9ffee83 e1000: add vlan offload support
Signed-off-by: Intel
2013-07-25 15:40:55 +02:00
Intel
e094e8f954 e1000: minor changes
Signed-off-by: Intel
2013-07-25 15:40:55 +02:00
Intel
5e305acc2e igb: various updates
Signed-off-by: Intel
2013-07-25 15:40:55 +02:00
Intel
d82170d279 igb: add VF support
Signed-off-by: Intel
2013-07-25 15:40:55 +02:00
Intel
8206ad5055 igb: more supported devices
Signed-off-by: Intel
2013-07-25 15:40:55 +02:00
Intel
5a32a257f9 e1000: more NICs in base driver
Signed-off-by: Intel
2013-07-25 15:23:29 +02:00
Intel
8a5eeb9c05 e1000: update base driver
Signed-off-by: Intel
2013-07-25 15:23:28 +02:00