qcacmn: REO queue ref enhancement for Waikiki
In WIN BE chipsets, replace the REO tid queue programming in FW via WMI with writing to a Host managed table shared by HW and SW. REO HW will pick the tid queue address from the table indexed by peer id and tid number. Change-Id: I8107ca5116425538329b11ae3519f02b32573bac
This commit is contained in:

کامیت شده توسط
Madan Koyyalamudi

والد
e54c2ef953
کامیت
e4d9b0c2d7
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2017-2019, 2021 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -716,4 +717,50 @@ hal_get_tlv_hdr_size(hal_soc_handle_t hal_soc_hdl)
|
||||
*/
|
||||
void hal_reo_init_cmd_ring(hal_soc_handle_t hal_soc_hdl,
|
||||
hal_ring_handle_t hal_ring_hdl);
|
||||
|
||||
#ifdef REO_SHARED_QREF_TABLE_EN
|
||||
/**
|
||||
* hal_reo_shared_qaddr_setup(): Setup reo qref LUT
|
||||
* @hal_soc: Hal soc pointer
|
||||
*
|
||||
* Allocate MLO and Non MLO table for storing REO queue
|
||||
* reference pointers
|
||||
*
|
||||
* Return: void
|
||||
*/
|
||||
static inline void
|
||||
hal_reo_shared_qaddr_setup(hal_soc_handle_t hal_soc_hdl)
|
||||
{
|
||||
struct hal_soc *hal_soc = (struct hal_soc *)hal_soc_hdl;
|
||||
|
||||
if (hal_soc->ops->hal_reo_shared_qaddr_setup)
|
||||
return hal_soc->ops->hal_reo_shared_qaddr_setup(hal_soc_hdl);
|
||||
}
|
||||
|
||||
/**
|
||||
* hal_reo_shared_qaddr_detach(): Detach reo qref LUT
|
||||
* @hal_soc: Hal soc pointer
|
||||
*
|
||||
* Detach MLO and Non MLO table start addr to HW reg
|
||||
*
|
||||
* Return: void
|
||||
*/
|
||||
static inline void
|
||||
hal_reo_shared_qaddr_detach(hal_soc_handle_t hal_soc_hdl)
|
||||
{
|
||||
struct hal_soc *hal_soc = (struct hal_soc *)hal_soc_hdl;
|
||||
|
||||
if (hal_soc->ops->hal_reo_shared_qaddr_detach)
|
||||
return hal_soc->ops->hal_reo_shared_qaddr_detach(hal_soc_hdl);
|
||||
}
|
||||
|
||||
#else
|
||||
static inline void
|
||||
hal_reo_shared_qaddr_setup(hal_soc_handle_t hal_soc_hdl)
|
||||
{
|
||||
}
|
||||
|
||||
static inline void
|
||||
hal_reo_shared_qaddr_detach(hal_soc_handle_t hal_soc_hdl) {}
|
||||
#endif /* REO_SHARED_QREF_TABLE_EN */
|
||||
#endif /* _HAL_REO_H */
|
||||
|
مرجع در شماره جدید
Block a user