Hi Petr, On 20/11/2024 15:53, Petr Vorel wrote: > OnePlus 6T (fajita) downstream device tree contains volume down GPIO key > and resin. I suppose it is also in OnePlus 6 (enchilada). The volume down key is already enabled under the gpio-keys node in sdm845-oneplus-common.dtsi does it not work for you for some reason? I don't believe the resin node is used on this board, it's ignosed on the schematics at any rate. Kind regards, > > Signed-off-by: Petr Vorel <pvorel@xxxxxxx> > --- > Hi > > reason for RFC: > * Unfortunately untested on the real device. > * OnePlus 6 (enchilada) is nearly identical, but I haven't compared it's > device tree. > * Other sdm845 based devices just enable resin/volume down key the same > way. But what confuses me is "gpios = <0xe7 0x05 0x01>;", does it need > to enable gpios like sm6375-sony-xperia-murray-pdx225.dts in > 795ee50e55f4 ("arm64: dts: qcom: sm6375-pdx225: Add volume down GPIO key") ? > > Below is snipped of the OnePlus 6T (fajita) downstream device tree. > > Kind regards, > Petr > > gpio_keys { > compatible = "gpio-keys"; > label = "gpio-keys"; > pinctrl-0 = <0x2f7>; > pinctrl-names = "default"; > > vol_down { > gpios = <0xe7 0x05 0x01>; > linux,can-disable; > debounce-interval = <0x0f>; > label = "volume_down"; > linux,input-type = <0x01>; > linux,code = <0x72>; > }; > > vol_up { > gpios = <0xe7 0x06 0x01>; > linux,can-disable; > debounce-interval = <0x0f>; > label = "volume_up"; > linux,input-type = <0x01>; > gpio-key,wakeup; > linux,code = <0x73>; > }; > > cam_focus { > status = "disabled"; > }; > > hallsensor_key { > gpios = <0x34 0x7c 0x01>; > debounce-interval = <0x0f>; > interrupt-parent = <0x34>; > interrupts = <0x7c 0x00>; > label = "hallsensor_key"; > linux,input-type = <0x05>; > gpio-key,wakeup; > linux,code = <0x00>; > }; > > cam_snapshot { > status = "disabled"; > }; > }; > > ... > qcom,power-on@800 { > qcom,system-reset; > compatible = "qcom,qpnp-power-on"; > qcom,pon-dbc-delay = <0x3d09>; > interrupts = <0x00 0x08 0x00 0x00 0x00 0x08 0x01 0x00 0x00 0x08 0x04 0x00 0x00 0x08 0x05 0x00>; > qcom,kpdpwr-sw-debounce; > reg = <0x800 0x100>; > interrupt-names = "kpdpwr\0resin\0resin-bark\0kpdpwr-resin-bark"; > qcom,store-hard-reset-reason; > > qcom,pon_1 { > qcom,support-reset = <0x00>; > qcom,pull-up = <0x01>; > qcom,pon-type = <0x00>; > linux,code = <0x74>; > }; > > qcom,pon_2 { > qcom,pull-up = <0x01>; > qcom,pon-type = <0x01>; > linux,code = <0x72>; > }; > > arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi b/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi > index 46e25c53829a..6cb074de7696 100644 > --- a/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi > +++ b/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi > @@ -847,6 +847,11 @@ speaker_default: speaker-default-state { > }; > }; > > +&pm8998_resin { > + linux,code = <KEY_VOLUMEDOWN>; > + status = "okay"; > +}; > + > &venus { > status = "okay"; > firmware-name = "qcom/sdm845/oneplus6/venus.mbn"; -- // Caleb (they/them)