[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230227221426.GA1048218-robh@kernel.org>
Date: Mon, 27 Feb 2023 16:14:26 -0600
From: Rob Herring <robh@...nel.org>
To: Sasha Finkelstein <fnkl.kernel@...il.com>
Cc: Hector Martin <marcan@...can.st>, Sven Peter <sven@...npeter.dev>,
Alyssa Rosenzweig <alyssa@...enzweig.io>,
Dmitry Torokhov <dmitry.torokhov@...il.com>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
- <asahi@...ts.linux.dev>, Henrik Rydberg <rydberg@...math.org>,
linux-arm-kernel@...ts.infradead.org, linux-input@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH RFC 1/4] dt-bindings: input: touchscreen: Add Z2
controller bindings.
On Mon, Feb 27, 2023 at 09:06:28PM +0100, Sasha Finkelstein wrote:
> On Mon, 27 Feb 2023 at 20:51, Rob Herring <robh@...nel.org> wrote:
> >
> > > +properties:
> > > + compatible:
> > > + const: apple,z2-touchscreen
> >
> > Is 'z2' anything other than a touchscreen? If not, '-touchscreen' is
> > redundant. If so, then what else is there? You should be describing
> > physical devices, not just a protocol for touchscreen.
> >
>
> This is a class of touchscreen controllers that talk the z2 protocol
> over spi.
Yes, you already said that much. So nothing else for this piece of h/w?
Then 'apple,z2' is sufficient. Well maybe. You are assuming all h/w in
the world speaking 'z2' is the same (to software). Usually that's not a
safe assumption, but maybe Apple is better at not changing the h/w...
Normally, the 'protocol' to talk to a device is only part of it. There's
other pieces like how to turn the device on and off which need h/w
specific knowledge. If you need any of that, then you need specific
compatibles. Adding properties for each variation doesn't end up well.
>
> > > + touchscreen-size-y = <640>;
> > > + apple,z2-device-name = "MacBookPro17,1 Touch Bar";
> >
> > Why do we need this string? If you want a human consumed label for
> > some identification, we have a property for that purpose. It's called
> > 'label'. But when there is only 1 instance, I don't really see the
> > point.
>
> I want a libinput-consumed label to distinguish between devices
> using this protocol.
I know little about libinput, but how would it know about
'apple,z2-device-name'?
> It is used both for 'normal' touchscreens, and,
> as is in this example a 'touchbar', which absolutely should not be
> treated as a normal touchscreen, and needs special handling in
> userspace.
Meaning there are both touchscreens and touchbars using this? That
sounds like s/w needs this information. From a DT perspective,
'compatible' is how DT defines exactly what the h/w is and how to use
it. That also doesn't sound like a unique issue. Doesn't the kernel
provide a standard way to tell userspace what's a touchscreen vs.
touchpad vs. ???
Rob
Powered by blists - more mailing lists