From: Konrad Dybcio <konrad.dybcio@linaro.org>
To: Marijn Suijten <marijn.suijten@somainline.org>,
phone-devel@vger.kernel.org
Cc: ~postmarketos/upstreaming@lists.sr.ht,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@somainline.org>,
Konrad Dybcio <konrad.dybcio@somainline.org>,
Martin Botka <martin.botka@somainline.org>,
Jami Kettunen <jami.kettunen@somainline.org>,
Andy Gross <agross@kernel.org>,
Bjorn Andersson <andersson@kernel.org>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] arm64: dts: qcom: sdm845-tama: Add volume up and camera GPIO keys
Date: Thu, 22 Dec 2022 20:18:29 +0100 [thread overview]
Message-ID: <d1e1b18c-0d17-2145-0fc2-3f9be8d68fe9@linaro.org> (raw)
In-Reply-To: <20221222190656.31664-1-marijn.suijten@somainline.org>
On 22.12.2022 20:06, Marijn Suijten wrote:
> Tama has four GPIO-wired keys: two for camera focus and shutter /
> snapshot, and two more for volume up and down. As per the comment these
> used to not work because the necessary pin bias was missing, which is
> now set via pinctrl on pm8998_gpio(s).
>
> The missing bias has also been added to the existing volume down button,
> which receives a node name and label cleanup at the same time to be more
> consistent with other DTS and the newly added buttons. Its deprecated
> gpio-key,wakeup property has also been replaced with wakeup-source.
>
> Note that volume up is also available through the usual PON RESIN node,
> but unlike other platforms only triggers when the power button is held
> down at the same time making it unsuitable to serve as KEY_VOLUMEUP.
Sounds rather intriguing..
>
> Fixes: 30a7f99befc6 ("arm64: dts: qcom: Add support for SONY Xperia XZ2 / XZ2C / XZ3 (Tama platform)")
> Signed-off-by: Marijn Suijten <marijn.suijten@somainline.org>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Konrad
> .../dts/qcom/sdm845-sony-xperia-tama.dtsi | 72 +++++++++++++++++--
> 1 file changed, 68 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi b/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> index 87dd0fc36747..6390dadd5f82 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> @@ -4,6 +4,7 @@
> */
>
> #include <dt-bindings/input/input.h>
> +#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
> #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
> #include "sdm845.dtsi"
> #include "pm8005.dtsi"
> @@ -17,14 +18,43 @@ / {
> gpio-keys {
> compatible = "gpio-keys";
>
> - /* Neither Camera Focus, nor Camera Shutter seem to work... */
> + pinctrl-0 = <&focus_n &snapshot_n &vol_down_n &vol_up_n>;
> + pinctrl-names = "default";
>
> - key-vol-down {
> - label = "volume_down";
> + key-camera-focus {
> + label = "Camera Focus";
> + gpios = <&pm8998_gpio 2 GPIO_ACTIVE_LOW>;
> + linux,code = <KEY_CAMERA_FOCUS>;
> + debounce-interval = <15>;
> + linux,can-disable;
> + wakeup-source;
> + };
> +
> + key-camera-snapshot {
> + label = "Camera Snapshot";
> + gpios = <&pm8998_gpio 7 GPIO_ACTIVE_LOW>;
> + linux,code = <KEY_CAMERA>;
> + debounce-interval = <15>;
> + linux,can-disable;
> + wakeup-source;
> + };
> +
> + key-volume-down {
> + label = "Volume Down";
> gpios = <&pm8998_gpio 5 GPIO_ACTIVE_LOW>;
> linux,code = <KEY_VOLUMEDOWN>;
> debounce-interval = <15>;
> - gpio-key,wakeup;
> + linux,can-disable;
> + wakeup-source;
> + };
> +
> + key-volume-up {
> + label = "Volume Up";
> + gpios = <&pm8998_gpio 6 GPIO_ACTIVE_LOW>;
> + linux,code = <KEY_VOLUMEUP>;
> + debounce-interval = <15>;
> + linux,can-disable;
> + wakeup-source;
> };
> };
>
> @@ -358,6 +388,40 @@ &i2c14 {
> /* AMS TCS3490 RGB+IR color sensor @ 72 */
> };
>
> +&pm8998_gpio {
> + focus_n: focus-n-state {
> + pins = "gpio2";
> + function = PMIC_GPIO_FUNC_NORMAL;
> + power-source = <0>;
> + bias-pull-up;
> + input-enable;
> + };
> +
> + vol_down_n: vol-down-n-state {
> + pins = "gpio5";
> + function = PMIC_GPIO_FUNC_NORMAL;
> + power-source = <0>;
> + bias-pull-up;
> + input-enable;
> + };
> +
> + vol_up_n: vol-up-n-state {
> + pins = "gpio6";
> + function = PMIC_GPIO_FUNC_NORMAL;
> + power-source = <0>;
> + bias-pull-up;
> + input-enable;
> + };
> +
> + snapshot_n: snapshot-n-state {
> + pins = "gpio7";
> + function = PMIC_GPIO_FUNC_NORMAL;
> + power-source = <0>;
> + bias-pull-up;
> + input-enable;
> + };
> +};
> +
> &qupv3_id_0 {
> status = "okay";
> };
prev parent reply other threads:[~2022-12-22 19:18 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-22 19:06 [PATCH] arm64: dts: qcom: sdm845-tama: Add volume up and camera GPIO keys Marijn Suijten
2022-12-22 19:18 ` Konrad Dybcio [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d1e1b18c-0d17-2145-0fc2-3f9be8d68fe9@linaro.org \
--to=konrad.dybcio@linaro.org \
--cc=agross@kernel.org \
--cc=andersson@kernel.org \
--cc=angelogioacchino.delregno@somainline.org \
--cc=devicetree@vger.kernel.org \
--cc=jami.kettunen@somainline.org \
--cc=konrad.dybcio@somainline.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marijn.suijten@somainline.org \
--cc=martin.botka@somainline.org \
--cc=phone-devel@vger.kernel.org \
--cc=robh+dt@kernel.org \
--cc=~postmarketos/upstreaming@lists.sr.ht \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).