diff --git a/hif/src/ce/ce_assignment.h b/hif/src/ce/ce_assignment.h index f12867f187..58051a631e 100644 --- a/hif/src/ce/ce_assignment.h +++ b/hif/src/ce/ce_assignment.h @@ -575,7 +575,8 @@ static struct CE_attr host_ce_config_wlan_qca8074[] = { /* target -> host PKTLOG */ { /* CE5 */ CE_ATTR_FLAGS, 0, 0, 2048, 512, NULL,}, /* Target autonomous HIF_memcpy */ - { /* CE6 */ CE_ATTR_FLAGS, 0, 0, 0, 0, NULL,}, + { /* CE6 */ CE_ATTR_FLAGS | CE_ATTR_DISABLE_INTR, 0, 0, + 0, 0, NULL,}, /* host->target WMI (mac1) */ { /* CE7 */ CE_ATTR_FLAGS, 0, 32, 2048, 0, NULL,}, /* Target to uMC */ diff --git a/hif/src/snoc/if_ahb.c b/hif/src/snoc/if_ahb.c index fc13902bf3..cd5990b409 100644 --- a/hif/src/snoc/if_ahb.c +++ b/hif/src/snoc/if_ahb.c @@ -252,11 +252,14 @@ int hif_ahb_configure_irq(struct hif_pci_softc *sc) struct hif_softc *scn = HIF_GET_SOFTC(sc); struct platform_device *pdev = (struct platform_device *)sc->pdev; struct HIF_CE_state *hif_state = HIF_GET_CE_STATE(scn); + struct CE_attr *host_ce_conf = hif_state->host_ce_config; int irq = 0; int i; /* configure per CE interrupts */ for (i = 0; i < scn->ce_count; i++) { + if (host_ce_conf[i].flags & CE_ATTR_DISABLE_INTR) + continue; irq = platform_get_irq_byname(pdev, ic_irqname[HIF_IC_CE0_IRQ_OFFSET + i]); ic_irqnum[HIF_IC_CE0_IRQ_OFFSET + i] = irq; ret = request_irq(irq ,