Re: [PATCH v3 00/22] Add Intel Touch Host Controller drivers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 12/17/24 4:06 PM, Xu, Even wrote:

-----Original Message-----
From: Aaron Ma <aaron.ma@xxxxxxxxxxxxx>
Sent: Tuesday, December 17, 2024 3:33 PM
To: Xu, Even <even.xu@xxxxxxxxx>; jikos@xxxxxxxxxx; bentiss@xxxxxxxxxx;
corbet@xxxxxxx; bagasdotme@xxxxxxxxx; rdunlap@xxxxxxxxxxxxx
Cc: linux-input@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linux-
doc@xxxxxxxxxxxxxxx
Subject: Re: [PATCH v3 00/22] Add Intel Touch Host Controller drivers



On 12/17/24 2:58 PM, Xu, Even wrote:
Hi, Aaron,

Thanks for testing!

It’s not a driver error, it just means driver detected a touch device error (Touch
device report an unexpected RESET Response).

I also met the same issue during test, it usually happens during enumeration
flow.

If user keep touching the screen before/during driver do device initialization, it
will happen.


During the booting, no touching.
It still repeats this error when driver is loading.

After system bootup and in idle, every single touch will report this error.

Aaron

Interesting!
That's the new issue I never met.

Is touch function abnormal (I mean the single touch)?


Touchscreen function works.
One touch will cause 10 times of this error.

Aaron

Best Regards,
Even Xu


In general, Touch devices will self recover from this error, it will not impact
normal touch function.

Thanks!

Best Regards,

Even Xu

*From:*Aaron Ma <aaron.ma@xxxxxxxxxxxxx>
*Sent:* Tuesday, December 17, 2024 2:47 PM
*To:* Xu, Even <even.xu@xxxxxxxxx>; jikos@xxxxxxxxxx;
bentiss@xxxxxxxxxx; corbet@xxxxxxx; bagasdotme@xxxxxxxxx;
rdunlap@xxxxxxxxxxxxx
*Cc:* linux-input@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
linux-doc@xxxxxxxxxxxxxxx
*Subject:* Re: [PATCH v3 00/22] Add Intel Touch Host Controller
drivers

Hi Even,

Tested on 6.13-rc3, there is an error repeated when using touchscreen:

intel_quicki2c 0000:00:10.0: *unexpected DIR happen*

The device info:
[    3.013613] input: quicki2c-hid 27C6:012D Touchscreen as
/devices/pci0000:00/0000:00:10.0/000
1:27C6:012D.0001/input/input6
[    3.013763] input: quicki2c-hid 27C6:012D as
/devices/pci0000:00/0000:00:10.0/0001:27C6:012D.
0001/input/input7
[    3.013894] hid-generic 0001:27C6:012D.0001: input,hidraw0:
<UNKNOWN> HID v8.65 Device [quick i2c-hid 27C6:012D] on


Aaron

On 12/16/24 9:41 AM, Even Xu wrote:

     Intel Touch Host Controller (THC) is a new high performance input
IP

     which can benefit HID device's data transaction, such as touch
screen,

     touch pad, stylus.

     THC IP now evoluates to V4, it can support 3 different modes:
IPTS,

     HIDSPI and HIDI2C. Here are upgrade history:

     - THC v1, for TGL/LKF, supports intel private IPTS (Intel Precise
Touch

        and Stylus) protocol ( IPTS mode)

     - THC v2, for ADL, add industrial standard HID over SPI protocol
support

        (HIDSPI mode)

     - THC v3, for MTL, enhance HID over SPI mode

     - THC v4, for LNL, add inudstrial standard HID over I2C protocol
