linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices
@ 2025-04-21 10:12 Chen-Yu Tsai
  2025-04-21 10:12 ` [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18 Chen-Yu Tsai
                   ` (9 more replies)
  0 siblings, 10 replies; 26+ messages in thread
From: Chen-Yu Tsai @ 2025-04-21 10:12 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov
  Cc: Chen-Yu Tsai, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

Hi everyone,

This is v2 of my "component probe for Corsola devices" series.

Changes since v1:
- Reworded commit message for Elan I2C-HID binding change
- Dropped I2C address constraint from Elan I2C-HID binding completely
- Dropped enum from new compatible string entry in Elan I2C-HID binding
- Picked up Rob's ack on two binding changes
- Rebased onto next-20250417, resolving conflicts with "spherion
  component prober" changes
- Link to v1:
  https://lore.kernel.org/all/20250312104344.3084425-1-wenst@chromium.org/

Here's a follow up series of the I2C component probers for Chromebooks.
This series enables the component prober for the Corsola series of
devices, combines the two existing Voltorb SKUs, and adds a new
device, codename Squirtle.

Patch 1 adds a new HID-over-I2C touchscreen from Elan.

Patch 2 merges the Voltorb entries in the device tree bindings into one.

Patch 3 adds a new entry for the Squirtle device to the bindings.

Patch 4 fixes up the existing device trees for the component prober to
be active.

Patch 5 merges the device trees for the Voltorb device.

Patch 6 adds a device tree file for the Squirtle device, with I2C
components ready to be probed by the prober.

Patch 7 enables the prober to probe trackpads on some devices in the
Corsola family.

Patch 8 enables the prober to probe touchscreens on Squirtle.

Please take a look.


Thanks
ChenYu


Chen-Yu Tsai (8):
  dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18
  dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries
  dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks
  arm64: dts: mediatek: mt8186-steelix: Mark second source components
    for probing
  arm64: dts: mediatek: mt8186: Merge Voltorb device trees
  arm64: dts: mediatek: mt8186: Add Squirtle Chromebooks
  platform/chrome: of_hw_prober: Support trackpad probing on Corsola
    family
  platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle

 .../devicetree/bindings/arm/mediatek.yaml     |   7 +-
 .../bindings/input/elan,ekth6915.yaml         |  12 +-
 arch/arm64/boot/dts/mediatek/Makefile         |   4 +-
 .../dts/mediatek/mt8186-corsola-squirtle.dts  | 107 ++++++++++++++++++
 .../dts/mediatek/mt8186-corsola-steelix.dtsi  |   9 +-
 .../mt8186-corsola-tentacool-sku327683.dts    |   2 +
 .../mt8186-corsola-tentacruel-sku262148.dts   |   2 +
 .../mt8186-corsola-voltorb-sku589824.dts      |  13 ---
 ...u589825.dts => mt8186-corsola-voltorb.dts} |   5 +-
 .../boot/dts/mediatek/mt8186-corsola.dtsi     |  10 +-
 .../platform/chrome/chromeos_of_hw_prober.c   |  29 +++++
 11 files changed, 167 insertions(+), 33 deletions(-)
 create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-squirtle.dts
 delete mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb-sku589824.dts
 rename arch/arm64/boot/dts/mediatek/{mt8186-corsola-voltorb-sku589825.dts => mt8186-corsola-voltorb.dts} (76%)

-- 
2.49.0.805.g082f7c87e0-goog



^ permalink raw reply	[flat|nested] 26+ messages in thread

