buffer_addr_info.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. /*
  2. * Copyright (c) 2024, Qualcomm Innovation Center, Inc. All rights reserved.
  3. * SPDX-License-Identifier: ISC
  4. */
  5. #ifndef _BUFFER_ADDR_INFO_H_
  6. #define _BUFFER_ADDR_INFO_H_
  7. #if !defined(__ASSEMBLER__)
  8. #endif
  9. #define NUM_OF_DWORDS_BUFFER_ADDR_INFO 2
  10. struct buffer_addr_info {
  11. #ifndef WIFI_BIT_ORDER_BIG_ENDIAN
  12. uint32_t buffer_addr_31_0 : 32;
  13. uint32_t buffer_addr_39_32 : 8,
  14. return_buffer_manager : 4,
  15. sw_buffer_cookie : 20;
  16. #else
  17. uint32_t buffer_addr_31_0 : 32;
  18. uint32_t sw_buffer_cookie : 20,
  19. return_buffer_manager : 4,
  20. buffer_addr_39_32 : 8;
  21. #endif
  22. };
  23. #define BUFFER_ADDR_INFO_BUFFER_ADDR_31_0_OFFSET 0x00000000
  24. #define BUFFER_ADDR_INFO_BUFFER_ADDR_31_0_LSB 0
  25. #define BUFFER_ADDR_INFO_BUFFER_ADDR_31_0_MSB 31
  26. #define BUFFER_ADDR_INFO_BUFFER_ADDR_31_0_MASK 0xffffffff
  27. #define BUFFER_ADDR_INFO_BUFFER_ADDR_39_32_OFFSET 0x00000004
  28. #define BUFFER_ADDR_INFO_BUFFER_ADDR_39_32_LSB 0
  29. #define BUFFER_ADDR_INFO_BUFFER_ADDR_39_32_MSB 7
  30. #define BUFFER_ADDR_INFO_BUFFER_ADDR_39_32_MASK 0x000000ff
  31. #define BUFFER_ADDR_INFO_RETURN_BUFFER_MANAGER_OFFSET 0x00000004
  32. #define BUFFER_ADDR_INFO_RETURN_BUFFER_MANAGER_LSB 8
  33. #define BUFFER_ADDR_INFO_RETURN_BUFFER_MANAGER_MSB 11
  34. #define BUFFER_ADDR_INFO_RETURN_BUFFER_MANAGER_MASK 0x00000f00
  35. #define BUFFER_ADDR_INFO_SW_BUFFER_COOKIE_OFFSET 0x00000004
  36. #define BUFFER_ADDR_INFO_SW_BUFFER_COOKIE_LSB 12
  37. #define BUFFER_ADDR_INFO_SW_BUFFER_COOKIE_MSB 31
  38. #define BUFFER_ADDR_INFO_SW_BUFFER_COOKIE_MASK 0xfffff000
  39. #endif