button: qcom-pmic: allow to specify code in devicetree
authorAlexey Minnekhanov <alexeymin@postmarketos.org>
Thu, 24 Apr 2025 01:48:11 +0000 (04:48 +0300)
committerCasey Connolly <casey.connolly@linaro.org>
Mon, 2 Jun 2025 16:20:33 +0000 (18:20 +0200)
commitc92bf21e731a20d7de6acacd6487e98c69fd2a83
tree896e98df0ec23cbbf84b9a5244b58632fe174323
parent1079d4bf2ed88e7e34a56152a63eb16fca7f7811
button: qcom-pmic: allow to specify code in devicetree

Most device vendors put "Volume Down" button onto PMIC RESIN.
But Sony is special: see
dts/upstream/src/arm64/qcom/sdm630-sony-xperia-nile.dtsi or [1].
They put "Volume Down" on PMIC GPIO 7 where others usually put
"Volume Up", and KEY_VOLUMEUP is inside &pon_resin.

Currently if you boot U-Boot on such Sony device, you end up
with 2 "Volume Down" buttons, and no "Volume Up", which makes
navigating menu problematic.

Support reading devicetree "linux,code" property and override
statically defined button code & label based on that.

[1] https://elixir.bootlin.com/linux/v6.15-rc3/source/arch/
arm64/boot/dts/qcom/sdm630-sony-xperia-nile.dtsi#L263

Signed-off-by: Alexey Minnekhanov <alexeymin@postmarketos.org>
Signed-off-by: Alexey Minnekhanov <alexeymin@minlexx.ru>
Reviewed-by: Casey Connolly <casey.connolly@linaro.org>
Link: https://lore.kernel.org/r/20250424014811.3809818-1-alexeymin@minlexx.ru
Signed-off-by: Casey Connolly <casey.connolly@linaro.org>
drivers/button/button-qcom-pmic.c