* [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18
  2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
@ 2025-04-21 10:12 ` Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
                     ` (2 more replies)
  2025-04-21 10:12 ` [PATCH v2 2/8] dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries Chen-Yu Tsai
                   ` (8 subsequent siblings)
  9 siblings, 3 replies; 26+ messages in thread
From: Chen-Yu Tsai @ 2025-04-21 10:12 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov
  Cc: Chen-Yu Tsai, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

The Elan eKTH8D18 touchscreen controller is an I2C HID device with a
longer boot-up time. Power sequence timing wise it is compatible with
the eKTH6A12NAY, with a power-on delay of at least 5ms, 20ms
out-of-reset for I2C ack response, and 150ms out-of-reset for I2C HID
enumeration, both shorter than what the eKTH6A12NAY requires.
Enumeration and subsequent operation follows the I2C HID standard.

Add a compatible string for it with the ekth6a12nay one as a fallback.
No enum was used as it is rare to actually add new entries. These
chips are commonly completely backward compatible, and unless the
power sequencing delays change, there is no real effort being made to
keep track of new parts, which come out constantly.

Also drop the constraints on the I2C address since it's not really
part of the binding.

Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
---
Changes since v1:
- Reworded commit message
- Dropped the enum for the new compatible string entry
- Dropped constraint on I2C address completely
---
 .../devicetree/bindings/input/elan,ekth6915.yaml     | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/Documentation/devicetree/bindings/input/elan,ekth6915.yaml b/Documentation/devicetree/bindings/input/elan,ekth6915.yaml
index cb3e1801b0d3..0840e4ab28b7 100644
--- a/Documentation/devicetree/bindings/input/elan,ekth6915.yaml
+++ b/Documentation/devicetree/bindings/input/elan,ekth6915.yaml
@@ -4,14 +4,14 @@
 $id: http://devicetree.org/schemas/input/elan,ekth6915.yaml#
 $schema: http://devicetree.org/meta-schemas/core.yaml#
 
-title: Elan eKTH6915 touchscreen controller
+title: Elan I2C-HID touchscreen controllers
 
 maintainers:
   - Douglas Anderson <dianders@chromium.org>
 
 description:
-  Supports the Elan eKTH6915 touchscreen controller.
-  This touchscreen controller uses the i2c-hid protocol with a reset GPIO.
+  Supports the Elan eKTH6915 and other I2C-HID touchscreen controllers.
+  These touchscreen controller use the i2c-hid protocol with a reset GPIO.
 
 allOf:
   - $ref: /schemas/input/touchscreen/touchscreen.yaml#
@@ -23,12 +23,14 @@ properties:
           - enum:
               - elan,ekth5015m
           - const: elan,ekth6915
+      - items:
+          - const: elan,ekth8d18
+          - const: elan,ekth6a12nay
       - enum:
           - elan,ekth6915
           - elan,ekth6a12nay
 
-  reg:
-    const: 0x10
+  reg: true
 
   interrupts:
     maxItems: 1
-- 
2.49.0.805.g082f7c87e0-goog



^ permalink raw reply related	[flat|nested] 26+ messages in thread

* [PATCH v2 2/8] dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries
  2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
  2025-04-21 10:12 ` [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18 Chen-Yu Tsai
@ 2025-04-21 10:12 ` Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-28 19:38   ` Benson Leung
  2025-04-21 10:12 ` [PATCH v2 3/8] dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks Chen-Yu Tsai
                   ` (7 subsequent siblings)
  9 siblings, 2 replies; 26+ messages in thread
From: Chen-Yu Tsai @ 2025-04-21 10:12 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov
  Cc: Chen-Yu Tsai, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

There are only two different SKUs of Voltorb, and the only difference
between them is whether a touchscreen is present or not. This can be
detected by a simple I2C transfer to the address, instead of having
separate compatible strings and device trees.

Drop the SKU-specific compatible strings and just keep the generic
"google,voltorb" one.

Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
Acked-by: Rob Herring (Arm) <robh@kernel.org>
---
Changes since v1:
- Added Rob's ack
---
 Documentation/devicetree/bindings/arm/mediatek.yaml | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/arm/mediatek.yaml b/Documentation/devicetree/bindings/arm/mediatek.yaml
index 108ae5e0185d..49ddc504c160 100644
--- a/Documentation/devicetree/bindings/arm/mediatek.yaml
+++ b/Documentation/devicetree/bindings/arm/mediatek.yaml
@@ -339,9 +339,6 @@ properties:
           - const: mediatek,mt8186
       - description: Google Voltorb (Acer Chromebook 311 C723/C732T)
         items:
-          - enum:
-              - google,voltorb-sku589824
-              - google,voltorb-sku589825
           - const: google,voltorb
           - const: mediatek,mt8186
       - items:
-- 
2.49.0.805.g082f7c87e0-goog



^ permalink raw reply related	[flat|nested] 26+ messages in thread

* [PATCH v2 3/8] dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks
  2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
  2025-04-21 10:12 ` [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18 Chen-Yu Tsai
  2025-04-21 10:12 ` [PATCH v2 2/8] dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries Chen-Yu Tsai
@ 2025-04-21 10:12 ` Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-28 19:38   ` Benson Leung
  2025-04-21 10:12 ` [PATCH v2 4/8] arm64: dts: mediatek: mt8186-steelix: Mark second source components for probing Chen-Yu Tsai
                   ` (6 subsequent siblings)
  9 siblings, 2 replies; 26+ messages in thread
From: Chen-Yu Tsai @ 2025-04-21 10:12 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov
  Cc: Chen-Yu Tsai, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

Add an entry for the MT8186 based Squirtle Chromebooks, also known as the
Acer Chromebook Spin 311 (R724T). The device is a 2-in-1 convertible.

Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
Acked-by: Rob Herring (Arm) <robh@kernel.org>
---
Changes since v1:
- Added Rob's ack
---
 Documentation/devicetree/bindings/arm/mediatek.yaml | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Documentation/devicetree/bindings/arm/mediatek.yaml b/Documentation/devicetree/bindings/arm/mediatek.yaml
index 49ddc504c160..f0b4ccd81c4d 100644
--- a/Documentation/devicetree/bindings/arm/mediatek.yaml
+++ b/Documentation/devicetree/bindings/arm/mediatek.yaml
@@ -291,6 +291,10 @@ properties:
           - const: google,steelix-sku196608
           - const: google,steelix
           - const: mediatek,mt8186
+      - description: Google Squirtle (Acer Chromebook Spin 311 (R724T)
+        items:
+          - const: google,squirtle
+          - const: mediatek,mt8186
       - description: Google Starmie (ASUS Chromebook Enterprise CM30 (CM3001))
         items:
           - const: google,starmie-sku0
-- 
2.49.0.805.g082f7c87e0-goog



^ permalink raw reply related	[flat|nested] 26+ messages in thread

* [PATCH v2 4/8] arm64: dts: mediatek: mt8186-steelix: Mark second source components for probing
  2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
                   ` (2 preceding siblings ...)
  2025-04-21 10:12 ` [PATCH v2 3/8] dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks Chen-Yu Tsai
@ 2025-04-21 10:12 ` Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-21 10:12 ` [PATCH v2 5/8] arm64: dts: mediatek: mt8186: Merge Voltorb device trees Chen-Yu Tsai
                   ` (5 subsequent siblings)
  9 siblings, 1 reply; 26+ messages in thread
From: Chen-Yu Tsai @ 2025-04-21 10:12 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov
  Cc: Chen-Yu Tsai, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson,
	stable+noautosel

Steelix design has two possible trackpad component sources. Currently
they are all marked as available, along with having workarounds for
shared pinctrl muxing and GPIOs.

Instead, mark them all as "fail-needs-probe" and have the implementation
try to probe which one is present.

Also remove the shared resource workaround by moving the pinctrl entry
for the trackpad interrupt line back into the individual trackpad nodes.

Cc: <stable+noautosel@kernel.org> # Needs accompanying new driver to work
Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
---
 .../boot/dts/mediatek/mt8186-corsola-steelix.dtsi      |  7 +++++++
 .../mediatek/mt8186-corsola-tentacool-sku327683.dts    |  2 ++
 .../mediatek/mt8186-corsola-tentacruel-sku262148.dts   |  2 ++
 arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi       | 10 ++++------
 4 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi b/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi
index e74e886a00cb..822a177e7c19 100644
--- a/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi
@@ -123,8 +123,11 @@ trackpad@2c {
 		reg = <0x2c>;
 		hid-descr-addr = <0x20>;
 		interrupts-extended = <&pio 11 IRQ_TYPE_LEVEL_LOW>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&trackpad_pin>;
 		vdd-supply = <&pp3300_s3>;
 		wakeup-source;
+		status = "fail-needs-probe";
 	};
 };
 
@@ -197,3 +200,7 @@ pins-vreg-en {
 		};
 	};
 };
