Commit 9517d76
counter: 104-quad-8: Fix incorrect return value in IRQ handler
quad8_irq_handler() should return irqreturn_t enum values, but it
directly returns negative errno codes from regmap operations on error.
Return IRQ_NONE if the interrupt status cannot be read. If clearing the
interrupt fails, return IRQ_HANDLED to prevent the kernel from disabling
the IRQ line due to a spurious interrupt storm. Also, log these regmap
failures with dev_WARN_ONCE.
Fixes: 98ffe02 ("counter: 104-quad-8: Migrate to the regmap API")
Suggested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Haotian Zhang <vulab@iscas.ac.cn>
Link: https://lore.kernel.org/r/20251215020114.1913-1-vulab@iscas.ac.cn
Cc: stable@vger.kernel.org
Signed-off-by: William Breathitt Gray <wbg@kernel.org>1 parent 23f9485 commit 9517d76
1 file changed
Lines changed: 14 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1192 | 1192 | | |
1193 | 1193 | | |
1194 | 1194 | | |
| 1195 | + | |
1195 | 1196 | | |
1196 | 1197 | | |
1197 | 1198 | | |
| |||
1200 | 1201 | | |
1201 | 1202 | | |
1202 | 1203 | | |
1203 | | - | |
1204 | | - | |
| 1204 | + | |
| 1205 | + | |
| 1206 | + | |
| 1207 | + | |
| 1208 | + | |
1205 | 1209 | | |
1206 | 1210 | | |
1207 | 1211 | | |
| |||
1223 | 1227 | | |
1224 | 1228 | | |
1225 | 1229 | | |
1226 | | - | |
1227 | | - | |
| 1230 | + | |
| 1231 | + | |
| 1232 | + | |
1228 | 1233 | | |
1229 | 1234 | | |
1230 | 1235 | | |
1231 | 1236 | | |
1232 | 1237 | | |
1233 | 1238 | | |
1234 | 1239 | | |
1235 | | - | |
1236 | | - | |
| 1240 | + | |
| 1241 | + | |
| 1242 | + | |
| 1243 | + | |
| 1244 | + | |
1237 | 1245 | | |
1238 | 1246 | | |
1239 | 1247 | | |
| |||
0 commit comments