Print this page
3014 Intel X540 Support
@@ -23,10 +23,11 @@
* Copyright(c) 2007-2010 Intel Corporation. All rights reserved.
*/
/*
* Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012 Nexenta Systems, Inc. All rights reserved.
*/
#include "ixgbe_sw.h"
static int ixgbe_tx_copy(ixgbe_tx_ring_t *, tx_control_block_t *, mblk_t *,
@@ -1076,12 +1077,12 @@
/*
* The Insert Ethernet CRC (IFCS) bit and the checksum fields are only
* valid in the first descriptor of the packet.
* Setting paylen in every first_tbd for all parts.
- * 82599 requires the packet length in paylen field with or without
- * LSO and 82598 will ignore it in non-LSO mode.
+ * 82599 and X540 require the packet length in paylen field with or
+ * without LSO and 82598 will ignore it in non-LSO mode.
*/
ASSERT(first_tbd != NULL);
first_tbd->read.cmd_type_len |= IXGBE_ADVTXD_DCMD_IFCS;
switch (hw->mac.type) {
@@ -1093,10 +1094,11 @@
- ctx->l4_hdr_len) << IXGBE_ADVTXD_PAYLEN_SHIFT;
}
break;
case ixgbe_mac_82599EB:
+ case ixgbe_mac_X540:
if (ctx != NULL && ctx->lso_flag) {
first_tbd->read.cmd_type_len |= IXGBE_ADVTXD_DCMD_TSE;
first_tbd->read.olinfo_status |=
(mbsize - ctx->mac_hdr_len - ctx->ip_hdr_len
- ctx->l4_hdr_len) << IXGBE_ADVTXD_PAYLEN_SHIFT;