support

        (HIDI2C mode)

     Linux Surface community (https://github.com/linux-surface
<https://github.com/linux-surface>) already

     implemented IPTS mode. These patch series provides THC HIDSPI mode
and

     THC HIDI2C mode support on Linux.

     These patch series includes:

     1. Document for THC hardware and software introduction.

     2. Intel THC Hardware layer driver which provides control
interfaces

         for protocol layer.

     3. Intel QuickSPI (R) driver working as a HIDSPI device driver
which

         implements HID over SPI protocol and flow.

     4. Intel QuickI2C (R) driver working as a HIDI2C device driver
which

         implements HID over I2C protocol and flow.

     Change logs:

     v3:

     - Change tables in documents from literal block to table format

     - Change symbol namespace to string literal according to patch:

        cdd30ebb1b9f ("module: Convert symbol namespace to string
literal")

     - Refine Kconfig description

     - Enhance Quickspi and Quicki2c driver by clearing THC hardware
interal

        state before doing initialization to avoid BIOS impacts.

     - A fix in Quicki2c driver when does set_report

     v2:

     - Fix document format issues

     - Add THC device IDs for Intel Panther Lake (PTL) platform

     Even Xu (13):

        HID: THC: Add documentation

        HID: intel-thc-hid: intel-thc: Add THC DMA interfaces

        HID: intel-thc-hid: intel-thc: Add THC I2C config interfaces

        HID: intel-thc-hid: intel-quickspi: Add THC QuickSPI driver hid
layer

        HID: intel-thc-hid: intel-quickspi: Add THC QuickSPI ACPI
interfaces

        HID: intel-thc-hid: intel-quickspi: Add HIDSPI protocol
implementation

        HID: intel-thc-hid: intel-quickspi: Add PM implementation

        HID: intel-thc-hid: intel-quicki2c: Add THC QuickI2C driver
skeleton

        HID: intel-thc-hid: intel-quicki2c: Add THC QuickI2C driver hid
layer

        HID: intel-thc-hid: intel-quicki2c: Add THC QuickI2C ACPI
interfaces

        HID: intel-thc-hid: intel-quicki2c: Add HIDI2C protocol
implementation

        HID: intel-thc-hid: intel-quicki2c: Complete THC QuickI2C
driver

        HID: intel-thc-hid: intel-quicki2c: Add PM implementation

     Xinpeng Sun (9):

        HID: intel-thc-hid: Add basic THC driver skeleton

        HID: intel-thc-hid: intel-thc: Add THC registers definition

        HID: intel-thc-hid: intel-thc: Add THC PIO operation APIs

        HID: intel-thc-hid: intel-thc: Add APIs for interrupt

        HID: intel-thc-hid: intel-thc: Add THC LTR interfaces

        HID: intel-thc-hid: intel-thc: Add THC interrupt handler

        HID: intel-thc-hid: intel-thc: Add THC SPI config interfaces

        HID: intel-thc-hid: intel-quickspi: Add THC QuickSPI driver
skeleton

        HID: intel-thc-hid: intel-quickspi: Complete THC QuickSPI
driver

       Documentation/hid/index.rst                   |    1 +

       Documentation/hid/intel-thc-hid.rst           |  568 ++++++

       MAINTAINERS                                   |    6 +

       drivers/hid/Kconfig                           |    2 +

       drivers/hid/Makefile                          |    2 +

       drivers/hid/intel-thc-hid/Kconfig             |   42 +

       drivers/hid/intel-thc-hid/Makefile            |   22 +

       .../intel-quicki2c/pci-quicki2c.c             |  966 ++++++++++

       .../intel-quicki2c/quicki2c-dev.h             |  186 ++

       .../intel-quicki2c/quicki2c-hid.c             |  166 ++

       .../intel-quicki2c/quicki2c-hid.h             |   14 +

       .../intel-quicki2c/quicki2c-protocol.c        |  224 +++

       .../intel-quicki2c/quicki2c-protocol.h        |   20 +

       .../intel-quickspi/pci-quickspi.c             |  987 +++++++++++

       .../intel-quickspi/quickspi-dev.h             |  172 ++

       .../intel-quickspi/quickspi-hid.c             |  165 ++

       .../intel-quickspi/quickspi-hid.h             |   14 +

       .../intel-quickspi/quickspi-protocol.c        |  409 +++++

       .../intel-quickspi/quickspi-protocol.h        |   25 +

       .../intel-thc-hid/intel-thc/intel-thc-dev.c   | 1578
+++++++++++++++++

       .../intel-thc-hid/intel-thc/intel-thc-dev.h   |  116 ++

       .../intel-thc-hid/intel-thc/intel-thc-dma.c   |  969 ++++++++++

       .../intel-thc-hid/intel-thc/intel-thc-dma.h   |  146 ++

       .../intel-thc-hid/intel-thc/intel-thc-hw.h    |  881 +++++++++

       include/linux/hid-over-i2c.h                  |  117 ++

       include/linux/hid-over-spi.h                  |  155 ++

       26 files changed, 7953 insertions(+)

       create mode 100644 Documentation/hid/intel-thc-hid.rst

       create mode 100644 drivers/hid/intel-thc-hid/Kconfig

       create mode 100644 drivers/hid/intel-thc-hid/Makefile

       create mode 100644
drivers/hid/intel-thc-hid/intel-quicki2c/pci-quicki2c.c

       create mode 100644
drivers/hid/intel-thc-hid/intel-quicki2c/quicki2c-dev.h

       create mode 100644
drivers/hid/intel-thc-hid/intel-quicki2c/quicki2c-hid.c

       create mode 100644
drivers/hid/intel-thc-hid/intel-quicki2c/quicki2c-hid.h

       create mode 100644
drivers/hid/intel-thc-hid/intel-quicki2c/quicki2c-protocol.c

       create mode 100644
drivers/hid/intel-thc-hid/intel-quicki2c/quicki2c-protocol.h

       create mode 100644
drivers/hid/intel-thc-hid/intel-quickspi/pci-quickspi.c

       create mode 100644
drivers/hid/intel-thc-hid/intel-quickspi/quickspi-dev.h

       create mode 100644
drivers/hid/intel-thc-hid/intel-quickspi/quickspi-hid.c

       create mode 100644
drivers/hid/intel-thc-hid/intel-quickspi/quickspi-hid.h

       create mode 100644
drivers/hid/intel-thc-hid/intel-quickspi/quickspi-protocol.c

       create mode 100644
drivers/hid/intel-thc-hid/intel-quickspi/quickspi-protocol.h

       create mode 100644
drivers/hid/intel-thc-hid/intel-thc/intel-thc-dev.c

       create mode 100644
drivers/hid/intel-thc-hid/intel-thc/intel-thc-dev.h

       create mode 100644
drivers/hid/intel-thc-hid/intel-thc/intel-thc-dma.c

       create mode 100644
drivers/hid/intel-thc-hid/intel-thc/intel-thc-dma.h

       create mode 100644
drivers/hid/intel-thc-hid/intel-thc/intel-thc-hw.h

       create mode 100644 include/linux/hid-over-i2c.h

       create mode 100644 include/linux/hid-over-spi.h







[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux