armbian-build/patch/kernel/archive/sunxi-6.18/patches.armbian/arm64-dts-sun50i-h616-add-lradc-keys.patch
2026-01-11 19:54:48 +01:00

53 lines
1.7 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Exodus <zjemcikolege@protonmail.com>
Date: Wed, 30 Apr 2025 23:55:25 +0200
Subject: h616: add keys
KEY1 and KEY2 VOL +/-
---
arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi | 1 +
drivers/input/keyboard/sun4i-lradc-keys.c | 8 ++++++++
2 files changed, 9 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
@@ -13,6 +13,7 @@
#include <dt-bindings/reset/sun50i-h6-r-ccu.h>
#include <dt-bindings/reset/sun8i-de2.h>
#include <dt-bindings/thermal/thermal.h>
+#include <dt-bindings/input/input.h>
/ {
interrupt-parent = <&gic>;
diff --git a/drivers/input/keyboard/sun4i-lradc-keys.c b/drivers/input/keyboard/sun4i-lradc-keys.c
index 111111111111..222222222222 100644
--- a/drivers/input/keyboard/sun4i-lradc-keys.c
+++ b/drivers/input/keyboard/sun4i-lradc-keys.c
@@ -86,6 +86,12 @@ static const struct lradc_variant lradc_variant_r329 = {
.has_clock_reset = true,
};
+static const struct lradc_variant lradc_variant_h616 = {
+ .divisor_numerator = 3,
+ .divisor_denominator = 4,
+ .has_clock_reset = true,
+};
+
struct sun4i_lradc_keymap {
u32 voltage;
u32 keycode;
@@ -341,6 +347,8 @@ static const struct of_device_id sun4i_lradc_of_match[] = {
.data = &r_lradc_variant_a83t },
{ .compatible = "allwinner,sun50i-r329-lradc",
.data = &lradc_variant_r329 },
+ { .compatible = "allwinner,sun50i-h616-lradc",
+ .data = &lradc_variant_h616 },
{ /* sentinel */ }
};
MODULE_DEVICE_TABLE(of, sun4i_lradc_of_match);
--
Armbian