]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle
authorChen-Yu Tsai <wenst@chromium.org>
Mon, 21 Apr 2025 10:12:46 +0000 (18:12 +0800)
committerTzung-Bi Shih <tzungbi@kernel.org>
Fri, 25 Apr 2025 02:16:24 +0000 (02:16 +0000)
The MT8186 Squirtle Chromebook is built with one of two possible
touchscreens. Let the prober probe for them.

Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20250421101248.426929-9-wenst@chromium.org
Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org>
drivers/platform/chrome/chromeos_of_hw_prober.c

index 10dbaede0541bc8e0d05718f912608185c3a5cc1..f3cd612e558498c0d8ec2d15f9a436df939c84e4 100644 (file)
@@ -59,6 +59,7 @@ static int chromeos_i2c_component_prober(struct device *dev, const void *_data)
 DEFINE_CHROMEOS_I2C_PROBE_DATA_DUMB_BY_TYPE(touchscreen);
 DEFINE_CHROMEOS_I2C_PROBE_DATA_DUMB_BY_TYPE(trackpad);
 
+DEFINE_CHROMEOS_I2C_PROBE_CFG_SIMPLE_BY_TYPE(touchscreen);
 DEFINE_CHROMEOS_I2C_PROBE_CFG_SIMPLE_BY_TYPE(trackpad);
 
 static const struct chromeos_i2c_probe_data chromeos_i2c_probe_hana_trackpad = {
@@ -76,6 +77,17 @@ static const struct chromeos_i2c_probe_data chromeos_i2c_probe_hana_trackpad = {
        },
 };
 
+static const struct chromeos_i2c_probe_data chromeos_i2c_probe_squirtle_touchscreen = {
+       .cfg = &chromeos_i2c_probe_simple_touchscreen_cfg,
+       .opts = &(const struct i2c_of_probe_simple_opts) {
+               .res_node_compatible = "elan,ekth6a12nay",
+               .supply_name = "vcc33",
+               .gpio_name = "reset",
+               .post_power_on_delay_ms = 10,
+               .post_gpio_config_delay_ms = 300,
+       },
+};
+
 static const struct hw_prober_entry hw_prober_platforms[] = {
        {
                .compatible = "google,hana",
@@ -93,6 +105,10 @@ static const struct hw_prober_entry hw_prober_platforms[] = {
                .compatible = "google,squirtle",
                .prober = chromeos_i2c_component_prober,
                .data = &chromeos_i2c_probe_dumb_trackpad,
+       }, {
+               .compatible = "google,squirtle",
+               .prober = chromeos_i2c_component_prober,
+               .data = &chromeos_i2c_probe_squirtle_touchscreen,
        }, {
                .compatible = "google,steelix",
                .prober = chromeos_i2c_component_prober,