Message ID | 20240423134611.31979-2-johan+linaro@kernel.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | HID/arm64: dts: qcom: sc8280xp-x13s: fix touchscreen power on | expand |
On 23/04/2024 15:46, Johan Hovold wrote: > The Ilitek ILI2901 touch screen controller was apparently incorrectly > added to the Elan eKTH6915 schema simply because it also has a reset > gpio and is currently managed by the Elan driver in Linux. > > The two controllers are not related even if an unfortunate wording in > the commit message adding the Ilitek compatible made it sound like they > were. > > Add a dedicated schema for the ILI2901 which does not specify the I2C > address (which is likely 0x41 rather than 0x10 as for other Ilitek touch > controllers) to avoid cluttering the Elan schema with unrelated devices > and to make it easier to find the correct schema when adding further > Ilitek controllers. > > Fixes: d74ac6f60a7e ("dt-bindings: HID: i2c-hid: elan: Introduce Ilitek ili2901") > Cc: Zhengqiao Xia <xiazhengqiao@huaqin.corp-partner.google.com> > Signed-off-by: Johan Hovold <johan+linaro@kernel.org> > --- > .../bindings/input/elan,ekth6915.yaml | 5 +- > .../bindings/input/ilitek,ili2901.yaml | 66 +++++++++++++++++++ > 2 files changed, 68 insertions(+), 3 deletions(-) > create mode 100644 Documentation/devicetree/bindings/input/ilitek,ili2901.yaml > > diff --git a/Documentation/devicetree/bindings/input/elan,ekth6915.yaml b/Documentation/devicetree/bindings/input/elan,ekth6915.yaml > index dc4ac41f2441..3e2d216c6432 100644 > --- a/Documentation/devicetree/bindings/input/elan,ekth6915.yaml > +++ b/Documentation/devicetree/bindings/input/elan,ekth6915.yaml > @@ -18,9 +18,8 @@ allOf: > > properties: > compatible: > - enum: > - - elan,ekth6915 > - - ilitek,ili2901 > + items: Drop items, that's just const. Or keep it as enum, which makes patch diff smaller here. > + - const: elan,ekth6915 With items dropped: Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/input/elan,ekth6915.yaml b/Documentation/devicetree/bindings/input/elan,ekth6915.yaml index dc4ac41f2441..3e2d216c6432 100644 --- a/Documentation/devicetree/bindings/input/elan,ekth6915.yaml +++ b/Documentation/devicetree/bindings/input/elan,ekth6915.yaml @@ -18,9 +18,8 @@ allOf: properties: compatible: - enum: - - elan,ekth6915 - - ilitek,ili2901 + items: + - const: elan,ekth6915 reg: const: 0x10 diff --git a/Documentation/devicetree/bindings/input/ilitek,ili2901.yaml b/Documentation/devicetree/bindings/input/ilitek,ili2901.yaml new file mode 100644 index 000000000000..1abeec768d79 --- /dev/null +++ b/Documentation/devicetree/bindings/input/ilitek,ili2901.yaml @@ -0,0 +1,66 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/input/ilitek,ili2901.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Ilitek ILI2901 touchscreen controller + +maintainers: + - Jiri Kosina <jkosina@suse.com> + +description: + Supports the Ilitek ILI2901 touchscreen controller. + This touchscreen controller uses the i2c-hid protocol with a reset GPIO. + +allOf: + - $ref: /schemas/input/touchscreen/touchscreen.yaml# + +properties: + compatible: + enum: + - ilitek,ili2901 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + panel: true + + reset-gpios: + maxItems: 1 + + vcc33-supply: true + + vccio-supply: true + +required: + - compatible + - reg + - interrupts + - vcc33-supply + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + #include <dt-bindings/interrupt-controller/irq.h> + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + touchscreen@41 { + compatible = "ilitek,ili2901"; + reg = <0x41>; + + interrupt-parent = <&tlmm>; + interrupts = <9 IRQ_TYPE_LEVEL_LOW>; + + reset-gpios = <&tlmm 8 GPIO_ACTIVE_LOW>; + vcc33-supply = <&pp3300_ts>; + }; + };
The Ilitek ILI2901 touch screen controller was apparently incorrectly added to the Elan eKTH6915 schema simply because it also has a reset gpio and is currently managed by the Elan driver in Linux. The two controllers are not related even if an unfortunate wording in the commit message adding the Ilitek compatible made it sound like they were. Add a dedicated schema for the ILI2901 which does not specify the I2C address (which is likely 0x41 rather than 0x10 as for other Ilitek touch controllers) to avoid cluttering the Elan schema with unrelated devices and to make it easier to find the correct schema when adding further Ilitek controllers. Fixes: d74ac6f60a7e ("dt-bindings: HID: i2c-hid: elan: Introduce Ilitek ili2901") Cc: Zhengqiao Xia <xiazhengqiao@huaqin.corp-partner.google.com> Signed-off-by: Johan Hovold <johan+linaro@kernel.org> --- .../bindings/input/elan,ekth6915.yaml | 5 +- .../bindings/input/ilitek,ili2901.yaml | 66 +++++++++++++++++++ 2 files changed, 68 insertions(+), 3 deletions(-) create mode 100644 Documentation/devicetree/bindings/input/ilitek,ili2901.yaml