roce_common.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
  2. /* QLogic qed NIC Driver
  3. * Copyright (c) 2015-2017 QLogic Corporation
  4. * Copyright (c) 2019-2020 Marvell International Ltd.
  5. */
  6. #ifndef __ROCE_COMMON__
  7. #define __ROCE_COMMON__
  8. /************************/
  9. /* ROCE FW CONSTANTS */
  10. /************************/
  11. #define ROCE_REQ_MAX_INLINE_DATA_SIZE (256)
  12. #define ROCE_REQ_MAX_SINGLE_SQ_WQE_SIZE (288)
  13. #define ROCE_MAX_QPS (32 * 1024)
  14. #define ROCE_DCQCN_NP_MAX_QPS (64)
  15. #define ROCE_DCQCN_RP_MAX_QPS (64)
  16. #define ROCE_LKEY_MW_DIF_EN_BIT (28)
  17. /* Affiliated asynchronous events / errors enumeration */
  18. enum roce_async_events_type {
  19. ROCE_ASYNC_EVENT_NONE = 0,
  20. ROCE_ASYNC_EVENT_COMM_EST = 1,
  21. ROCE_ASYNC_EVENT_SQ_DRAINED,
  22. ROCE_ASYNC_EVENT_SRQ_LIMIT,
  23. ROCE_ASYNC_EVENT_LAST_WQE_REACHED,
  24. ROCE_ASYNC_EVENT_CQ_ERR,
  25. ROCE_ASYNC_EVENT_LOCAL_INVALID_REQUEST_ERR,
  26. ROCE_ASYNC_EVENT_LOCAL_CATASTROPHIC_ERR,
  27. ROCE_ASYNC_EVENT_LOCAL_ACCESS_ERR,
  28. ROCE_ASYNC_EVENT_QP_CATASTROPHIC_ERR,
  29. ROCE_ASYNC_EVENT_CQ_OVERFLOW_ERR,
  30. ROCE_ASYNC_EVENT_SRQ_EMPTY,
  31. ROCE_ASYNC_EVENT_DESTROY_QP_DONE,
  32. ROCE_ASYNC_EVENT_XRC_DOMAIN_ERR,
  33. ROCE_ASYNC_EVENT_INVALID_XRCETH_ERR,
  34. ROCE_ASYNC_EVENT_XRC_SRQ_CATASTROPHIC_ERR,
  35. MAX_ROCE_ASYNC_EVENTS_TYPE
  36. };
  37. #endif /* __ROCE_COMMON__ */