rx_ppdu_ack_report.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. /*
  2. * Copyright (c) 2024, Qualcomm Innovation Center, Inc. All rights reserved.
  3. * SPDX-License-Identifier: ISC
  4. */
  5. #ifndef _RX_PPDU_ACK_REPORT_H_
  6. #define _RX_PPDU_ACK_REPORT_H_
  7. #if !defined(__ASSEMBLER__)
  8. #endif
  9. #include "ack_report.h"
  10. #define NUM_OF_DWORDS_RX_PPDU_ACK_REPORT 2
  11. #define NUM_OF_QWORDS_RX_PPDU_ACK_REPORT 1
  12. struct rx_ppdu_ack_report {
  13. #ifndef WIFI_BIT_ORDER_BIG_ENDIAN
  14. struct ack_report ack_report_details;
  15. uint32_t tlv64_padding : 32;
  16. #else
  17. struct ack_report ack_report_details;
  18. uint32_t tlv64_padding : 32;
  19. #endif
  20. };
  21. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_SELFGEN_RESPONSE_REASON_OFFSET 0x0000000000000000
  22. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_SELFGEN_RESPONSE_REASON_LSB 0
  23. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_SELFGEN_RESPONSE_REASON_MSB 3
  24. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_SELFGEN_RESPONSE_REASON_MASK 0x000000000000000f
  25. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_AX_TRIGGER_TYPE_OFFSET 0x0000000000000000
  26. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_AX_TRIGGER_TYPE_LSB 4
  27. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_AX_TRIGGER_TYPE_MSB 7
  28. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_AX_TRIGGER_TYPE_MASK 0x00000000000000f0
  29. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_SR_PPDU_OFFSET 0x0000000000000000
  30. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_SR_PPDU_LSB 8
  31. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_SR_PPDU_MSB 8
  32. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_SR_PPDU_MASK 0x0000000000000100
  33. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_RESERVED_OFFSET 0x0000000000000000
  34. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_RESERVED_LSB 9
  35. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_RESERVED_MSB 15
  36. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_RESERVED_MASK 0x000000000000fe00
  37. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_FRAME_CONTROL_OFFSET 0x0000000000000000
  38. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_FRAME_CONTROL_LSB 16
  39. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_FRAME_CONTROL_MSB 31
  40. #define RX_PPDU_ACK_REPORT_ACK_REPORT_DETAILS_FRAME_CONTROL_MASK 0x00000000ffff0000
  41. #define RX_PPDU_ACK_REPORT_TLV64_PADDING_OFFSET 0x0000000000000000
  42. #define RX_PPDU_ACK_REPORT_TLV64_PADDING_LSB 32
  43. #define RX_PPDU_ACK_REPORT_TLV64_PADDING_MSB 63
  44. #define RX_PPDU_ACK_REPORT_TLV64_PADDING_MASK 0xffffffff00000000
  45. #endif