summaryrefslogtreecommitdiff
path: root/drivers/staging/wilc1000/sdio.c
diff options
context:
space:
mode:
authorAjay Singh <ajay.kathat@microchip.com>2020-02-14 14:52:16 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-02-14 19:20:11 +0300
commit759af9b84eec238cee2d0e5b42638f6f046b51d3 (patch)
tree842b733654ca7a328be4c48474d269eb9c2e510f /drivers/staging/wilc1000/sdio.c
parent38f193dff5cc8e065900fe591c48fdb084633a09 (diff)
downloadlinux-759af9b84eec238cee2d0e5b42638f6f046b51d3.tar.xz
staging: wilc1000: remove use of MAX_NUN_INT_THRPT_ENH2 macro
Make use of MAX_NUM_INT existing macro to handle the maximum supported interrupts count and removed MAX_NUN_INT_THRPT_ENH2 macro. Signed-off-by: Ajay Singh <ajay.kathat@microchip.com> Link: https://lore.kernel.org/r/20200214172250.13026-3-ajay.kathat@microchip.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/wilc1000/sdio.c')
-rw-r--r--drivers/staging/wilc1000/sdio.c20
1 files changed, 3 insertions, 17 deletions
diff --git a/drivers/staging/wilc1000/sdio.c b/drivers/staging/wilc1000/sdio.c
index ca99335687c4..77ef84f9cc37 100644
--- a/drivers/staging/wilc1000/sdio.c
+++ b/drivers/staging/wilc1000/sdio.c
@@ -27,8 +27,6 @@ struct wilc_sdio {
bool irq_gpio;
u32 block_size;
int nint;
-/* Max num interrupts allowed in registers 0xf7, 0xf8 */
-#define MAX_NUN_INT_THRPT_ENH2 (5)
int has_thrpt_enh3;
};
@@ -818,8 +816,6 @@ static int wilc_sdio_read_int(struct wilc *wilc, u32 *int_status)
tmp |= INT_3;
if (cmd.data & BIT(5))
tmp |= INT_4;
- if (cmd.data & BIT(6))
- tmp |= INT_5;
for (i = sdio_priv->nint; i < MAX_NUM_INT; i++) {
if ((tmp >> (IRG_FLAGS_OFFSET + i)) & 0x1) {
dev_err(&func->dev,
@@ -854,16 +850,11 @@ static int wilc_sdio_clear_int_ext(struct wilc *wilc, u32 val)
int vmm_ctl;
if (sdio_priv->has_thrpt_enh3) {
- u32 reg;
+ u32 reg = 0;
- if (sdio_priv->irq_gpio) {
- u32 flags;
+ if (sdio_priv->irq_gpio)
+ reg = val & (BIT(MAX_NUM_INT) - 1);
- flags = val & (BIT(MAX_NUN_INT_THRPT_ENH2) - 1);
- reg = flags;
- } else {
- reg = 0;
- }
/* select VMM table 0 */
if (val & SEL_VMM_TBL0)
reg |= BIT(5);
@@ -975,11 +966,6 @@ static int wilc_sdio_sync_ext(struct wilc *wilc, int nint)
dev_err(&func->dev, "Too many interrupts (%d)...\n", nint);
return -EINVAL;
}
- if (nint > MAX_NUN_INT_THRPT_ENH2) {
- dev_err(&func->dev,
- "Cannot support more than 5 interrupts when has_thrpt_enh2=1.\n");
- return -EINVAL;
- }
sdio_priv->nint = nint;