qcacmn: Fix data type for ic_irqnum
ic_irqnum saves the irq number given by platform, existing max irq which can be saved per ce is 255, if platform return irq greater than 255, value is misinterpreted with that saved in a byte, this will eventually have problem when host driver suspends/stop, during which freeing irq will fail. But in scenarios such as IPI mechanisms such as whunt, since free irq fails, it would still assume irq is enabled and call registered handlers, which will lead to null pointer access. Inorder to fix this changed data type to uint16_t. Change-Id: I0d92f965462a0a6416ee3dce880c4218e5ab09e8 CRs-Fixed: 2700577
Tento commit je obsažen v:
@@ -44,7 +44,7 @@
|
||||
#define HIF_IC_CE0_IRQ_OFFSET 4
|
||||
#define HIF_IC_MAX_IRQ 52
|
||||
|
||||
static uint8_t ic_irqnum[HIF_IC_MAX_IRQ];
|
||||
static uint16_t ic_irqnum[HIF_IC_MAX_IRQ];
|
||||
/* integrated chip irq names */
|
||||
const char *ic_irqname[HIF_IC_MAX_IRQ] = {
|
||||
"misc-pulse1",
|
||||
|
Odkázat v novém úkolu
Zablokovat Uživatele