linux/drivers/net/ethernet/sfc/falcon/workarounds.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-only */
   2/****************************************************************************
   3 * Driver for Solarflare network controllers and boards
   4 * Copyright 2006-2013 Solarflare Communications Inc.
   5 */
   6
   7#ifndef EF4_WORKAROUNDS_H
   8#define EF4_WORKAROUNDS_H
   9
  10/*
  11 * Hardware workarounds.
  12 * Bug numbers are from Solarflare's Bugzilla.
  13 */
  14
  15#define EF4_WORKAROUND_FALCON_A(efx) (ef4_nic_rev(efx) <= EF4_REV_FALCON_A1)
  16#define EF4_WORKAROUND_FALCON_AB(efx) (ef4_nic_rev(efx) <= EF4_REV_FALCON_B0)
  17#define EF4_WORKAROUND_10G(efx) 1
  18
  19/* Bit-bashed I2C reads cause performance drop */
  20#define EF4_WORKAROUND_7884 EF4_WORKAROUND_10G
  21/* Truncated IPv4 packets can confuse the TX packet parser */
  22#define EF4_WORKAROUND_15592 EF4_WORKAROUND_FALCON_AB
  23
  24/* Spurious parity errors in TSORT buffers */
  25#define EF4_WORKAROUND_5129 EF4_WORKAROUND_FALCON_A
  26/* Unaligned read request >512 bytes after aligning may break TSORT */
  27#define EF4_WORKAROUND_5391 EF4_WORKAROUND_FALCON_A
  28/* iSCSI parsing errors */
  29#define EF4_WORKAROUND_5583 EF4_WORKAROUND_FALCON_A
  30/* RX events go missing */
  31#define EF4_WORKAROUND_5676 EF4_WORKAROUND_FALCON_A
  32/* RX_RESET on A1 */
  33#define EF4_WORKAROUND_6555 EF4_WORKAROUND_FALCON_A
  34/* Increase filter depth to avoid RX_RESET */
  35#define EF4_WORKAROUND_7244 EF4_WORKAROUND_FALCON_A
  36/* Flushes may never complete */
  37#define EF4_WORKAROUND_7803 EF4_WORKAROUND_FALCON_AB
  38/* Leak overlength packets rather than free */
  39#define EF4_WORKAROUND_8071 EF4_WORKAROUND_FALCON_A
  40
  41#endif /* EF4_WORKAROUNDS_H */
  42