Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6b6a1867 authored by Neil Armstrong's avatar Neil Armstrong Committed by Kevin Hilman
Browse files

ARM64: dts: meson-gxbb-p200: add ADC laddered keys



Add the 5 buttons connected to a resistor laddered matrix and sampled
by the SAR ADC channel 0.

Only the p200 board has these buttons, the P201 doesn't.

Signed-off-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
Signed-off-by: default avatarKevin Hilman <khilman@baylibre.com>
parent bd80ef5e
Loading
Loading
Loading
Loading
+50 −0
Original line number Diff line number Diff line
@@ -45,10 +45,55 @@
/dts-v1/;

#include "meson-gxbb-p20x.dtsi"
#include <dt-bindings/input/input.h>

/ {
	compatible = "amlogic,p200", "amlogic,meson-gxbb";
	model = "Amlogic Meson GXBB P200 Development Board";

	avdd18_usb_adc: regulator-avdd18_usb_adc {
		compatible = "regulator-fixed";
		regulator-name = "AVDD18_USB_ADC";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
	};

	adc_keys {
		compatible = "adc-keys";
		io-channels = <&saradc 0>;
		io-channel-names = "buttons";
		keyup-threshold-microvolt = <1800000>;

		button-home {
			label = "Home";
			linux,code = <KEY_HOME>;
			press-threshold-microvolt = <900000>; /* 50% */
		};

		button-esc {
			label = "Esc";
			linux,code = <KEY_ESC>;
			press-threshold-microvolt = <684000>; /* 38% */
		};

		button-up {
			label = "Volume Up";
			linux,code = <KEY_VOLUMEUP>;
			press-threshold-microvolt = <468000>; /* 26% */
		};

		button-down {
			label = "Volume Down";
			linux,code = <KEY_VOLUMEDOWN>;
			press-threshold-microvolt = <252000>; /* 14% */
		};

		button-menu {
			label = "Menu";
			linux,code = <KEY_MENU>;
			press-threshold-microvolt = <0>; /* 0% */
		};
	};
};

&i2c_B {
@@ -56,3 +101,8 @@
	pinctrl-0 = <&i2c_b_pins>;
	pinctrl-names = "default";
};

&saradc {
	status = "okay";
	vref-supply = <&avdd18_usb_adc>;
};