From: Hui Liu <[email protected]>
Add configurations to enable pwrkey, volume-up and volume-down function.
Signed-off-by: Hui Liu <[email protected]>
---
Changes in v2:
- Update the commit description.
- Link to v1: https://lore.kernel.org/r/[email protected]
---
arch/arm64/boot/dts/qcom/qcm6490-idp.dts | 43 ++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/qcm6490-idp.dts b/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
index acf145d1d97c..4199ebf667af 100644
--- a/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
+++ b/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
@@ -9,6 +9,7 @@
#define PM7250B_SID 8
#define PM7250B_SID1 9
+#include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/leds/common.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include "sc7280.dtsi"
@@ -39,6 +40,24 @@ chosen {
stdout-path = "serial0:115200n8";
};
+ gpio-keys {
+ compatible = "gpio-keys";
+ label = "gpio-keys";
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&key_vol_up_default>;
+
+ key-volume-up {
+ label = "volume_up";
+ gpios = <&pm7325_gpios 6 GPIO_ACTIVE_LOW>;
+ linux,input-type = <1>;
+ linux,code = <KEY_VOLUMEUP>;
+ wakeup-source;
+ debounce-interval = <15>;
+ linux,can-disable;
+ };
+ };
+
reserved-memory {
xbl_mem: xbl@80700000 {
reg = <0x0 0x80700000 0x0 0x100000>;
@@ -421,6 +440,17 @@ vreg_bob_3p296: bob {
};
};
+&pm7325_gpios {
+ key_vol_up_default: key-vol-up-state {
+ pins = "gpio6";
+ function = "normal";
+ input-enable;
+ bias-pull-up;
+ power-source = <0>;
+ qcom,drive-strength = <3>;
+ };
+};
+
&pm8350c_pwm {
status = "okay";
@@ -448,6 +478,19 @@ led@3 {
};
};
+&pmk8350_pon {
+ status = "okay";
+};
+
+&pon_pwrkey {
+ status = "okay";
+};
+
+&pon_resin {
+ linux,code = <KEY_VOLUMEDOWN>;
+ status = "okay";
+};
+
&qupv3_id_0 {
status = "okay";
};
---
base-commit: 23e11d0318521e8693459b0e4d23aec614b3b68b
change-id: 20240206-gpio-keys-138bbd850298
Best regards,
--
Hui Liu <[email protected]>
On Wed, 28 Feb 2024 at 11:57, Hui Liu via B4 Relay
<[email protected]> wrote:
>
> From: Hui Liu <[email protected]>
>
> Add configurations to enable pwrkey, volume-up and volume-down function.
Please take a look at how similar patches describe the changes. E.g.
commit bb47bfbd5aa8 ("arm64: dts: qcom: sm8550-qrd: enable PMIC Volume
and Power buttons")
>
> Signed-off-by: Hui Liu <[email protected]>
> ---
> Changes in v2:
> - Update the commit description.
> - Link to v1: https://lore.kernel.org/r/[email protected]
> ---
> arch/arm64/boot/dts/qcom/qcm6490-idp.dts | 43 ++++++++++++++++++++++++++++++++
> 1 file changed, 43 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/qcm6490-idp.dts b/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
> index acf145d1d97c..4199ebf667af 100644
> --- a/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
> +++ b/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
> @@ -9,6 +9,7 @@
> #define PM7250B_SID 8
> #define PM7250B_SID1 9
>
> +#include <dt-bindings/input/linux-event-codes.h>
> #include <dt-bindings/leds/common.h>
> #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
> #include "sc7280.dtsi"
> @@ -39,6 +40,24 @@ chosen {
> stdout-path = "serial0:115200n8";
> };
>
> + gpio-keys {
> + compatible = "gpio-keys";
> + label = "gpio-keys";
> +
> + pinctrl-names = "default";
> + pinctrl-0 = <&key_vol_up_default>;
> +
> + key-volume-up {
> + label = "volume_up";
> + gpios = <&pm7325_gpios 6 GPIO_ACTIVE_LOW>;
> + linux,input-type = <1>;
> + linux,code = <KEY_VOLUMEUP>;
> + wakeup-source;
> + debounce-interval = <15>;
> + linux,can-disable;
> + };
> + };
> +
> reserved-memory {
> xbl_mem: xbl@80700000 {
> reg = <0x0 0x80700000 0x0 0x100000>;
> @@ -421,6 +440,17 @@ vreg_bob_3p296: bob {
> };
> };
>
> +&pm7325_gpios {
> + key_vol_up_default: key-vol-up-state {
> + pins = "gpio6";
> + function = "normal";
> + input-enable;
> + bias-pull-up;
> + power-source = <0>;
> + qcom,drive-strength = <3>;
Why is this property required? Anyway, it should use the defined name
rather than just numeric value.
> + };
> +};
> +
> &pm8350c_pwm {
> status = "okay";
>
> @@ -448,6 +478,19 @@ led@3 {
> };
> };
>
> +&pmk8350_pon {
> + status = "okay";
> +};
> +
> +&pon_pwrkey {
> + status = "okay";
> +};
> +
> +&pon_resin {
> + linux,code = <KEY_VOLUMEDOWN>;
> + status = "okay";
> +};
> +
> &qupv3_id_0 {
> status = "okay";
> };
>
> ---
> base-commit: 23e11d0318521e8693459b0e4d23aec614b3b68b
> change-id: 20240206-gpio-keys-138bbd850298
>
> Best regards,
> --
> Hui Liu <[email protected]>
>
>
--
With best wishes
Dmitry
On 2/29/2024 9:21 AM, Dmitry Baryshkov wrote:
> On Wed, 28 Feb 2024 at 11:57, Hui Liu via B4 Relay
> <[email protected]> wrote:
>>
>> From: Hui Liu <[email protected]>
>>
>> Add configurations to enable pwrkey, volume-up and volume-down function.
>
> Please take a look at how similar patches describe the changes. E.g.
> commit bb47bfbd5aa8 ("arm64: dts: qcom: sm8550-qrd: enable PMIC Volume
> and Power buttons")
Sure, I will refer to this description to update it.
>
>
>
>>
>> Signed-off-by: Hui Liu <[email protected]>
>> ---
>> Changes in v2:
>> - Update the commit description.
>> - Link to v1: https://lore.kernel.org/r/[email protected]
>> ---
>> arch/arm64/boot/dts/qcom/qcm6490-idp.dts | 43 ++++++++++++++++++++++++++++++++
>> 1 file changed, 43 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/qcm6490-idp.dts b/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
>> index acf145d1d97c..4199ebf667af 100644
>> --- a/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
>> +++ b/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
>> @@ -9,6 +9,7 @@
>> #define PM7250B_SID 8
>> #define PM7250B_SID1 9
>>
>> +#include <dt-bindings/input/linux-event-codes.h>
>> #include <dt-bindings/leds/common.h>
>> #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
>> #include "sc7280.dtsi"
>> @@ -39,6 +40,24 @@ chosen {
>> stdout-path = "serial0:115200n8";
>> };
>>
>> + gpio-keys {
>> + compatible = "gpio-keys";
>> + label = "gpio-keys";
>> +
>> + pinctrl-names = "default";
>> + pinctrl-0 = <&key_vol_up_default>;
>> +
>> + key-volume-up {
>> + label = "volume_up";
>> + gpios = <&pm7325_gpios 6 GPIO_ACTIVE_LOW>;
>> + linux,input-type = <1>;
>> + linux,code = <KEY_VOLUMEUP>;
>> + wakeup-source;
>> + debounce-interval = <15>;
>> + linux,can-disable;
>> + };
>> + };
>> +
>> reserved-memory {
>> xbl_mem: xbl@80700000 {
>> reg = <0x0 0x80700000 0x0 0x100000>;
>> @@ -421,6 +440,17 @@ vreg_bob_3p296: bob {
>> };
>> };
>>
>> +&pm7325_gpios {
>> + key_vol_up_default: key-vol-up-state {
>> + pins = "gpio6";
>> + function = "normal";
>> + input-enable;
>> + bias-pull-up;
>> + power-source = <0>;
>> + qcom,drive-strength = <3>;
>
> Why is this property required? Anyway, it should use the defined name
> rather than just numeric value.
I will remove power-source defination, because the default value is 0.
And "qcom, driver-strength" will update to "PMIC_GPIO_STRENGTH_LOW",
it's a special value for pm7325.
>
>> + };
>> +};
>> +
>> &pm8350c_pwm {
>> status = "okay";
>>
>> @@ -448,6 +478,19 @@ led@3 {
>> };
>> };
>>
>> +&pmk8350_pon {
>> + status = "okay";
>> +};
>> +
>> +&pon_pwrkey {
>> + status = "okay";
>> +};
>> +
>> +&pon_resin {
>> + linux,code = <KEY_VOLUMEDOWN>;
>> + status = "okay";
>> +};
>> +
>> &qupv3_id_0 {
>> status = "okay";
>> };
>>
>> ---
>> base-commit: 23e11d0318521e8693459b0e4d23aec614b3b68b
>> change-id: 20240206-gpio-keys-138bbd850298
>>
>> Best regards,
>> --
>> Hui Liu <[email protected]>
>>
>>
>
>