From: Greg KH <gregkh@linuxfoundation.org>
To: "Metehan Günen" <metehangnen@gmail.com>
Cc: linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org,
linux-gpio@vger.kernel.org
Subject: Re: [PATCH 0/4] drivers/misc: add Goodix GXFP5130 eSPI fingerprint sensor driver
Date: Sat, 18 Jul 2026 11:05:30 +0200 [thread overview]
Message-ID: <2026071842-timing-distress-ad5a@gregkh> (raw)
In-Reply-To: <20260718081431.25456-1-metehangnen@gmail.com>
On Sat, Jul 18, 2026 at 11:14:27AM +0300, Metehan Günen wrote:
> This series adds a kernel driver for the Goodix GXFP5130 fingerprint
> sensor found in Huawei MateBook laptops (D16 2024, X Pro 2024, 14 2024).
>
> The sensor is enumerated through ACPI (HID: GXFP5130) and communicates
> with the host via an eSPI-based memory-mapped mailbox window plus three
> GPIOs. It does not use SPI or I2C bus drivers.
>
> A misc character device /dev/gxfp is exposed to userspace. The libfprint
> library (with a corresponding GXFP5130 plugin) uses this device to perform
> biometric enrollment and verification via fprintd.
Is that the "normal" user/kernel api for these types of sensors? I
thought we had a real api these days, and a vendor one was not generally
a good idea as you are just exposing raw hardware design to userspace.
> The four patches are:
> [1/4] UAPI header (include/uapi/linux/gxfp_ioctl.h)
> [2/4] Driver source tree (drivers/misc/gxfp5130/)
> [3/4] Documentation (Documentation/misc-devices/gxfp5130.rst)
> [4/4] MAINTAINERS entry
>
> Metehan Günen (4):
> include/uapi/linux: add gxfp_ioctl.h for GXFP5130 fingerprint sensor
> drivers/misc: add Goodix GXFP5130 eSPI fingerprint sensor driver
> Documentation/misc-devices: add gxfp5130.rst
> MAINTAINERS: add entry for GXFP5130 fingerprint sensor driver
>
> Documentation/misc-devices/gxfp5130.rst | 90 +++++++
> Documentation/misc-devices/index.rst | 1 +
> MAINTAINERS | 7 +
> drivers/misc/Kconfig | 2 +
> drivers/misc/Makefile | 2 +
> drivers/misc/gxfp5130/Kconfig | 18 ++
> drivers/misc/gxfp5130/Makefile | 28 ++
> drivers/misc/gxfp5130/cmd/gxfp_cmd.c | 177 ++++++++++++
> drivers/misc/gxfp5130/cmd/gxfp_cmd.h | 54 ++++
> .../misc/gxfp5130/cmd/gxfp_cmd_mcu_config.c | 28 ++
> .../misc/gxfp5130/cmd/gxfp_cmd_mcu_config.h | 12 +
> .../misc/gxfp5130/cmd/gxfp_cmd_mcu_state.c | 89 +++++++
> .../misc/gxfp5130/cmd/gxfp_cmd_mcu_state.h | 30 +++
> drivers/misc/gxfp5130/cmd/gxfp_cmd_reset.c | 185 +++++++++++++
> drivers/misc/gxfp5130/cmd/gxfp_cmd_reset.h | 27 ++
> drivers/misc/gxfp5130/cmd/gxfp_cmd_version.c | 100 +++++++
> drivers/misc/gxfp5130/cmd/gxfp_cmd_version.h | 22 ++
> drivers/misc/gxfp5130/driver/gxfp_irq.c | 57 ++++
> drivers/misc/gxfp5130/driver/gxfp_irq.h | 9 +
> drivers/misc/gxfp5130/driver/gxfp_platform.c | 251 ++++++++++++++++++
> drivers/misc/gxfp5130/driver/gxfp_platform.h | 12 +
> drivers/misc/gxfp5130/driver/gxfp_trace.c | 179 +++++++++++++
> drivers/misc/gxfp5130/driver/gxfp_trace.h | 15 ++
> drivers/misc/gxfp5130/driver/gxfp_uapi.h | 25 ++
> drivers/misc/gxfp5130/driver/gxfp_uapi_ctrl.c | 136 ++++++++++
> drivers/misc/gxfp5130/driver/gxfp_uapi_fifo.c | 245 +++++++++++++++++
> drivers/misc/gxfp5130/driver/gxfp_uapi_misc.c | 123 +++++++++
> drivers/misc/gxfp5130/gxfp_main.c | 127 +++++++++
> drivers/misc/gxfp5130/hw/gxfp_acpi.c | 130 +++++++++
> drivers/misc/gxfp5130/hw/gxfp_acpi.h | 15 ++
> drivers/misc/gxfp5130/hw/gxfp_delay.c | 15 ++
> drivers/misc/gxfp5130/hw/gxfp_delay.h | 7 +
> drivers/misc/gxfp5130/hw/gxfp_gpio.c | 64 +++++
> drivers/misc/gxfp5130/hw/gxfp_gpio.h | 17 ++
> drivers/misc/gxfp5130/hw/gxfp_mmio.c | 45 ++++
> drivers/misc/gxfp5130/hw/gxfp_mmio.h | 10 +
> .../misc/gxfp5130/include/gxfp_constants.h | 38 +++
> drivers/misc/gxfp5130/include/gxfp_priv.h | 55 ++++
> .../misc/gxfp5130/proto/gxfp_goodix_proto.c | 84 ++++++
> .../misc/gxfp5130/proto/gxfp_goodix_proto.h | 31 +++
> drivers/misc/gxfp5130/proto/gxfp_mp_proto.c | 96 +++++++
> drivers/misc/gxfp5130/proto/gxfp_mp_proto.h | 27 ++
> .../gxfp5130/transport/gxfp_espi_common.c | 80 ++++++
> .../gxfp5130/transport/gxfp_espi_common.h | 27 ++
> .../gxfp5130/transport/gxfp_espi_rx_irq.c | 120 +++++++++
> .../gxfp5130/transport/gxfp_espi_rx_irq.h | 15 ++
> .../gxfp5130/transport/gxfp_espi_rx_sync.c | 96 +++++++
> .../gxfp5130/transport/gxfp_espi_rx_sync.h | 14 +
> .../misc/gxfp5130/transport/gxfp_espi_tx.c | 88 ++++++
> .../misc/gxfp5130/transport/gxfp_espi_tx.h | 20 ++
> include/uapi/linux/gxfp_ioctl.h | 43 +++
> 51 files changed, 3188 insertions(+)
Why isn't this just one single .c file? 3k for a driver is nothing,
this is a mess of stuff that odds are, can be much much smaller if its
all in one single file, and one .h file for the uapi.
What caused this to be split up so crazily?
And no copyright notices at all? Are you sure about that?
thanks,
greg k-h
prev parent reply other threads:[~2026-07-18 9:06 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-18 8:14 [PATCH 0/4] drivers/misc: add Goodix GXFP5130 eSPI fingerprint sensor driver Metehan Günen
2026-07-18 8:14 ` [PATCH 1/4] include/uapi/linux: add gxfp_ioctl.h for GXFP5130 fingerprint sensor Metehan Günen
2026-07-18 9:07 ` Greg KH
2026-07-18 9:08 ` Greg KH
2026-07-18 8:14 ` [PATCH 2/4] drivers/misc: add Goodix GXFP5130 eSPI fingerprint sensor driver Metehan Günen
2026-07-18 9:09 ` Greg KH
2026-07-18 9:12 ` Greg KH
2026-07-18 8:14 ` [PATCH 3/4] Documentation/misc-devices: add gxfp5130.rst Metehan Günen
2026-07-18 9:06 ` Greg KH
2026-07-18 8:14 ` [PATCH 4/4] MAINTAINERS: add entry for GXFP5130 fingerprint sensor driver Metehan Günen
2026-07-18 9:06 ` Greg KH
2026-07-18 9:05 ` Greg KH [this message]
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=2026071842-timing-distress-ad5a@gregkh \
--to=gregkh@linuxfoundation.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=metehangnen@gmail.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.