.. | .. |
---|
19 | 19 | _IRQ_DISABLE_UNLAZY = IRQ_DISABLE_UNLAZY, |
---|
20 | 20 | _IRQ_HIDDEN = IRQ_HIDDEN, |
---|
21 | 21 | _IRQ_RAW = IRQ_RAW, |
---|
| 22 | + _IRQ_OOB = IRQ_OOB, |
---|
| 23 | + _IRQ_CHAINED = IRQ_CHAINED, |
---|
22 | 24 | _IRQF_MODIFY_MASK = IRQF_MODIFY_MASK, |
---|
23 | 25 | }; |
---|
24 | 26 | |
---|
.. | .. |
---|
35 | 37 | #define IRQ_DISABLE_UNLAZY GOT_YOU_MORON |
---|
36 | 38 | #define IRQ_HIDDEN GOT_YOU_MORON |
---|
37 | 39 | #define IRQ_RAW GOT_YOU_MORON |
---|
| 40 | +#define IRQ_OOB GOT_YOU_MORON |
---|
| 41 | +#define IRQ_CHAINED GOT_YOU_MORON |
---|
38 | 42 | #undef IRQF_MODIFY_MASK |
---|
39 | 43 | #define IRQF_MODIFY_MASK GOT_YOU_MORON |
---|
40 | 44 | |
---|
.. | .. |
---|
195 | 199 | WARN_ON_ONCE(1); |
---|
196 | 200 | return false; |
---|
197 | 201 | } |
---|
| 202 | + |
---|
| 203 | +static inline bool irq_settings_is_oob(struct irq_desc *desc) |
---|
| 204 | +{ |
---|
| 205 | + return desc->status_use_accessors & _IRQ_OOB; |
---|
| 206 | +} |
---|
| 207 | + |
---|
| 208 | +static inline void irq_settings_clr_oob(struct irq_desc *desc) |
---|
| 209 | +{ |
---|
| 210 | + desc->status_use_accessors &= ~_IRQ_OOB; |
---|
| 211 | +} |
---|
| 212 | + |
---|
| 213 | +static inline void irq_settings_set_oob(struct irq_desc *desc) |
---|
| 214 | +{ |
---|
| 215 | + desc->status_use_accessors |= _IRQ_OOB; |
---|
| 216 | +} |
---|
| 217 | + |
---|
| 218 | +static inline bool irq_settings_is_chained(struct irq_desc *desc) |
---|
| 219 | +{ |
---|
| 220 | + return desc->status_use_accessors & _IRQ_CHAINED; |
---|
| 221 | +} |
---|
| 222 | + |
---|
| 223 | +static inline void irq_settings_set_chained(struct irq_desc *desc) |
---|
| 224 | +{ |
---|
| 225 | + desc->status_use_accessors |= _IRQ_CHAINED; |
---|
| 226 | +} |
---|
| 227 | + |
---|
| 228 | +static inline void irq_settings_clr_chained(struct irq_desc *desc) |
---|
| 229 | +{ |
---|
| 230 | + desc->status_use_accessors &= ~_IRQ_CHAINED; |
---|
| 231 | +} |
---|