}
max8997->irq_domain = domain;
- ret = request_threaded_irq(max8997->irq, NULL, max8997_irq_thread,
+ ret = devm_request_threaded_irq(max8997->dev, max8997->irq, NULL,
+ max8997_irq_thread,
IRQF_TRIGGER_FALLING | IRQF_ONESHOT,
"max8997-irq", max8997);
if (!max8997->ono)
return 0;
- ret = request_threaded_irq(max8997->ono, NULL, max8997_irq_thread,
+ ret = devm_request_threaded_irq(max8997->dev, max8997->ono, NULL,
+ max8997_irq_thread,
IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING |
IRQF_ONESHOT, "max8997-ono", max8997);
return 0;
}
-
-void max8997_irq_exit(struct max8997_dev *max8997)
-{
- if (max8997->ono)
- free_irq(max8997->ono, max8997);
-
- if (max8997->irq)
- free_irq(max8997->irq, max8997);
-}
};
extern int max8997_irq_init(struct max8997_dev *max8997);
-extern void max8997_irq_exit(struct max8997_dev *max8997);
extern int max8997_irq_resume(struct max8997_dev *max8997);
extern int max8997_read_reg(struct i2c_client *i2c, u8 reg, u8 *dest);