lt3651_charger->charger = devm_power_supply_register(&pdev->dev,
charger_desc, &psy_cfg); if (IS_ERR(lt3651_charger->charger)) {
ret = PTR_ERR(lt3651_charger->charger);
dev_err(&pdev->dev, "Failed to register power supply: %d\n",
ret); return ret;
}
/* * Acquire IRQs for the GPIO pins if possible. If the system does not * support IRQs on these pins, userspace will have to poll the sysfs * files manually.
*/ if (lt3651_charger->acpr_gpio) {
ret = gpiod_to_irq(lt3651_charger->acpr_gpio); if (ret >= 0)
ret = devm_request_any_context_irq(&pdev->dev, ret,
lt3651_charger_irq,
IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
dev_name(&pdev->dev), lt3651_charger->charger); if (ret < 0)
dev_warn(&pdev->dev, "Failed to request acpr irq\n");
} if (lt3651_charger->fault_gpio) {
ret = gpiod_to_irq(lt3651_charger->fault_gpio); if (ret >= 0)
ret = devm_request_any_context_irq(&pdev->dev, ret,
lt3651_charger_irq,
IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
dev_name(&pdev->dev), lt3651_charger->charger); if (ret < 0)
dev_warn(&pdev->dev, "Failed to request fault irq\n");
} if (lt3651_charger->chrg_gpio) {
ret = gpiod_to_irq(lt3651_charger->chrg_gpio); if (ret >= 0)
ret = devm_request_any_context_irq(&pdev->dev, ret,
lt3651_charger_irq,
IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
dev_name(&pdev->dev), lt3651_charger->charger); if (ret < 0)
dev_warn(&pdev->dev, "Failed to request chrg irq\n");
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.