qcacmn: Fix bug in link descriptor pool setup
Fix bug in calculation of number of link descriptor entries per bank, which was causing memory corruptions. Change-Id: I68a86b8c644a4ef48a45ad5c98b739dced68d81d CRs-Fixed: 2057893
This commit is contained in:

committed by
snandini

parent
1be17fcd6b
commit
c45b01eb2b
@@ -636,10 +636,10 @@ static int dp_hw_link_desc_pool_setup(struct dp_soc *soc)
|
|||||||
for (i = 0; i < MAX_LINK_DESC_BANKS &&
|
for (i = 0; i < MAX_LINK_DESC_BANKS &&
|
||||||
soc->link_desc_banks[i].base_paddr; i++) {
|
soc->link_desc_banks[i].base_paddr; i++) {
|
||||||
uint32_t num_entries = (soc->link_desc_banks[i].size -
|
uint32_t num_entries = (soc->link_desc_banks[i].size -
|
||||||
(unsigned long)(
|
((unsigned long)(
|
||||||
soc->link_desc_banks[i].base_vaddr) -
|
soc->link_desc_banks[i].base_vaddr) -
|
||||||
(unsigned long)(
|
(unsigned long)(
|
||||||
soc->link_desc_banks[i].base_vaddr_unaligned))
|
soc->link_desc_banks[i].base_vaddr_unaligned)))
|
||||||
/ link_desc_size;
|
/ link_desc_size;
|
||||||
unsigned long paddr = (unsigned long)(
|
unsigned long paddr = (unsigned long)(
|
||||||
soc->link_desc_banks[i].base_paddr);
|
soc->link_desc_banks[i].base_paddr);
|
||||||
@@ -694,11 +694,11 @@ static int dp_hw_link_desc_pool_setup(struct dp_soc *soc)
|
|||||||
soc->link_desc_banks[i].base_paddr; i++) {
|
soc->link_desc_banks[i].base_paddr; i++) {
|
||||||
uint32_t num_link_descs =
|
uint32_t num_link_descs =
|
||||||
(soc->link_desc_banks[i].size -
|
(soc->link_desc_banks[i].size -
|
||||||
(unsigned long)(
|
((unsigned long)(
|
||||||
soc->link_desc_banks[i].base_vaddr) -
|
soc->link_desc_banks[i].base_vaddr) -
|
||||||
(unsigned long)(
|
(unsigned long)(
|
||||||
soc->link_desc_banks[i].base_vaddr_unaligned)) /
|
soc->link_desc_banks[i].base_vaddr_unaligned)))
|
||||||
link_desc_size;
|
/ link_desc_size;
|
||||||
unsigned long paddr = (unsigned long)(
|
unsigned long paddr = (unsigned long)(
|
||||||
soc->link_desc_banks[i].base_paddr);
|
soc->link_desc_banks[i].base_paddr);
|
||||||
void *desc = NULL;
|
void *desc = NULL;
|
||||||
|
Reference in New Issue
Block a user