|
|
Subscribe / Log in / New account

Add spi-hid, transport for HID over SPI bus

From:  Jarrett Schultz <jaschultzms-AT-gmail.com>
To:  Dmitry Torokhov <dmitry.torokhov-AT-gmail.com>, Rob Herring <robh+dt-AT-kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt-AT-linaro.org>, Jonathan Corbet <corbet-AT-lwn.net>, Catalin Marinas <catalin.marinas-AT-arm.com>, Will Deacon <will-AT-kernel.org>, Jiri Kosina <jikos-AT-kernel.org>, Benjamin Tissoires <benjamin.tissoires-AT-redhat.com>, Bjorn Andersson <bjorn.andersson-AT-linaro.org>, Shawn Guo <shawnguo-AT-kernel.org>, Geert Uytterhoeven <geert+renesas-AT-glider.be>, Marcel Ziswiler <marcel.ziswiler-AT-toradex.com>, Biju Das <biju.das.jz-AT-bp.renesas.com>, Dmitry Baryshkov <dmitry.baryshkov-AT-linaro.org>, Vinod Koul <vkoul-AT-kernel.org>
Subject:  [PATCH v5 0/6] Add spi-hid, transport for HID over SPI bus
Date:  Thu, 07 Jul 2022 09:58:56 -0700
Message-ID:  <20220707165902.3184-1-jaschultzMS@gmail.com>
Cc:  Dmitry Antipov <dmanti-AT-microsoft.com>, linux-input-AT-vger.kernel.org, devicetree-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org, linux-doc-AT-vger.kernel.org, linux-arm-kernel-AT-lists.infradead.org, Jarrett Schultz <jaschultz-AT-microsoft.com>
Archive-link:  Article

From: Jarrett Schultz <jaschultz@microsoft.com>

Surface Duo devices use a touch digitizer that communicates to the main
SoC via SPI and presents itself as a HID device. This patch's goal is to
add the spi-hid transport driver to drivers/hid. The driver follows the
publically available HID Over SPI Protocol Specification version 1.0.

The specification is available at
https://www.microsoft.com/en-us/download/details.aspx?id=...

In the initial commits there are some HID core changes to support a SPI
device, a change to HID documentation, HID over SPI Device Tree
bindings, and finally the SPI HID transport driver.

Dmitry Antipov (5):
  HID: Add BUS_SPI support when printing out device info in
    hid_connect()
  HID: define HID_SPI_DEVICE macro in hid.h
  dt-bindings: input: Document Microsoft G6 Touch Digitizer
  Documentation: Correction in HID output_report callback description.
  HID: add spi-hid, transport driver for HID over SPI bus

Jarrett Schultz (1):
  Enable building drivers/hid/spi-hid as a module

 .../input/microsoft,g6-touch-digitizer.yaml   |  135 ++
 Documentation/hid/hid-transport.rst           |    4 +-
 arch/arm64/configs/defconfig                  |    1 +
 drivers/hid/Kconfig                           |    2 +
 drivers/hid/Makefile                          |    1 +
 drivers/hid/hid-core.c                        |    3 +
 drivers/hid/spi-hid/Kconfig                   |   25 +
 drivers/hid/spi-hid/Makefile                  |   12 +
 drivers/hid/spi-hid/spi-hid-core.c            | 1326 +++++++++++++++++
 drivers/hid/spi-hid/spi-hid-core.h            |  188 +++
 drivers/hid/spi-hid/spi-hid-of.c              |  141 ++
 drivers/hid/spi-hid/spi-hid-of.h              |   30 +
 drivers/hid/spi-hid/spi-hid_trace.h           |  194 +++
 drivers/hid/spi-hid/trace.c                   |    9 +
 include/linux/hid.h                           |    2 +
 15 files changed, 2071 insertions(+), 2 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/input/microsoft,g6-touch-digitizer.yaml
 create mode 100644 drivers/hid/spi-hid/Kconfig
 create mode 100644 drivers/hid/spi-hid/Makefile
 create mode 100644 drivers/hid/spi-hid/spi-hid-core.c
 create mode 100644 drivers/hid/spi-hid/spi-hid-core.h
 create mode 100644 drivers/hid/spi-hid/spi-hid-of.c
 create mode 100644 drivers/hid/spi-hid/spi-hid-of.h
 create mode 100644 drivers/hid/spi-hid/spi-hid_trace.h
 create mode 100644 drivers/hid/spi-hid/trace.c

-- 
2.25.1



Copyright © 2022, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds