regmap: regmap-irq: fix getting type default values
authorSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
Thu, 28 Mar 2019 16:22:18 +0000 (16:22 +0000)
committerMark Brown <broonie@kernel.org>
Mon, 1 Apr 2019 08:11:41 +0000 (15:11 +0700)
Checking for value of type default value just after allocating will
always be zero and the type register default values will never be read,
so fix this!

Without this patch setting irq type will be silently ignored.
Patch "regmap: regmap-irq: Remove default irq type setting from core"
did remove the default mask but it forgot to remove the check before
reading the default type register.

Fixes: 84267d1b18ab ("regmap: regmap-irq: Remove default irq type setting from core")
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/base/regmap/regmap-irq.c

index 1bd1145..b476918 100644 (file)
@@ -664,9 +664,6 @@ int regmap_add_irq_chip(struct regmap *map, int irq, int irq_flags,
 
        if (chip->num_type_reg && !chip->type_in_mask) {
                for (i = 0; i < chip->num_type_reg; ++i) {
-                       if (!d->type_buf_def[i])
-                               continue;
-
                        reg = chip->type_base +
                                (i * map->reg_stride * d->type_reg_stride);