|
@@ -4410,6 +4410,8 @@ static inline void hif_config_rri_on_ddr(struct hif_softc *scn)
|
|
{
|
|
{
|
|
unsigned int i;
|
|
unsigned int i;
|
|
uint32_t high_paddr, low_paddr;
|
|
uint32_t high_paddr, low_paddr;
|
|
|
|
+ struct HIF_CE_state *hif_state = HIF_GET_CE_STATE(scn);
|
|
|
|
+ struct CE_attr *attr;
|
|
|
|
|
|
if (hif_alloc_rri_on_ddr(scn) != QDF_STATUS_SUCCESS)
|
|
if (hif_alloc_rri_on_ddr(scn) != QDF_STATUS_SUCCESS)
|
|
return;
|
|
return;
|
|
@@ -4422,8 +4424,11 @@ static inline void hif_config_rri_on_ddr(struct hif_softc *scn)
|
|
WRITE_CE_DDR_ADDRESS_FOR_RRI_LOW(scn, low_paddr);
|
|
WRITE_CE_DDR_ADDRESS_FOR_RRI_LOW(scn, low_paddr);
|
|
WRITE_CE_DDR_ADDRESS_FOR_RRI_HIGH(scn, high_paddr);
|
|
WRITE_CE_DDR_ADDRESS_FOR_RRI_HIGH(scn, high_paddr);
|
|
|
|
|
|
- for (i = 0; i < CE_COUNT; i++)
|
|
|
|
- CE_IDX_UPD_EN_SET(scn, CE_BASE_ADDRESS(i));
|
|
|
|
|
|
+ for (i = 0; i < CE_COUNT; i++) {
|
|
|
|
+ attr = &hif_state->host_ce_config[i];
|
|
|
|
+ if (attr->src_nentries || attr->dest_nentries)
|
|
|
|
+ CE_IDX_UPD_EN_SET(scn, CE_BASE_ADDRESS(i));
|
|
|
|
+ }
|
|
}
|
|
}
|
|
#else
|
|
#else
|
|
static inline void hif_config_rri_on_ddr(struct hif_softc *scn)
|
|
static inline void hif_config_rri_on_ddr(struct hif_softc *scn)
|