Input: sun4i-lradc-keys - add support for R329 and D1
authorSamuel Holland <samuel@sholland.org>
Mon, 25 Apr 2022 03:42:09 +0000 (20:42 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 5 May 2022 17:23:49 +0000 (10:23 -0700)
This LRADC variant uses the same 3/4*AVCC reference voltage as the A83T
variant. The R329 and D1 LRADCs appear to be identical, so D1 support is
accomplished through having the R329 LRADC as a fallback compatible.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/20220414002349.24332-3-samuel@sholland.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/keyboard/sun4i-lradc-keys.c

index e525056..15c15c0 100644 (file)
@@ -80,6 +80,12 @@ static const struct lradc_variant r_lradc_variant_a83t = {
        .divisor_denominator = 4
 };
 
+static const struct lradc_variant lradc_variant_r329 = {
+       .divisor_numerator = 3,
+       .divisor_denominator = 4,
+       .has_clock_reset = true,
+};
+
 struct sun4i_lradc_keymap {
        u32 voltage;
        u32 keycode;
@@ -337,6 +343,8 @@ static const struct of_device_id sun4i_lradc_of_match[] = {
                .data = &lradc_variant_a10 },
        { .compatible = "allwinner,sun8i-a83t-r-lradc",
                .data = &r_lradc_variant_a83t },
+       { .compatible = "allwinner,sun50i-r329-lradc",
+               .data = &lradc_variant_r329 },
        { /* sentinel */ }
 };
 MODULE_DEVICE_TABLE(of, sun4i_lradc_of_match);