[PATCH v3 0/2] media: pci: add AVMatrix HWS capture driver

hoff.benjamin.k
2026-03-30T19:57:09Z

From: Ben Hoff <hoff.benjamin.k@gmail.com>

Hi,

This series adds an in-tree AVMatrix HWS PCIe capture driver and a
matching MAINTAINERS entry.

Compared to v2, this revision makes mode-change handling explicit and
removes the previously unvalidated power-present reporting path.

Changes since v2:
- keep scratch DMA allocation on a single probe-owned path
- avoid double-freeing V4L2 control handlers on register unwind
- drop the extra per-node resolution sysfs ABI
- turn live geometry changes into explicit SOURCE_CHANGE renegotiation
- report live DV timings and reject attempts to retime a live source
- stop advertising RESOLUTION source changes for fps-only updates
- keep live fps state across harmless S_FMT restarts
- stop exposing an unvalidated DV RX power-present signal
- clean the imported sources for checkpatch and W=1 builds

Validation:
- make -C /lib/modules/$(uname -r)/build M=drivers/media/pci/hws W=1 CONFIG_VIDEO_HWS=m modules
- scripts/checkpatch.pl --strict --file drivers/media/pci/hws/*
- v4l2-compliance 1.32.0: 51 tests succeeded, 0 failed, 1 warning

The remaining v4l2-compliance warning is:
- V4L2_CID_DV_RX_POWER_PRESENT not found for input 0

DV_RX_POWER_PRESENT is intentionally left unsupported in this revision
because current hardware evidence does not expose a validated
receiver-side power-detect signal distinct from active video presence.

Ben Hoff (2):
media: pci: add AVMatrix HWS capture driver
MAINTAINERS: add entry for AVMatrix HWS driver

MAINTAINERS | 6 +
drivers/media/pci/Kconfig | 1 +
drivers/media/pci/Makefile | 1 +
drivers/media/pci/hws/Kconfig | 12 +
drivers/media/pci/hws/Makefile | 4 +
drivers/media/pci/hws/hws.h | 174 +++
drivers/media/pci/hws/hws_irq.c | 271 +++++
drivers/media/pci/hws/hws_irq.h | 10 +
drivers/media/pci/hws/hws_pci.c | 864 ++++++++++++++
drivers/media/pci/hws/hws_reg.h | 136 +++
drivers/media/pci/hws/hws_v4l2_ioctl.c | 924 +++++++++++++++
drivers/media/pci/hws/hws_v4l2_ioctl.h | 36 +
drivers/media/pci/hws/hws_video.c | 1504 ++++++++++++++++++++++++
drivers/media/pci/hws/hws_video.h | 29 +
14 files changed, 3972 insertions(+)
create mode 100644 drivers/media/pci/hws/Kconfig
create mode 100644 drivers/media/pci/hws/Makefile
create mode 100644 drivers/media/pci/hws/hws.h
create mode 100644 drivers/media/pci/hws/hws_irq.c
create mode 100644 drivers/media/pci/hws/hws_irq.h
create mode 100644 drivers/media/pci/hws/hws_pci.c
create mode 100644 drivers/media/pci/hws/hws_reg.h
create mode 100644 drivers/media/pci/hws/hws_v4l2_ioctl.c
create mode 100644 drivers/media/pci/hws/hws_v4l2_ioctl.h
create mode 100644 drivers/media/pci/hws/hws_video.c
create mode 100644 drivers/media/pci/hws/hws_video.h

--
2.53.0