From: Sam Day <[email protected]> The qcom_pwrkey driver is currently binding to both the individual pwrkey/resin nodes, as well as the parent pon node.
In the next commit, a new glue driver will be introduced for pm8916_pon, which will continue binding these buttons, as well as additional drivers. button_qcom_pmic_bind was renamed to button_qcom_pmic_setup and exported in a shared header, which the new pm8916_pon driver will call. Signed-off-by: Sam Day <[email protected]> --- drivers/button/button-qcom-pmic.c | 6 +++--- include/button/qcom-pmic.h | 17 +++++++++++++++++ 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/drivers/button/button-qcom-pmic.c b/drivers/button/button-qcom-pmic.c index b823490d6d5..d9ac6a51df5 100644 --- a/drivers/button/button-qcom-pmic.c +++ b/drivers/button/button-qcom-pmic.c @@ -13,9 +13,9 @@ #include <dm/lists.h> #include <log.h> #include <power/pmic.h> -#include <spmi/spmi.h> #include <linux/bitops.h> #include <time.h> +#include "button/qcom-pmic.h" #define REG_TYPE 0x4 #define REG_SUBTYPE 0x5 @@ -174,7 +174,7 @@ static int qcom_pwrkey_probe(struct udevice *dev) return 0; } -static int button_qcom_pmic_bind(struct udevice *parent) +int button_qcom_pmic_setup(struct udevice *parent) { struct udevice *dev; ofnode node; @@ -227,7 +227,7 @@ U_BOOT_DRIVER(qcom_pwrkey) = { .name = "qcom_pwrkey", .id = UCLASS_BUTTON, .of_match = qcom_pwrkey_ids, - .bind = button_qcom_pmic_bind, + .bind = button_qcom_pmic_setup, .probe = qcom_pwrkey_probe, .ops = &button_qcom_pmic_ops, .priv_auto = sizeof(struct qcom_pmic_btn_priv), diff --git a/include/button/qcom-pmic.h b/include/button/qcom-pmic.h new file mode 100644 index 00000000000..d321bbab460 --- /dev/null +++ b/include/button/qcom-pmic.h @@ -0,0 +1,17 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ + +#include <dm/device.h> +#include <linux/errno.h> + +#if CONFIG_IS_ENABLED(BUTTON_QCOM_PMIC) +/** + * Binds the qcom_pwrkey driver to compatible pwrkey/resin child nodes + * belonging to @parent + */ +int button_qcom_pmic_setup(struct udevice *parent); +#else +static int button_qcom_pmic_setup(struct udevice *parent) +{ + return -ENOSYS; +} +#endif -- 2.54.0

