regmap-irq: Add no_status support

Some devices lack status registers, yet expect to handle interrupts.
Introduce a no_status flag to indicate such a configuration, where
rather than read a status register to verify, all interrupts received
are assumed to be active.

Cc: Mark Brown <broonie@kernel.org>
Signed-off-by: William Breathitt Gray <william.gray@linaro.org>
Link: https://lore.kernel.org/r/bd501b4b5ff88da24d467f75e8c71b4e0e6f21e2.1677515341.git.william.gray@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
William Breathitt Gray
2023-02-27 11:45:22 -05:00
committed by Mark Brown
parent fe15c26ee2
commit 4d60cac951
2 changed files with 17 additions and 7 deletions
+2
View File
@@ -1567,6 +1567,7 @@ struct regmap_irq_chip_data;
* the need for a @sub_reg_offsets table.
* @status_invert: Inverted status register: cleared bits are active interrupts.
* @runtime_pm: Hold a runtime PM lock on the device when accessing it.
* @no_status: No status register: all interrupts assumed generated by device.
*
* @num_regs: Number of registers in each control bank.
* @irqs: Descriptors for individual IRQs. Interrupt numbers are
@@ -1631,6 +1632,7 @@ struct regmap_irq_chip {
unsigned int clear_on_unmask:1;
unsigned int not_fixed_stride:1;
unsigned int status_invert:1;
unsigned int no_status:1;
int num_regs;