hal_be_hw_headers.h 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /*
  2. * Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
  3. * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
  4. *
  5. * Permission to use, copy, modify, and/or distribute this software for
  6. * any purpose with or without fee is hereby granted, provided that the
  7. * above copyright notice and this permission notice appear in all
  8. * copies.
  9. *
  10. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  11. * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  12. * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
  13. * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  14. * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  15. * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  16. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  17. * PERFORMANCE OF THIS SOFTWARE.
  18. */
  19. #ifndef _HAL_BE_HW_INTERNAL_H_
  20. #define _HAL_BE_HW_INTERNAL_H_
  21. #include "wcss_seq_hwioreg_umac.h"
  22. #include "phyrx_location.h"
  23. #include "receive_rssi_info.h"
  24. #include "buffer_addr_info.h"
  25. #include "wbm2sw_completion_ring_tx.h"
  26. #include "wbm2sw_completion_ring_rx.h"
  27. #if defined(QCA_WIFI_KIWI)
  28. #include "msmhwioreg.h"
  29. #endif
  30. #include "phyrx_common_user_info.h"
  31. /* TX MONITOR */
  32. #ifdef QCA_MONITOR_2_0_SUPPORT
  33. #include "mon_buffer_addr.h"
  34. /* FES WINDOW OPEN */
  35. #include "tx_fes_setup.h"
  36. #include "rx_response_required_info.h"
  37. #endif /* QCA_MONITOR_2_0_SUPPORT */
  38. #include <reo_descriptor_threshold_reached_status.h>
  39. #include <reo_flush_queue.h>
  40. #ifdef REO_SHARED_QREF_TABLE_EN
  41. #include "rx_reo_queue_reference.h"
  42. #endif
  43. #define HAL_DESC_64_SET_FIELD(_desc, _word, _fld, _value) do { \
  44. ((uint64_t *)(_desc))[(_word ## _ ## _fld ## _OFFSET) >> 3] &= \
  45. ~(_word ## _ ## _fld ## _MASK); \
  46. ((uint64_t *)(_desc))[(_word ## _ ## _fld ## _OFFSET) >> 3] |= \
  47. (((uint64_t)(_value)) << _word ## _ ## _fld ## _LSB); \
  48. } while (0)
  49. #endif /* _HAL_BE_HW_INTERNAL_H_ */