devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Neil Armstrong <neil.armstrong@linaro.org>
To: Hans de Goede <hdegoede@redhat.com>,
	Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Bastien Nocera <hadess@hadess.net>,
	Henrik Rydberg <rydberg@bitmath.org>
Cc: linux-input@vger.kernel.org, linux-arm-msm@vger.kernel.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH RFC 0/4] input: touchscreen: add initial support for Goodix Berlin touchscreen IC
Date: Tue, 6 Jun 2023 20:12:04 +0200	[thread overview]
Message-ID: <2677ae8c-59d3-b658-dc3f-918838ac0fb6@linaro.org> (raw)
In-Reply-To: <f5f20de8-851a-fe20-4664-62b6de14ebd7@redhat.com>

Hi,

On 06/06/2023 17:31, Hans de Goede wrote:
> Hi Neil,
> 
> On 6/6/23 16:31, Neil Armstrong wrote:
>> These touchscreen ICs support SPI, I2C and I3C interface, up to
>> 10 finger touch, stylus and gestures events.
>>
>> This initial driver is derived from the Goodix goodix_ts_berlin
>> available at [1] and [2] and only supports the GT9916 IC
>> present on the Qualcomm SM8550 MTP & QRD touch panel.
>>
>> The current implementation only supports BerlinD, aka GT9916.
>>
>> Support for advanced features like:
>> - Firmware & config update
>> - Stylus events
>> - Gestures events
>> - Previous revisions support (BerlinA or BerlinB)
>> is not included in current version.
>>
>> The current support will work with currently flashed firmware
>> and config, and bail out if firmware or config aren't flashed yet.
> 
> What I'm missing here / in the commit msg of
> "input: touchscreen: add core support for Goodix Berlin Touchscreen IC"
> 
> is an explanation why this is a new driver instead of adding
> support to the existing goodix.c code.
> 
> I assume you have good reasons for this, but it would be good
> if you can write the reasons for this down.

Sure, should I write it down here and/or update the commit message in a new revision ?

Anyway, here's the reasons:
- globally the event handling "looks like" the current goodix.c, but again the offsets
are again different and none of the register address are the same, and unlike the current
support all registers are provided by the "ic_info" structure
- while with the current code it *could* be possible to merge it, with a lot of changes,
the firmware management looks really different, and it would be really hard to merge.

But I may be wrong, and may be misleaded by the goodix driver structure (even if it
went through a really heavy cleaning process).

Globally it seems they tried to match the "event handling" process of the previous
generations, but the firmware interface is completely different.

Neil

> 
> Regards,
> 
> Hans
> 
> 
> 
>>
>> [1] https://github.com/goodix/goodix_ts_berlin
>> [2] https://git.codelinaro.org/clo/la/platform/vendor/opensource/touch-drivers
>>
>> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
>> ---
>> Neil Armstrong (4):
>>        dt-bindings: input: document Goodix Berlin Touchscreen IC
>>        input: touchscreen: add core support for Goodix Berlin Touchscreen IC
>>        input: touchscreen: add I2C support for Goodix Berlin Touchscreen IC
>>        input: touchscreen: add SPI support for Goodix Berlin Touchscreen IC
>>
>>   .../bindings/input/touchscreen/goodix-berlin.yaml  |  81 ++
>>   drivers/input/touchscreen/Kconfig                  |  33 +
>>   drivers/input/touchscreen/Makefile                 |   3 +
>>   drivers/input/touchscreen/goodix_berlin.h          | 228 +++++
>>   drivers/input/touchscreen/goodix_berlin_core.c     | 935 +++++++++++++++++++++
>>   drivers/input/touchscreen/goodix_berlin_i2c.c      |  76 ++
>>   drivers/input/touchscreen/goodix_berlin_spi.c      | 183 ++++
>>   7 files changed, 1539 insertions(+)
>> ---
>> base-commit: 6db29e14f4fb7bce9eb5290288e71b05c2b0d118
>> change-id: 20230606-topic-goodix-berlin-upstream-initial-ba97e8ec8f4c
>>
>> Best regards,
> 


  reply	other threads:[~2023-06-06 18:12 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-06 14:31 [PATCH RFC 0/4] input: touchscreen: add initial support for Goodix Berlin touchscreen IC Neil Armstrong
2023-06-06 14:31 ` [PATCH RFC 1/4] dt-bindings: input: document Goodix Berlin Touchscreen IC Neil Armstrong
2023-06-07  8:35   ` Krzysztof Kozlowski
2023-06-14 22:28   ` Rob Herring
2023-06-06 14:31 ` [PATCH RFC 2/4] input: touchscreen: add core support for " Neil Armstrong
2023-06-12  4:45   ` Jeff LaBundy
2023-06-12  8:37     ` Neil Armstrong
2023-06-12 16:59       ` Jeff LaBundy
2023-06-06 14:31 ` [PATCH RFC 3/4] input: touchscreen: add I2C " Neil Armstrong
2023-06-12  3:09   ` Jeff LaBundy
2023-06-06 14:31 ` [PATCH RFC 4/4] input: touchscreen: add SPI " Neil Armstrong
2023-06-12  3:31   ` Jeff LaBundy
2023-06-12 12:01     ` Neil Armstrong
2023-06-12 17:07       ` Jeff LaBundy
2023-06-15  8:20         ` Neil Armstrong
2023-06-06 15:31 ` [PATCH RFC 0/4] input: touchscreen: add initial support for Goodix Berlin touchscreen IC Hans de Goede
2023-06-06 18:12   ` Neil Armstrong [this message]
2023-06-06 18:44     ` Dmitry Torokhov
2023-06-06 18:55       ` Neil Armstrong
2023-06-06 19:02         ` Dmitry Torokhov
2023-06-06 18:55     ` Hans de Goede
2023-06-19  7:06       ` Pavel Machek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2677ae8c-59d3-b658-dc3f-918838ac0fb6@linaro.org \
    --to=neil.armstrong@linaro.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.torokhov@gmail.com \
    --cc=hadess@hadess.net \
    --cc=hdegoede@redhat.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=rydberg@bitmath.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).