From: Mark Brown Date: Mon, 6 Mar 2023 14:07:40 +0000 (+0000) Subject: regmap: Add support for devices with no interrupt readback X-Git-Tag: v6.6.7~3025^2~16 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=054a0da568b94f6b69ccf34b80f7c41a6623eb11;p=platform%2Fkernel%2Flinux-starfive.git regmap: Add support for devices with no interrupt readback Merge series from William Breathitt Gray : There are devices which have interrupt support with mask and ack registers but no status register. Add a flag which lets us support them, we just assume that all the interrupts fired. --- 054a0da568b94f6b69ccf34b80f7c41a6623eb11 diff --cc include/linux/regmap.h index 1c77756,3012861..19d54f0 --- a/include/linux/regmap.h +++ b/include/linux/regmap.h @@@ -1567,9 -1565,11 +1567,10 @@@ struct regmap_irq_chip_data * offsets to each peripheral. Deprecated; the same thing * can be accomplished with a @get_irq_reg callback, without * 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 * assigned based on the index in the array of the interrupt. * @num_irqs: Number of descriptors. @@@ -1628,12 -1626,13 +1629,13 @@@ struct regmap_irq_chip unsigned int use_ack:1; unsigned int ack_invert:1; unsigned int clear_ack:1; + unsigned int status_invert:1; unsigned int wake_invert:1; - unsigned int runtime_pm:1; unsigned int type_in_mask:1; unsigned int clear_on_unmask:1; + unsigned int runtime_pm:1; unsigned int not_fixed_stride:1; - unsigned int status_invert:1; + unsigned int no_status:1; int num_regs;