qcacmn: WBM msdu continuation for SG in QCN9000

In QCN9000, wbm release ring has msdu continuation bit
support for invld peer MPDUs. Host needs to form SG
buffer for packets with msdu continuation bit set

Change-Id: Ica03c78068d32d2c8dc609b9a50298b91dd48c0a
This commit is contained in:
Mainak Sen
2020-03-06 19:16:27 +05:30
committed by nshrivas
parent 28216f27e4
commit aceafadc2e
8 changed files with 152 additions and 10 deletions

View File

@@ -1157,6 +1157,24 @@ hal_srng_dst_num_valid_locked(hal_soc_handle_t hal_soc,
return num_valid;
}
/**
* hal_srng_sync_cachedhp - sync cachehp pointer from hw hp
*
* @hal_soc: Opaque HAL SOC handle
* @hal_ring_hdl: Destination ring pointer
*
*/
static inline
void hal_srng_sync_cachedhp(void *hal_soc,
hal_ring_handle_t hal_ring_hdl)
{
struct hal_srng *srng = (struct hal_srng *)hal_ring_hdl;
uint32_t hp;
hp = *(volatile uint32_t *)(srng->u.dst_ring.hp_addr);
srng->u.dst_ring.cached_hp = hp;
}
/**
* hal_srng_src_reap_next - Reap next entry from a source ring and move reap
* pointer. This can be used to release any buffers associated with completed