]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
HID: i2c-hid: elan: Add parade-tc3408 timing
authorLangyan Ye <yelangyan@huaqin.corp-partner.google.com>
Thu, 8 Jan 2026 06:35:24 +0000 (14:35 +0800)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 26 Feb 2026 16:04:55 +0000 (08:04 -0800)
Parade-tc3408 requires reset to pull down time greater than 10ms,
so the configuration post_power_delay_ms is 10, and the chipset
initial time is required to be greater than 300ms,
so the post_gpio_reset_on_delay_ms is set to 300.

Signed-off-by: Langyan Ye <yelangyan@huaqin.corp-partner.google.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Acked-by: Jiri Kosina <jkosina@suse.com>
Link: https://patch.msgid.link/20260108063524.742464-3-yelangyan@huaqin.corp-partner.google.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/hid/i2c-hid/i2c-hid-of-elan.c

index b81fcc6ff49eeff0cfd0b19c791903ae6cdad9e0..919e32c47e12c47a483add9a6f777fc766958039 100644 (file)
@@ -195,12 +195,20 @@ static const struct elan_i2c_hid_chip_data ilitek_ili2901_chip_data = {
        .main_supply_name = "vcc33",
 };
 
+static const struct elan_i2c_hid_chip_data parade_tc3408_chip_data = {
+       .post_power_delay_ms = 10,
+       .post_gpio_reset_on_delay_ms = 300,
+       .hid_descriptor_address = 0x0001,
+       .main_supply_name = "vcc33",
+};
+
 static const struct of_device_id elan_i2c_hid_of_match[] = {
        { .compatible = "elan,ekth6915", .data = &elan_ekth6915_chip_data },
        { .compatible = "elan,ekth6a12nay", .data = &elan_ekth6a12nay_chip_data },
        { .compatible = "focaltech,ft8112", .data = &focaltech_ft8112_chip_data },
        { .compatible = "ilitek,ili9882t", .data = &ilitek_ili9882t_chip_data },
        { .compatible = "ilitek,ili2901", .data = &ilitek_ili2901_chip_data },
+       { .compatible = "parade,tc3408", .data = &parade_tc3408_chip_data },
        { }
 };
 MODULE_DEVICE_TABLE(of, elan_i2c_hid_of_match);