mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-08-09 06:14:34 +02:00
Add an in-tree AVMatrix HWS PCIe capture driver. The driver supports up to four HDMI inputs and exposes the video capture path through V4L2 with vb2-dma-contig streaming, DV timings, and per-input controls. Audio support is intentionally omitted from this submission. This patch also adds the MAINTAINERS entry for the new driver. This driver is derived from a GPL out-of-tree driver. Changes since v6: - v6 accidently contained legacy history, resubmitting with latest - remove an unused mode-change label reported by W=1 Changes since v5: - keep queue_setup() and alloc_sizeimage on the logical sizeimage value - drop the dead queue_setup() fallback that rebuilt pix.sizeimage on the fly - clarify that hws_calc_sizeimage() models the packed-YUYV-only path - add Assisted-by attribution for Codex Changes since v4: - replace plain 64-bit elapsed-time divisions in debug logging with div_u64() so i386 module builds do not emit __udivdi3 references Changes since v3: - fold the MAINTAINERS update into this patch so per-patch CI sees the new file pattern - wrap the validation text for checkpatch 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: - build-tested with W=1 against a local kernel build tree - compiled the driver with ARCH=i386 allmodconfig and verified the resulting hws_pci.o, hws_video.o, and hws.o do not reference __udivdi3 - v4l2-compliance 1.33.0-5459 from v4l-utils commit 4a0d2c3b4f523406cb9a6f4c541ef14f72f19f3d on /dev/video2: 48 tests succeeded, 0 failed, 1 warning 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. Reported-by: kernel test robot <lkp@intel.com> Closes: https://lore.kernel.org/oe-kbuild-all/202604020522.z22eZuW8-lkp@intel.com/ Assisted-by: Codex:gpt-5.5 Signed-off-by: Ben Hoff <hoff.benjamin.k@gmail.com> Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
81 lines
2.1 KiB
Plaintext
81 lines
2.1 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
if PCI
|
|
|
|
menuconfig MEDIA_PCI_SUPPORT
|
|
bool "Media PCI Adapters"
|
|
help
|
|
Enable media drivers for PCI/PCIe bus.
|
|
If you have such devices, say Y.
|
|
|
|
if MEDIA_PCI_SUPPORT
|
|
|
|
if MEDIA_CAMERA_SUPPORT
|
|
comment "Media capture support"
|
|
|
|
source "drivers/media/pci/hws/Kconfig"
|
|
source "drivers/media/pci/mgb4/Kconfig"
|
|
source "drivers/media/pci/solo6x10/Kconfig"
|
|
source "drivers/media/pci/tw5864/Kconfig"
|
|
source "drivers/media/pci/tw68/Kconfig"
|
|
source "drivers/media/pci/tw686x/Kconfig"
|
|
source "drivers/media/pci/zoran/Kconfig"
|
|
|
|
endif
|
|
|
|
if MEDIA_ANALOG_TV_SUPPORT
|
|
comment "Media capture/analog TV support"
|
|
|
|
source "drivers/media/pci/dt3155/Kconfig"
|
|
source "drivers/media/pci/ivtv/Kconfig"
|
|
source "drivers/media/pci/saa7146/Kconfig"
|
|
|
|
endif
|
|
|
|
if MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT
|
|
comment "Media capture/analog/hybrid TV support"
|
|
|
|
source "drivers/media/pci/bt8xx/Kconfig"
|
|
source "drivers/media/pci/cobalt/Kconfig"
|
|
source "drivers/media/pci/cx18/Kconfig"
|
|
source "drivers/media/pci/cx23885/Kconfig"
|
|
source "drivers/media/pci/cx25821/Kconfig"
|
|
source "drivers/media/pci/cx88/Kconfig"
|
|
source "drivers/media/pci/saa7134/Kconfig"
|
|
source "drivers/media/pci/saa7164/Kconfig"
|
|
|
|
endif
|
|
|
|
if MEDIA_DIGITAL_TV_SUPPORT
|
|
comment "Media digital TV PCI Adapters"
|
|
|
|
source "drivers/media/pci/b2c2/Kconfig"
|
|
source "drivers/media/pci/ddbridge/Kconfig"
|
|
source "drivers/media/pci/dm1105/Kconfig"
|
|
source "drivers/media/pci/mantis/Kconfig"
|
|
source "drivers/media/pci/netup_unidvb/Kconfig"
|
|
source "drivers/media/pci/ngene/Kconfig"
|
|
source "drivers/media/pci/pluto2/Kconfig"
|
|
source "drivers/media/pci/pt1/Kconfig"
|
|
source "drivers/media/pci/pt3/Kconfig"
|
|
source "drivers/media/pci/smipcie/Kconfig"
|
|
source "drivers/media/pci/ttpci/Kconfig"
|
|
|
|
endif
|
|
|
|
config VIDEO_PCI_SKELETON
|
|
tristate "Skeleton PCI V4L2 driver"
|
|
depends on SAMPLES
|
|
depends on MEDIA_TEST_SUPPORT
|
|
depends on PCI && VIDEO_DEV
|
|
select VIDEOBUF2_MEMOPS
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
help
|
|
Enable build of the skeleton PCI driver, used as a reference
|
|
when developing new drivers.
|
|
|
|
source "drivers/media/pci/intel/Kconfig"
|
|
|
|
endif #MEDIA_PCI_SUPPORT
|
|
endif #PCI
|