@@ -189,11 +189,9 @@ static void regmap_irq_sync_unlock(struct irq_data *data)
189189 ret = regmap_write (map , reg , d -> mask_buf [i ]);
190190 if (d -> chip -> clear_ack ) {
191191 if (d -> chip -> ack_invert && !ret )
192- ret = regmap_write (map , reg ,
193- d -> mask_buf [i ]);
192+ ret = regmap_write (map , reg , UINT_MAX );
194193 else if (!ret )
195- ret = regmap_write (map , reg ,
196- ~d -> mask_buf [i ]);
194+ ret = regmap_write (map , reg , 0 );
197195 }
198196 if (ret != 0 )
199197 dev_err (d -> map -> dev , "Failed to ack 0x%x: %d\n" ,
@@ -537,7 +535,7 @@ static irqreturn_t regmap_irq_thread(int irq, void *d)
537535
538536 /*
539537 * Ignore masked IRQs and ack if we need to; we ack early so
540- * there is no race between handling and acknowleding the
538+ * there is no race between handling and acknowledging the
541539 * interrupt. We assume that typically few of the interrupts
542540 * will fire simultaneously so don't worry about overhead from
543541 * doing a write per register.
@@ -556,11 +554,9 @@ static irqreturn_t regmap_irq_thread(int irq, void *d)
556554 data -> status_buf [i ]);
557555 if (chip -> clear_ack ) {
558556 if (chip -> ack_invert && !ret )
559- ret = regmap_write (map , reg ,
560- data -> status_buf [i ]);
557+ ret = regmap_write (map , reg , UINT_MAX );
561558 else if (!ret )
562- ret = regmap_write (map , reg ,
563- ~data -> status_buf [i ]);
559+ ret = regmap_write (map , reg , 0 );
564560 }
565561 if (ret != 0 )
566562 dev_err (map -> dev , "Failed to ack 0x%x: %d\n" ,
@@ -817,13 +813,9 @@ int regmap_add_irq_chip_fwnode(struct fwnode_handle *fwnode,
817813 d -> status_buf [i ] & d -> mask_buf [i ]);
818814 if (chip -> clear_ack ) {
819815 if (chip -> ack_invert && !ret )
820- ret = regmap_write (map , reg ,
821- (d -> status_buf [i ] &
822- d -> mask_buf [i ]));
816+ ret = regmap_write (map , reg , UINT_MAX );
823817 else if (!ret )
824- ret = regmap_write (map , reg ,
825- ~(d -> status_buf [i ] &
826- d -> mask_buf [i ]));
818+ ret = regmap_write (map , reg , 0 );
827819 }
828820 if (ret != 0 ) {
829821 dev_err (map -> dev , "Failed to ack 0x%x: %d\n" ,
@@ -1053,7 +1045,7 @@ int devm_regmap_add_irq_chip_fwnode(struct device *dev,
10531045EXPORT_SYMBOL_GPL (devm_regmap_add_irq_chip_fwnode );
10541046
10551047/**
1056- * devm_regmap_add_irq_chip() - Resource manager regmap_add_irq_chip()
1048+ * devm_regmap_add_irq_chip() - Resource managed regmap_add_irq_chip()
10571049 *
10581050 * @dev: The device pointer on which irq_chip belongs to.
10591051 * @map: The regmap for the device.
@@ -1082,7 +1074,7 @@ EXPORT_SYMBOL_GPL(devm_regmap_add_irq_chip);
10821074/**
10831075 * devm_regmap_del_irq_chip() - Resource managed regmap_del_irq_chip()
10841076 *
1085- * @dev: Device for which which resource was allocated.
1077+ * @dev: Device for which the resource was allocated.
10861078 * @irq: Primary IRQ for the device.
10871079 * @data: ®map_irq_chip_data allocated by regmap_add_irq_chip().
10881080 *
0 commit comments