pinctrl: intel: Allow drivers to define total amount of IRQs per community
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Tue, 9 Jun 2020 18:24:47 +0000 (21:24 +0300)
committerAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 22 Jun 2020 07:58:51 +0000 (10:58 +0300)
Some of the pin control devices may not be capable to generate IRQ
per each pin in the community. Allow individual drivers to define
total amount of IRQs per community.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
drivers/pinctrl/intel/pinctrl-intel.h

index cc78c48..0f01ef3 100644 (file)
@@ -103,6 +103,7 @@ enum {
  * @gpps: Pad groups if the controller has variable size pad groups
  * @ngpps: Number of pad groups in this community
  * @pad_map: Optional non-linear mapping of the pads
+ * @nirqs: Optional total number of IRQs this community can generate
  * @regs: Community specific common registers (reserved for core driver)
  * @pad_regs: Community specific pad registers (reserved for core driver)
  *
@@ -127,6 +128,7 @@ struct intel_community {
        const struct intel_padgroup *gpps;
        size_t ngpps;
        const unsigned int *pad_map;
+       unsigned short nirqs;
 
        /* Reserved for the core driver */
        void __iomem *regs;