summaryrefslogtreecommitdiff
path: root/drivers/button/button-qcom-pmic.c
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2025-06-09 16:28:28 -0600
committerTom Rini <trini@konsulko.com>2025-06-09 16:28:28 -0600
commit59d00e20fced23e6463aa09db889dd548baee677 (patch)
tree2502afc87e22058b3efd0a5c3d878e62ba52e96e /drivers/button/button-qcom-pmic.c
parent865130b7308453b9436942f01cc4481124b820eb (diff)
parentd7c449c3d83a986d61e38d1762433c0607caf5c5 (diff)
Merge tag 'v2025.07-rc4' into next
Prepare v2025.07-rc4
Diffstat (limited to 'drivers/button/button-qcom-pmic.c')
-rw-r--r--drivers/button/button-qcom-pmic.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/button/button-qcom-pmic.c b/drivers/button/button-qcom-pmic.c
index e3bb9bd758a..85addfe32a2 100644
--- a/drivers/button/button-qcom-pmic.c
+++ b/drivers/button/button-qcom-pmic.c
@@ -143,6 +143,21 @@ static int qcom_pwrkey_probe(struct udevice *dev)
priv->base = base;
+ ret = dev_read_u32(dev, "linux,code", &priv->code);
+ if (ret == 0) {
+ /* convert key, if read OK */
+ switch (priv->code) {
+ case KEY_VOLUMEDOWN:
+ priv->code = KEY_DOWN;
+ uc_plat->label = "Volume Down";
+ break;
+ case KEY_VOLUMEUP:
+ priv->code = KEY_UP;
+ uc_plat->label = "Volume Up";
+ break;
+ }
+ }
+
/* Do a sanity check */
ret = pmic_reg_read(priv->pmic, priv->base + REG_TYPE);
if (ret != 0x1 && ret != 0xb) {