+
+&trackpad {
+	status = "fail-needs-probe";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-sku327683.dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-sku327683.dts
index c3ae6f9616c8..4dbf2cb73a81 100644
--- a/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-sku327683.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-sku327683.dts
@@ -17,6 +17,8 @@ trackpad@15 {
 		compatible = "hid-over-i2c";
 		reg = <0x15>;
 		interrupts-extended = <&pio 11 IRQ_TYPE_LEVEL_LOW>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&trackpad_pin>;
 		hid-descr-addr = <0x0001>;
 		vdd-supply = <&pp3300_s3>;
 		wakeup-source;
diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-sku262148.dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-sku262148.dts
index 447b57b12b41..ee5bc2cd9e9f 100644
--- a/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-sku262148.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-sku262148.dts
@@ -19,6 +19,8 @@ trackpad@15 {
 		compatible = "hid-over-i2c";
 		reg = <0x15>;
 		interrupts-extended = <&pio 11 IRQ_TYPE_LEVEL_LOW>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&trackpad_pin>;
 		hid-descr-addr = <0x0001>;
 		vdd-supply = <&pp3300_s3>;
 		wakeup-source;
diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi b/arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi
index cebb134331fb..918f17385ba5 100644
--- a/arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi
@@ -390,19 +390,17 @@ &i2c1 {
 
 &i2c2 {
 	pinctrl-names = "default";
-	/*
-	 * Trackpad pin put here to work around second source components
-	 * sharing the pinmux in steelix designs.
-	 */
-	pinctrl-0 = <&i2c2_pins>, <&trackpad_pin>;
+	pinctrl-0 = <&i2c2_pins>;
 	clock-frequency = <400000>;
 	i2c-scl-internal-delay-ns = <10000>;
 	status = "okay";
 
-	trackpad@15 {
+	trackpad: trackpad@15 {
 		compatible = "elan,ekth3000";
 		reg = <0x15>;
 		interrupts-extended = <&pio 11 IRQ_TYPE_LEVEL_LOW>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&trackpad_pin>;
 		vcc-supply = <&pp3300_s3>;
 		wakeup-source;
 	};
-- 
2.49.0.805.g082f7c87e0-goog



^ permalink raw reply related	[flat|nested] 26+ messages in thread

* [PATCH v2 5/8] arm64: dts: mediatek: mt8186: Merge Voltorb device trees
  2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
                   ` (3 preceding siblings ...)
  2025-04-21 10:12 ` [PATCH v2 4/8] arm64: dts: mediatek: mt8186-steelix: Mark second source components for probing Chen-Yu Tsai
@ 2025-04-21 10:12 ` Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-21 10:12 ` [PATCH v2 6/8] arm64: dts: mediatek: mt8186: Add Squirtle Chromebooks Chen-Yu Tsai
                   ` (4 subsequent siblings)
  9 siblings, 1 reply; 26+ messages in thread
From: Chen-Yu Tsai @ 2025-04-21 10:12 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov
  Cc: Chen-Yu Tsai, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

There are only two different SKUs of Voltorb, and the only difference
between them is whether a touchscreen is present or not. This can be
detected by a simple I2C transfer to the address, instead of having
separate device trees.

Merge the two device trees together and simplify the compatible string
list. The dtsi is still kept separate since there is an incoming device
that shares the same design, but with slightly difference components.

Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
---
 arch/arm64/boot/dts/mediatek/Makefile               |  3 +--
 .../mediatek/mt8186-corsola-voltorb-sku589824.dts   | 13 -------------
 ...orb-sku589825.dts => mt8186-corsola-voltorb.dts} |  5 ++---
 3 files changed, 3 insertions(+), 18 deletions(-)
 delete mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb-sku589824.dts
 rename arch/arm64/boot/dts/mediatek/{mt8186-corsola-voltorb-sku589825.dts => mt8186-corsola-voltorb.dts} (76%)

diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/mediatek/Makefile
index 58484e830063..ff67931e7821 100644
--- a/arch/arm64/boot/dts/mediatek/Makefile
+++ b/arch/arm64/boot/dts/mediatek/Makefile
@@ -73,8 +73,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-tentacool-sku327681.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-tentacool-sku327683.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-tentacruel-sku262144.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-tentacruel-sku262148.dtb
-dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-voltorb-sku589824.dtb
-dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-voltorb-sku589825.dtb
+dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-voltorb.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-evb.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-evb.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku0.dtb
diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb-sku589824.dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb-sku589824.dts
deleted file mode 100644
index d16834eec87a..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb-sku589824.dts
+++ /dev/null
@@ -1,13 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2022 Google LLC
- */
-
-/dts-v1/;
-#include "mt8186-corsola-voltorb.dtsi"
-
-/ {
-	model = "Google Voltorb sku589824 board";
-	compatible = "google,voltorb-sku589824", "google,voltorb",
-		     "mediatek,mt8186";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb-sku589825.dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb.dts
similarity index 76%
rename from arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb-sku589825.dts
rename to arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb.dts
index 45e57f7706cc..cc805408a8b7 100644
--- a/arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb-sku589825.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb.dts
@@ -7,9 +7,8 @@
 #include "mt8186-corsola-voltorb.dtsi"
 
 / {
-	model = "Google Voltorb sku589825 board";
-	compatible = "google,voltorb-sku589825", "google,voltorb",
-		     "mediatek,mt8186";
+	model = "Google Voltorb board";
+	compatible = "google,voltorb", "mediatek,mt8186";
 };
 
 &i2c1 {
-- 
2.49.0.805.g082f7c87e0-goog



^ permalink raw reply related	[flat|nested] 26+ messages in thread

* [PATCH v2 6/8] arm64: dts: mediatek: mt8186: Add Squirtle Chromebooks
  2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
                   ` (4 preceding siblings ...)
  2025-04-21 10:12 ` [PATCH v2 5/8] arm64: dts: mediatek: mt8186: Merge Voltorb device trees Chen-Yu Tsai
@ 2025-04-21 10:12 ` Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-21 10:12 ` [PATCH v2 7/8] platform/chrome: of_hw_prober: Support trackpad probing on Corsola family Chen-Yu Tsai
                   ` (3 subsequent siblings)
  9 siblings, 1 reply; 26+ messages in thread
From: Chen-Yu Tsai @ 2025-04-21 10:12 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov
  Cc: Chen-Yu Tsai, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

Add a device tree for the MT8186 based Squirtle Chromebooks, also known
as the Acer Chromebook Spin 311 (R724T). The device is a 2-in-1
convertible.

Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
---
 arch/arm64/boot/dts/mediatek/Makefile         |   1 +
 .../dts/mediatek/mt8186-corsola-squirtle.dts  | 107 ++++++++++++++++++
 .../dts/mediatek/mt8186-corsola-steelix.dtsi  |   2 +-
 3 files changed, 109 insertions(+), 1 deletion(-)
 create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-squirtle.dts

diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/mediatek/Makefile
index ff67931e7821..77ce29608170 100644
--- a/arch/arm64/boot/dts/mediatek/Makefile
+++ b/arch/arm64/boot/dts/mediatek/Makefile
@@ -65,6 +65,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-magneton-sku393216.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-magneton-sku393217.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-magneton-sku393218.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-rusty-sku196608.dtb
+dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-squirtle.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-starmie-sku0.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-starmie-sku1.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-steelix-sku131072.dtb
diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-squirtle.dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-squirtle.dts
new file mode 100644
index 000000000000..f721ad4e5c97
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-squirtle.dts
@@ -0,0 +1,107 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2024 Google LLC
+ */
+
+/dts-v1/;
+#include "mt8186-corsola-voltorb.dtsi"
+
+/ {
+	model = "Google squirtle board";
+	compatible = "google,squirtle", "mediatek,mt8186";
+	chassis-type = "convertible";
+};
+
+&i2c1 {
+	touchscreen@10 {
+		compatible = "elan,ekth6915";
+		reg = <0x10>;
+		interrupts-extended = <&pio 12 IRQ_TYPE_LEVEL_LOW>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&touchscreen_pins>;
+		reset-gpios = <&pio 60 GPIO_ACTIVE_LOW>;
+		vcc33-supply = <&pp3300_s3>;
+		status = "fail-needs-probe";
+	};
+
+	touchscreen@16 {
+		compatible = "elan,ekth8d18", "elan,ekth6a12nay";
+		reg = <0x16>;
+		interrupts-extended = <&pio 12 IRQ_TYPE_LEVEL_LOW>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&touchscreen_pins>;
+		reset-gpios = <&pio 60 GPIO_ACTIVE_LOW>;
+		vcc33-supply = <&pp3300_s3>;
+		status = "fail-needs-probe";
+	};
+};
+
+&i2c2 {
+	trackpad@68 {
+		compatible = "hid-over-i2c";
+		reg = <0x68>;
+		hid-descr-addr = <0x20>;
+		interrupts-extended = <&pio 11 IRQ_TYPE_LEVEL_LOW>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&trackpad_pin>;
+		vdd-supply = <&pp3300_s3>;
+		wakeup-source;
+		status = "fail-needs-probe";
+	};
+};
+
+&i2c5 {
+	clock-frequency = <400000>;
+
+	/delete-node/ codec@1a;
+
+	rt5650: codec@1a {
+		compatible = "realtek,rt5650";
+		reg = <0x1a>;
+		interrupts-extended = <&pio 17 IRQ_TYPE_EDGE_BOTH>;
+		avdd-supply = <&mt6366_vio18_reg>;
+		cpvdd-supply = <&mt6366_vio18_reg>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&speaker_codec_pins_default>;
+		cbj-sleeve-gpios = <&pio 150 GPIO_ACTIVE_HIGH>;
+		#sound-dai-cells = <0>;
+		realtek,dmic1-data-pin = <2>;
+		realtek,jd-mode = <2>;
+	};
+};
+
+&sound {
+	compatible = "mediatek,mt8186-mt6366-rt5650-sound";
+	model = "mt8186_rt5650";
+
+	audio-routing =
+		"Headphone", "HPOL",
+		"Headphone", "HPOR",
+		"HDMI1", "TX";
+
+	hs-playback-dai-link {
+		codec {
+			sound-dai = <&rt5650>;
+		};
+	};
+
+	hs-capture-dai-link {
+		codec {
+			sound-dai = <&rt5650>;
+		};
+	};
+
+	spk-hdmi-playback-dai-link {
+		codec {
+			sound-dai = <&it6505dptx>;
+		};
+	};
+};
+
+&speaker_codec {
+	status = "disabled";
+};
+
+&trackpad_steelix {
+	status = "disabled";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi b/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi
index 822a177e7c19..8a196dc9a96b 100644
--- a/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi
@@ -118,7 +118,7 @@ &i2c2 {
 	i2c-scl-internal-delay-ns = <22000>;
 
 	/* second source component */
-	trackpad@2c {
+	trackpad_steelix: trackpad@2c {
 		compatible = "hid-over-i2c";
 		reg = <0x2c>;
 		hid-descr-addr = <0x20>;
-- 
2.49.0.805.g082f7c87e0-goog



^ permalink raw reply related	[flat|nested] 26+ messages in thread

* [PATCH v2 7/8] platform/chrome: of_hw_prober: Support trackpad probing on Corsola family
  2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
                   ` (5 preceding siblings ...)
  2025-04-21 10:12 ` [PATCH v2 6/8] arm64: dts: mediatek: mt8186: Add Squirtle Chromebooks Chen-Yu Tsai
@ 2025-04-21 10:12 ` Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-28 19:45   ` Benson Leung
  2025-04-21 10:12 ` [PATCH v2 8/8] platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle Chen-Yu Tsai
                   ` (2 subsequent siblings)
  9 siblings, 2 replies; 26+ messages in thread
From: Chen-Yu Tsai @ 2025-04-21 10:12 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov
  Cc: Chen-Yu Tsai, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

Various MT8186 Corsola Chromebooks (squirtle, steelix and voltorb
families) have second source trackpads that need to be probed.
The power supply for these are always on and their reset/enable
lines are not exposed.

Add them to the probing list.

Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
---
Changes since v1:
- Rebased and resolved conflicts with "spherion" trackpad prober
---
 drivers/platform/chrome/chromeos_of_hw_prober.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/platform/chrome/chromeos_of_hw_prober.c b/drivers/platform/chrome/chromeos_of_hw_prober.c
index 019578bc7ad0..10dbaede0541 100644
--- a/drivers/platform/chrome/chromeos_of_hw_prober.c
+++ b/drivers/platform/chrome/chromeos_of_hw_prober.c
@@ -57,6 +57,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(trackpad);
 
@@ -88,6 +89,18 @@ static const struct hw_prober_entry hw_prober_platforms[] = {
 		.compatible = "google,spherion",
 		.prober = chromeos_i2c_component_prober,
 		.data = &chromeos_i2c_probe_hana_trackpad,
+	}, {
+		.compatible = "google,squirtle",
+		.prober = chromeos_i2c_component_prober,
+		.data = &chromeos_i2c_probe_dumb_trackpad,
+	}, {
+		.compatible = "google,steelix",
+		.prober = chromeos_i2c_component_prober,
+		.data = &chromeos_i2c_probe_dumb_trackpad,
+	}, {
+		.compatible = "google,voltorb",
+		.prober = chromeos_i2c_component_prober,
+		.data = &chromeos_i2c_probe_dumb_trackpad,
 	},
 };
 
-- 
2.49.0.805.g082f7c87e0-goog



^ permalink raw reply related	[flat|nested] 26+ messages in thread

* [PATCH v2 8/8] platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle
  2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
                   ` (6 preceding siblings ...)
  2025-04-21 10:12 ` [PATCH v2 7/8] platform/chrome: of_hw_prober: Support trackpad probing on Corsola family Chen-Yu Tsai
@ 2025-04-21 10:12 ` Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-28 19:45   ` Benson Leung
  2025-04-21 15:07 ` [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Rob Herring (Arm)
  2025-04-25  2:20 ` (subset) " Tzung-Bi Shih
  9 siblings, 2 replies; 26+ messages in thread
From: Chen-Yu Tsai @ 2025-04-21 10:12 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov
  Cc: Chen-Yu Tsai, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

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>
---
 drivers/platform/chrome/chromeos_of_hw_prober.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/drivers/platform/chrome/chromeos_of_hw_prober.c b/drivers/platform/chrome/chromeos_of_hw_prober.c
index 10dbaede0541..f3cd612e5584 100644
--- a/drivers/platform/chrome/chromeos_of_hw_prober.c
+++ b/drivers/platform/chrome/chromeos_of_hw_prober.c
@@ -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,
-- 
2.49.0.805.g082f7c87e0-goog



^ permalink raw reply related	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices
  2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
                   ` (7 preceding siblings ...)
  2025-04-21 10:12 ` [PATCH v2 8/8] platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle Chen-Yu Tsai
@ 2025-04-21 15:07 ` Rob Herring (Arm)
  2025-04-25  2:20 ` (subset) " Tzung-Bi Shih
  9 siblings, 0 replies; 26+ messages in thread
From: Rob Herring (Arm) @ 2025-04-21 15:07 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Krzysztof Kozlowski, linux-arm-kernel, Douglas Anderson,
	AngeloGioacchino Del Regno, Dmitry Torokhov, linux-input,
	Conor Dooley, linux-kernel, Matthias Brugger, Benson Leung,
	devicetree, linux-mediatek, Tzung-Bi Shih, chrome-platform


On Mon, 21 Apr 2025 18:12:38 +0800, Chen-Yu Tsai wrote:
> Hi everyone,
> 
> This is v2 of my "component probe for Corsola devices" series.
> 
> Changes since v1:
> - Reworded commit message for Elan I2C-HID binding change
> - Dropped I2C address constraint from Elan I2C-HID binding completely
> - Dropped enum from new compatible string entry in Elan I2C-HID binding
> - Picked up Rob's ack on two binding changes
> - Rebased onto next-20250417, resolving conflicts with "spherion
>   component prober" changes
> - Link to v1:
>   https://lore.kernel.org/all/20250312104344.3084425-1-wenst@chromium.org/
> 
> Here's a follow up series of the I2C component probers for Chromebooks.
> This series enables the component prober for the Corsola series of
> devices, combines the two existing Voltorb SKUs, and adds a new
> device, codename Squirtle.
> 
> Patch 1 adds a new HID-over-I2C touchscreen from Elan.
> 
> Patch 2 merges the Voltorb entries in the device tree bindings into one.
> 
> Patch 3 adds a new entry for the Squirtle device to the bindings.
> 
> Patch 4 fixes up the existing device trees for the component prober to
> be active.
> 
> Patch 5 merges the device trees for the Voltorb device.
> 
> Patch 6 adds a device tree file for the Squirtle device, with I2C
> components ready to be probed by the prober.
> 
> Patch 7 enables the prober to probe trackpads on some devices in the
> Corsola family.
> 
> Patch 8 enables the prober to probe touchscreens on Squirtle.
> 
> Please take a look.
> 
> 
> Thanks
> ChenYu
> 
> 
> Chen-Yu Tsai (8):
>   dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18
>   dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries
>   dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks
>   arm64: dts: mediatek: mt8186-steelix: Mark second source components
>     for probing
>   arm64: dts: mediatek: mt8186: Merge Voltorb device trees
>   arm64: dts: mediatek: mt8186: Add Squirtle Chromebooks
>   platform/chrome: of_hw_prober: Support trackpad probing on Corsola
>     family
>   platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle
> 
>  .../devicetree/bindings/arm/mediatek.yaml     |   7 +-
>  .../bindings/input/elan,ekth6915.yaml         |  12 +-
>  arch/arm64/boot/dts/mediatek/Makefile         |   4 +-
>  .../dts/mediatek/mt8186-corsola-squirtle.dts  | 107 ++++++++++++++++++
>  .../dts/mediatek/mt8186-corsola-steelix.dtsi  |   9 +-
>  .../mt8186-corsola-tentacool-sku327683.dts    |   2 +
>  .../mt8186-corsola-tentacruel-sku262148.dts   |   2 +
>  .../mt8186-corsola-voltorb-sku589824.dts      |  13 ---
>  ...u589825.dts => mt8186-corsola-voltorb.dts} |   5 +-
>  .../boot/dts/mediatek/mt8186-corsola.dtsi     |  10 +-
>  .../platform/chrome/chromeos_of_hw_prober.c   |  29 +++++
>  11 files changed, 167 insertions(+), 33 deletions(-)
>  create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-squirtle.dts
>  delete mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb-sku589824.dts
>  rename arch/arm64/boot/dts/mediatek/{mt8186-corsola-voltorb-sku589825.dts => mt8186-corsola-voltorb.dts} (76%)
> 
> --
> 2.49.0.805.g082f7c87e0-goog
> 
> 
> 


My bot found new DTB warnings on the .dts files added or changed in this
series.

Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
are fixed by another series. Ultimately, it is up to the platform
maintainer whether these warnings are acceptable or not. No need to reply
unless the platform maintainer has comments.

If you already ran DT checks and didn't see these error(s), then
make sure dt-schema is up to date:

  pip3 install dtschema --upgrade


This patch series was applied (using b4) to base:
 Base: attempting to guess base-commit...
 Base: tags/next-20250417 (exact match)

If this is not the correct base, please add 'base-commit' tag
(or use b4 which does this automatically)

New warnings running 'make CHECK_DTBS=y for arch/arm64/boot/dts/mediatek/' for 20250421101248.426929-1-wenst@chromium.org:

arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb.dtb: spmi@10015000 (mediatek,mt8186-spmi): Unevaluated properties are not allowed ('interrupts' was unexpected)
	from schema $id: http://devicetree.org/schemas/spmi/mtk,spmi-mtk-pmif.yaml#
arch/arm64/boot/dts/mediatek/mt8186-corsola-voltorb.dtb: sound (mediatek,mt8186-mt6366-rt5682s-max98360-sound): 'model' is a required property
	from schema $id: http://devicetree.org/schemas/sound/mt8186-mt6366-rt1019-rt5682s.yaml#
arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix-sku131072.dtb: sound (mediatek,mt8186-mt6366-rt1019-rt5682s-sound): 'model' is a required property
	from schema $id: http://devicetree.org/schemas/sound/mt8186-mt6366-rt1019-rt5682s.yaml#
arch/arm64/boot/dts/mediatek/mt8186-corsola-squirtle.dtb: spmi@10015000 (mediatek,mt8186-spmi): Unevaluated properties are not allowed ('interrupts' was unexpected)
	from schema $id: http://devicetree.org/schemas/spmi/mtk,spmi-mtk-pmif.yaml#







^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 7/8] platform/chrome: of_hw_prober: Support trackpad probing on Corsola family
  2025-04-21 10:12 ` [PATCH v2 7/8] platform/chrome: of_hw_prober: Support trackpad probing on Corsola family Chen-Yu Tsai
@ 2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-28 19:45   ` Benson Leung
  1 sibling, 0 replies; 26+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-22 13:57 UTC (permalink / raw)
  To: Chen-Yu Tsai, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Matthias Brugger, Benson Leung, Tzung-Bi Shih, Dmitry Torokhov
  Cc: devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	chrome-platform, linux-input, Douglas Anderson

Il 21/04/25 12:12, Chen-Yu Tsai ha scritto:
> Various MT8186 Corsola Chromebooks (squirtle, steelix and voltorb
> families) have second source trackpads that need to be probed.
> The power supply for these are always on and their reset/enable
> lines are not exposed.
> 
> Add them to the probing list.
> 
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 8/8] platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle
  2025-04-21 10:12 ` [PATCH v2 8/8] platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle Chen-Yu Tsai
@ 2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-28 19:45   ` Benson Leung
  1 sibling, 0 replies; 26+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-22 13:57 UTC (permalink / raw)
  To: Chen-Yu Tsai, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Matthias Brugger, Benson Leung, Tzung-Bi Shih, Dmitry Torokhov
  Cc: devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	chrome-platform, linux-input, Douglas Anderson

Il 21/04/25 12:12, Chen-Yu Tsai ha scritto:
> 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>




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 6/8] arm64: dts: mediatek: mt8186: Add Squirtle Chromebooks
  2025-04-21 10:12 ` [PATCH v2 6/8] arm64: dts: mediatek: mt8186: Add Squirtle Chromebooks Chen-Yu Tsai
@ 2025-04-22 13:57   ` AngeloGioacchino Del Regno
  0 siblings, 0 replies; 26+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-22 13:57 UTC (permalink / raw)
  To: Chen-Yu Tsai, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Matthias Brugger, Benson Leung, Tzung-Bi Shih, Dmitry Torokhov
  Cc: devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	chrome-platform, linux-input, Douglas Anderson

Il 21/04/25 12:12, Chen-Yu Tsai ha scritto:
> Add a device tree for the MT8186 based Squirtle Chromebooks, also known
> as the Acer Chromebook Spin 311 (R724T). The device is a 2-in-1
> convertible.
> 
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>





^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 5/8] arm64: dts: mediatek: mt8186: Merge Voltorb device trees
  2025-04-21 10:12 ` [PATCH v2 5/8] arm64: dts: mediatek: mt8186: Merge Voltorb device trees Chen-Yu Tsai
@ 2025-04-22 13:57   ` AngeloGioacchino Del Regno
  0 siblings, 0 replies; 26+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-22 13:57 UTC (permalink / raw)
  To: Chen-Yu Tsai, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Matthias Brugger, Benson Leung, Tzung-Bi Shih, Dmitry Torokhov
  Cc: devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	chrome-platform, linux-input, Douglas Anderson

Il 21/04/25 12:12, Chen-Yu Tsai ha scritto:
> There are only two different SKUs of Voltorb, and the only difference
> between them is whether a touchscreen is present or not. This can be
> detected by a simple I2C transfer to the address, instead of having
> separate device trees.
> 
> Merge the two device trees together and simplify the compatible string
> list. The dtsi is still kept separate since there is an incoming device
> that shares the same design, but with slightly difference components.
> 
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 4/8] arm64: dts: mediatek: mt8186-steelix: Mark second source components for probing
  2025-04-21 10:12 ` [PATCH v2 4/8] arm64: dts: mediatek: mt8186-steelix: Mark second source components for probing Chen-Yu Tsai
@ 2025-04-22 13:57   ` AngeloGioacchino Del Regno
  0 siblings, 0 replies; 26+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-22 13:57 UTC (permalink / raw)
  To: Chen-Yu Tsai, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Matthias Brugger, Benson Leung, Tzung-Bi Shih, Dmitry Torokhov
  Cc: devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	chrome-platform, linux-input, Douglas Anderson, stable+noautosel

Il 21/04/25 12:12, Chen-Yu Tsai ha scritto:
> Steelix design has two possible trackpad component sources. Currently
> they are all marked as available, along with having workarounds for
> shared pinctrl muxing and GPIOs.
> 
> Instead, mark them all as "fail-needs-probe" and have the implementation
> try to probe which one is present.
> 
> Also remove the shared resource workaround by moving the pinctrl entry
> for the trackpad interrupt line back into the individual trackpad nodes.
> 
> Cc: <stable+noautosel@kernel.org> # Needs accompanying new driver to work
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18
  2025-04-21 10:12 ` [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18 Chen-Yu Tsai
@ 2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-23 15:45   ` Rob Herring (Arm)
  2025-04-28 19:32   ` Doug Anderson
  2 siblings, 0 replies; 26+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-22 13:57 UTC (permalink / raw)
  To: Chen-Yu Tsai, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Matthias Brugger, Benson Leung, Tzung-Bi Shih, Dmitry Torokhov
  Cc: devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	chrome-platform, linux-input, Douglas Anderson

Il 21/04/25 12:12, Chen-Yu Tsai ha scritto:
> The Elan eKTH8D18 touchscreen controller is an I2C HID device with a
> longer boot-up time. Power sequence timing wise it is compatible with
> the eKTH6A12NAY, with a power-on delay of at least 5ms, 20ms
> out-of-reset for I2C ack response, and 150ms out-of-reset for I2C HID
> enumeration, both shorter than what the eKTH6A12NAY requires.
> Enumeration and subsequent operation follows the I2C HID standard.
> 
> Add a compatible string for it with the ekth6a12nay one as a fallback.
> No enum was used as it is rare to actually add new entries. These
> chips are commonly completely backward compatible, and unless the
> power sequencing delays change, there is no real effort being made to
> keep track of new parts, which come out constantly.
> 
> Also drop the constraints on the I2C address since it's not really
> part of the binding.
> 
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 3/8] dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks
  2025-04-21 10:12 ` [PATCH v2 3/8] dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks Chen-Yu Tsai
@ 2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-28 19:38   ` Benson Leung
  1 sibling, 0 replies; 26+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-22 13:57 UTC (permalink / raw)
  To: Chen-Yu Tsai, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Matthias Brugger, Benson Leung, Tzung-Bi Shih, Dmitry Torokhov
  Cc: devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	chrome-platform, linux-input, Douglas Anderson

Il 21/04/25 12:12, Chen-Yu Tsai ha scritto:
> Add an entry for the MT8186 based Squirtle Chromebooks, also known as the
> Acer Chromebook Spin 311 (R724T). The device is a 2-in-1 convertible.
> 
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
> Acked-by: Rob Herring (Arm) <robh@kernel.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 2/8] dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries
  2025-04-21 10:12 ` [PATCH v2 2/8] dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries Chen-Yu Tsai
@ 2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-28 19:38   ` Benson Leung
  1 sibling, 0 replies; 26+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-22 13:57 UTC (permalink / raw)
  To: Chen-Yu Tsai, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Matthias Brugger, Benson Leung, Tzung-Bi Shih, Dmitry Torokhov
  Cc: devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	chrome-platform, linux-input, Douglas Anderson

Il 21/04/25 12:12, Chen-Yu Tsai ha scritto:
> There are only two different SKUs of Voltorb, and the only difference
> between them is whether a touchscreen is present or not. This can be
> detected by a simple I2C transfer to the address, instead of having
> separate compatible strings and device trees.
> 
> Drop the SKU-specific compatible strings and just keep the generic
> "google,voltorb" one.
> 
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
> Acked-by: Rob Herring (Arm) <robh@kernel.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18
  2025-04-21 10:12 ` [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18 Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
@ 2025-04-23 15:45   ` Rob Herring (Arm)
  2025-04-28 19:32   ` Doug Anderson
  2 siblings, 0 replies; 26+ messages in thread
From: Rob Herring (Arm) @ 2025-04-23 15:45 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: linux-mediatek, linux-input, Matthias Brugger, linux-arm-kernel,
	linux-kernel, Conor Dooley, devicetree, Tzung-Bi Shih,
	Dmitry Torokhov, Douglas Anderson, Benson Leung, chrome-platform,
	AngeloGioacchino Del Regno, Krzysztof Kozlowski


On Mon, 21 Apr 2025 18:12:39 +0800, Chen-Yu Tsai wrote:
> The Elan eKTH8D18 touchscreen controller is an I2C HID device with a
> longer boot-up time. Power sequence timing wise it is compatible with
> the eKTH6A12NAY, with a power-on delay of at least 5ms, 20ms
> out-of-reset for I2C ack response, and 150ms out-of-reset for I2C HID
> enumeration, both shorter than what the eKTH6A12NAY requires.
> Enumeration and subsequent operation follows the I2C HID standard.
> 
> Add a compatible string for it with the ekth6a12nay one as a fallback.
> No enum was used as it is rare to actually add new entries. These
> chips are commonly completely backward compatible, and unless the
> power sequencing delays change, there is no real effort being made to
> keep track of new parts, which come out constantly.
> 
> Also drop the constraints on the I2C address since it's not really
> part of the binding.
> 
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
> ---
> Changes since v1:
> - Reworded commit message
> - Dropped the enum for the new compatible string entry
> - Dropped constraint on I2C address completely
> ---
>  .../devicetree/bindings/input/elan,ekth6915.yaml     | 12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)
> 

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>



^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: (subset) [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices
  2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
                   ` (8 preceding siblings ...)
  2025-04-21 15:07 ` [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Rob Herring (Arm)
@ 2025-04-25  2:20 ` Tzung-Bi Shih
  9 siblings, 0 replies; 26+ messages in thread
From: Tzung-Bi Shih @ 2025-04-25  2:20 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Dmitry Torokhov,
	devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	chrome-platform, linux-input, Douglas Anderson

On Mon, Apr 21, 2025 at 06:12:38PM +0800, Chen-Yu Tsai wrote:
> This is v2 of my "component probe for Corsola devices" series.
> 
> Changes since v1:
> - Reworded commit message for Elan I2C-HID binding change
> - Dropped I2C address constraint from Elan I2C-HID binding completely
> - Dropped enum from new compatible string entry in Elan I2C-HID binding
> - Picked up Rob's ack on two binding changes
> - Rebased onto next-20250417, resolving conflicts with "spherion
>   component prober" changes
> - Link to v1:
>   https://lore.kernel.org/all/20250312104344.3084425-1-wenst@chromium.org/
> 
> [...]

Applied to

    https://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux.git for-next

[7/8] platform/chrome: of_hw_prober: Support trackpad probing on Corsola family
      commit: 73d32c3e74e1bd679617b9b9c06d806dedd7c055
[8/8] platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle
      commit: fb8bfb48a4d11efb9b3e492d7c5e9ae7478786ce

Thanks!


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18
  2025-04-21 10:12 ` [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18 Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
  2025-04-23 15:45   ` Rob Herring (Arm)
@ 2025-04-28 19:32   ` Doug Anderson
  2025-06-06  7:50     ` Chen-Yu Tsai
  2 siblings, 1 reply; 26+ messages in thread
From: Doug Anderson @ 2025-04-28 19:32 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input

Hi,

On Mon, Apr 21, 2025 at 3:13 AM Chen-Yu Tsai <wenst@chromium.org> wrote:
>
> The Elan eKTH8D18 touchscreen controller is an I2C HID device with a
> longer boot-up time. Power sequence timing wise it is compatible with
> the eKTH6A12NAY, with a power-on delay of at least 5ms, 20ms
> out-of-reset for I2C ack response, and 150ms out-of-reset for I2C HID
> enumeration, both shorter than what the eKTH6A12NAY requires.
> Enumeration and subsequent operation follows the I2C HID standard.
>
> Add a compatible string for it with the ekth6a12nay one as a fallback.
> No enum was used as it is rare to actually add new entries. These
> chips are commonly completely backward compatible, and unless the
> power sequencing delays change, there is no real effort being made to
> keep track of new parts, which come out constantly.
>
> Also drop the constraints on the I2C address since it's not really
> part of the binding.
>
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
> ---
> Changes since v1:
> - Reworded commit message
> - Dropped the enum for the new compatible string entry
> - Dropped constraint on I2C address completely
> ---
>  .../devicetree/bindings/input/elan,ekth6915.yaml     | 12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)

Reviewed-by: Douglas Anderson <dianders@chromium.org>


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 2/8] dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries
  2025-04-21 10:12 ` [PATCH v2 2/8] dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
@ 2025-04-28 19:38   ` Benson Leung
  1 sibling, 0 replies; 26+ messages in thread
From: Benson Leung @ 2025-04-28 19:38 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

[-- Attachment #1: Type: text/plain, Size: 1447 bytes --]

On Mon, Apr 21, 2025 at 06:12:40PM +0800, Chen-Yu Tsai wrote:
> There are only two different SKUs of Voltorb, and the only difference
> between them is whether a touchscreen is present or not. This can be
> detected by a simple I2C transfer to the address, instead of having
> separate compatible strings and device trees.
> 
> Drop the SKU-specific compatible strings and just keep the generic
> "google,voltorb" one.
> 
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
> Acked-by: Rob Herring (Arm) <robh@kernel.org>

Reviewed-by: Benson Leung <bleung@chromium.org>

> ---
> Changes since v1:
> - Added Rob's ack
> ---
>  Documentation/devicetree/bindings/arm/mediatek.yaml | 3 ---
>  1 file changed, 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/arm/mediatek.yaml b/Documentation/devicetree/bindings/arm/mediatek.yaml
> index 108ae5e0185d..49ddc504c160 100644
> --- a/Documentation/devicetree/bindings/arm/mediatek.yaml
> +++ b/Documentation/devicetree/bindings/arm/mediatek.yaml
> @@ -339,9 +339,6 @@ properties:
>            - const: mediatek,mt8186
>        - description: Google Voltorb (Acer Chromebook 311 C723/C732T)
>          items:
> -          - enum:
> -              - google,voltorb-sku589824
> -              - google,voltorb-sku589825
>            - const: google,voltorb
>            - const: mediatek,mt8186
>        - items:
> -- 
> 2.49.0.805.g082f7c87e0-goog
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 3/8] dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks
  2025-04-21 10:12 ` [PATCH v2 3/8] dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
@ 2025-04-28 19:38   ` Benson Leung
  1 sibling, 0 replies; 26+ messages in thread
From: Benson Leung @ 2025-04-28 19:38 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

[-- Attachment #1: Type: text/plain, Size: 1339 bytes --]

On Mon, Apr 21, 2025 at 06:12:41PM +0800, Chen-Yu Tsai wrote:
> Add an entry for the MT8186 based Squirtle Chromebooks, also known as the
> Acer Chromebook Spin 311 (R724T). The device is a 2-in-1 convertible.
> 
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
> Acked-by: Rob Herring (Arm) <robh@kernel.org>

Reviewed-by: Benson Leung <bleung@chromium.org>

> ---
> Changes since v1:
> - Added Rob's ack
> ---
>  Documentation/devicetree/bindings/arm/mediatek.yaml | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/arm/mediatek.yaml b/Documentation/devicetree/bindings/arm/mediatek.yaml
> index 49ddc504c160..f0b4ccd81c4d 100644
> --- a/Documentation/devicetree/bindings/arm/mediatek.yaml
> +++ b/Documentation/devicetree/bindings/arm/mediatek.yaml
> @@ -291,6 +291,10 @@ properties:
>            - const: google,steelix-sku196608
>            - const: google,steelix
>            - const: mediatek,mt8186
> +      - description: Google Squirtle (Acer Chromebook Spin 311 (R724T)
> +        items:
> +          - const: google,squirtle
> +          - const: mediatek,mt8186
>        - description: Google Starmie (ASUS Chromebook Enterprise CM30 (CM3001))
>          items:
>            - const: google,starmie-sku0
> -- 
> 2.49.0.805.g082f7c87e0-goog
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 8/8] platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle
  2025-04-21 10:12 ` [PATCH v2 8/8] platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
@ 2025-04-28 19:45   ` Benson Leung
  1 sibling, 0 replies; 26+ messages in thread
From: Benson Leung @ 2025-04-28 19:45 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

[-- Attachment #1: Type: text/plain, Size: 2270 bytes --]

On Mon, Apr 21, 2025 at 06:12:46PM +0800, Chen-Yu Tsai wrote:
> 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: Benson Leung <bleung@chromium.org>


> ---
>  drivers/platform/chrome/chromeos_of_hw_prober.c | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/drivers/platform/chrome/chromeos_of_hw_prober.c b/drivers/platform/chrome/chromeos_of_hw_prober.c
> index 10dbaede0541..f3cd612e5584 100644
> --- a/drivers/platform/chrome/chromeos_of_hw_prober.c
> +++ b/drivers/platform/chrome/chromeos_of_hw_prober.c
> @@ -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,
> -- 
> 2.49.0.805.g082f7c87e0-goog
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 7/8] platform/chrome: of_hw_prober: Support trackpad probing on Corsola family
  2025-04-21 10:12 ` [PATCH v2 7/8] platform/chrome: of_hw_prober: Support trackpad probing on Corsola family Chen-Yu Tsai
  2025-04-22 13:57   ` AngeloGioacchino Del Regno
@ 2025-04-28 19:45   ` Benson Leung
  1 sibling, 0 replies; 26+ messages in thread
From: Benson Leung @ 2025-04-28 19:45 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, Benson Leung, Tzung-Bi Shih,
	Dmitry Torokhov, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input, Douglas Anderson

[-- Attachment #1: Type: text/plain, Size: 1941 bytes --]

On Mon, Apr 21, 2025 at 06:12:45PM +0800, Chen-Yu Tsai wrote:
> Various MT8186 Corsola Chromebooks (squirtle, steelix and voltorb
> families) have second source trackpads that need to be probed.
> The power supply for these are always on and their reset/enable
> lines are not exposed.
> 
> Add them to the probing list.
> 
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>

Reviewed-by: Benson Leung <bleung@chromium.org>

> ---
> Changes since v1:
> - Rebased and resolved conflicts with "spherion" trackpad prober
> ---
>  drivers/platform/chrome/chromeos_of_hw_prober.c | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
> 
> diff --git a/drivers/platform/chrome/chromeos_of_hw_prober.c b/drivers/platform/chrome/chromeos_of_hw_prober.c
> index 019578bc7ad0..10dbaede0541 100644
> --- a/drivers/platform/chrome/chromeos_of_hw_prober.c
> +++ b/drivers/platform/chrome/chromeos_of_hw_prober.c
> @@ -57,6 +57,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(trackpad);
>  
> @@ -88,6 +89,18 @@ static const struct hw_prober_entry hw_prober_platforms[] = {
>  		.compatible = "google,spherion",
>  		.prober = chromeos_i2c_component_prober,
>  		.data = &chromeos_i2c_probe_hana_trackpad,
> +	}, {
> +		.compatible = "google,squirtle",
> +		.prober = chromeos_i2c_component_prober,
> +		.data = &chromeos_i2c_probe_dumb_trackpad,
> +	}, {
> +		.compatible = "google,steelix",
> +		.prober = chromeos_i2c_component_prober,
> +		.data = &chromeos_i2c_probe_dumb_trackpad,
> +	}, {
> +		.compatible = "google,voltorb",
> +		.prober = chromeos_i2c_component_prober,
> +		.data = &chromeos_i2c_probe_dumb_trackpad,
>  	},
>  };
>  
> -- 
> 2.49.0.805.g082f7c87e0-goog
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18
  2025-04-28 19:32   ` Doug Anderson
@ 2025-06-06  7:50     ` Chen-Yu Tsai
  0 siblings, 0 replies; 26+ messages in thread
From: Chen-Yu Tsai @ 2025-06-06  7:50 UTC (permalink / raw)
  To: Dmitry Torokhov
  Cc: Rob Herring, Doug Anderson, Krzysztof Kozlowski, Conor Dooley,
	Matthias Brugger, AngeloGioacchino Del Regno, Benson Leung,
	Tzung-Bi Shih, devicetree, linux-kernel, linux-arm-kernel,
	linux-mediatek, chrome-platform, linux-input

Hi Dmitry,

On Tue, Apr 29, 2025 at 3:34 AM Doug Anderson <dianders@chromium.org> wrote:
>
> Hi,
>
> On Mon, Apr 21, 2025 at 3:13 AM Chen-Yu Tsai <wenst@chromium.org> wrote:
> >
> > The Elan eKTH8D18 touchscreen controller is an I2C HID device with a
> > longer boot-up time. Power sequence timing wise it is compatible with
> > the eKTH6A12NAY, with a power-on delay of at least 5ms, 20ms
> > out-of-reset for I2C ack response, and 150ms out-of-reset for I2C HID
> > enumeration, both shorter than what the eKTH6A12NAY requires.
> > Enumeration and subsequent operation follows the I2C HID standard.
> >
> > Add a compatible string for it with the ekth6a12nay one as a fallback.
> > No enum was used as it is rare to actually add new entries. These
> > chips are commonly completely backward compatible, and unless the
> > power sequencing delays change, there is no real effort being made to
> > keep track of new parts, which come out constantly.
> >
> > Also drop the constraints on the I2C address since it's not really
> > part of the binding.
> >
> > Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
> > ---
> > Changes since v1:
> > - Reworded commit message
> > - Dropped the enum for the new compatible string entry
> > - Dropped constraint on I2C address completely
> > ---
> >  .../devicetree/bindings/input/elan,ekth6915.yaml     | 12 +++++++-----
> >  1 file changed, 7 insertions(+), 5 deletions(-)
>
> Reviewed-by: Douglas Anderson <dianders@chromium.org>

Can we get this merged for v6.17? Or could you give an Ack so that
it can go through the soc tree?


Thanks
ChenYu


^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2025-06-06  7:53 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-21 10:12 [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Chen-Yu Tsai
2025-04-21 10:12 ` [PATCH v2 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18 Chen-Yu Tsai
2025-04-22 13:57   ` AngeloGioacchino Del Regno
2025-04-23 15:45   ` Rob Herring (Arm)
2025-04-28 19:32   ` Doug Anderson
2025-06-06  7:50     ` Chen-Yu Tsai
2025-04-21 10:12 ` [PATCH v2 2/8] dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries Chen-Yu Tsai
2025-04-22 13:57   ` AngeloGioacchino Del Regno
2025-04-28 19:38   ` Benson Leung
2025-04-21 10:12 ` [PATCH v2 3/8] dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks Chen-Yu Tsai
2025-04-22 13:57   ` AngeloGioacchino Del Regno
2025-04-28 19:38   ` Benson Leung
2025-04-21 10:12 ` [PATCH v2 4/8] arm64: dts: mediatek: mt8186-steelix: Mark second source components for probing Chen-Yu Tsai
2025-04-22 13:57   ` AngeloGioacchino Del Regno
2025-04-21 10:12 ` [PATCH v2 5/8] arm64: dts: mediatek: mt8186: Merge Voltorb device trees Chen-Yu Tsai
2025-04-22 13:57   ` AngeloGioacchino Del Regno
2025-04-21 10:12 ` [PATCH v2 6/8] arm64: dts: mediatek: mt8186: Add Squirtle Chromebooks Chen-Yu Tsai
2025-04-22 13:57   ` AngeloGioacchino Del Regno
2025-04-21 10:12 ` [PATCH v2 7/8] platform/chrome: of_hw_prober: Support trackpad probing on Corsola family Chen-Yu Tsai
2025-04-22 13:57   ` AngeloGioacchino Del Regno
2025-04-28 19:45   ` Benson Leung
2025-04-21 10:12 ` [PATCH v2 8/8] platform/chrome: of_hw_prober: Support touchscreen probing on Squirtle Chen-Yu Tsai
2025-04-22 13:57   ` AngeloGioacchino Del Regno
2025-04-28 19:45   ` Benson Leung
2025-04-21 15:07 ` [PATCH v2 0/8] arm64: mediatek: mt8186-corsola: Consolidate and add new devices Rob Herring (Arm)
2025-04-25  2:20 ` (subset) " Tzung-Bi Shih

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).