Commit f48a288a authored by Chris Morgan's avatar Chris Morgan Committed by Heiko Stuebner
Browse files

arm64: dts: rockchip: Add saradc node to Indiedroid Nova



Add ADC support for the Indiedroid Nova, as well as the two ADC buttons
found on the device. The buttons are documented as "boot" and
"recovery". The boot button is used by the bootloader to boot into USB
recovery mode. The recovery button use is currently unknown.

Signed-off-by: default avatarChris Morgan <macromorgan@hotmail.com>
Link: https://lore.kernel.org/r/20230918173255.1325-4-macroalpha82@gmail.com


Signed-off-by: default avatarHeiko Stuebner <heiko@sntech.de>
parent aee432b5
Loading
Loading
Loading
Loading
+34 −0
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@
/dts-v1/;

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/pinctrl/rockchip.h>
#include <dt-bindings/usb/pd.h>
#include "rk3588s.dtsi"
@@ -11,6 +12,34 @@ / {
	model = "Indiedroid Nova";
	compatible = "indiedroid,nova", "rockchip,rk3588s";

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

		button-boot {
			label = "boot";
			linux,code = <KEY_PROG1>;
			press-threshold-microvolt = <18000>;
		};
	};

	adc-keys-1 {
		compatible = "adc-keys";
		io-channel-names = "buttons";
		io-channels = <&saradc 1>;
		keyup-threshold-microvolt = <1800000>;
		poll-interval = <100>;

		button-recovery {
			label = "recovery";
			linux,code = <KEY_PROG2>;
			press-threshold-microvolt = <18000>;
		};
	};

	aliases {
		mmc0 = &sdhci;
		mmc1 = &sdmmc;
@@ -410,6 +439,11 @@ typec5v_pwren: typec5v-pwren {
	};
};

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

/* HS400 modes seemed to cause io errors. */
&sdhci {
	bus-width = <8>;