mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-28 22:54:05 +08:00
HID: cp2112: Switch to for_each_set_bit() to simplify the code
It's cleaner to use for_each_set_bit() than open coding it. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20230703185222.50554-5-andriy.shevchenko@linux.intel.com Signed-off-by: Benjamin Tissoires <bentiss@kernel.org>
This commit is contained in:
parent
3e2977c425
commit
ecb42bb803
@ -16,6 +16,7 @@
|
||||
* https://www.silabs.com/documents/public/application-notes/an495-cp2112-interface-specification.pdf
|
||||
*/
|
||||
|
||||
#include <linux/bitops.h>
|
||||
#include <linux/gpio/consumer.h>
|
||||
#include <linux/gpio/machine.h>
|
||||
#include <linux/gpio/driver.h>
|
||||
@ -1100,7 +1101,6 @@ static void cp2112_gpio_poll_callback(struct work_struct *work)
|
||||
gpio_poll_worker.work);
|
||||
struct irq_data *d;
|
||||
u8 gpio_mask;
|
||||
u8 virqs = (u8)dev->irq_mask;
|
||||
u32 irq_type;
|
||||
int irq, virq, ret;
|
||||
|
||||
@ -1111,11 +1111,7 @@ static void cp2112_gpio_poll_callback(struct work_struct *work)
|
||||
goto exit;
|
||||
|
||||
gpio_mask = ret;
|
||||
|
||||
while (virqs) {
|
||||
virq = ffs(virqs) - 1;
|
||||
virqs &= ~BIT(virq);
|
||||
|
||||
for_each_set_bit(virq, &dev->irq_mask, 8) {
|
||||
if (!dev->gc.to_irq)
|
||||
break;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user