18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ciconfig VIDEO_IVTV
38c2ecf20Sopenharmony_ci	tristate "Conexant cx23416/cx23415 MPEG encoder/decoder support"
48c2ecf20Sopenharmony_ci	depends on VIDEO_V4L2 && PCI && I2C
58c2ecf20Sopenharmony_ci	select I2C_ALGOBIT
68c2ecf20Sopenharmony_ci	depends on RC_CORE
78c2ecf20Sopenharmony_ci	select VIDEO_TUNER
88c2ecf20Sopenharmony_ci	select VIDEO_TVEEPROM
98c2ecf20Sopenharmony_ci	select VIDEO_CX2341X
108c2ecf20Sopenharmony_ci	select VIDEO_CX25840
118c2ecf20Sopenharmony_ci	select VIDEO_MSP3400
128c2ecf20Sopenharmony_ci	select VIDEO_SAA711X
138c2ecf20Sopenharmony_ci	select VIDEO_SAA717X
148c2ecf20Sopenharmony_ci	select VIDEO_SAA7127
158c2ecf20Sopenharmony_ci	select VIDEO_CS53L32A
168c2ecf20Sopenharmony_ci	select VIDEO_M52790
178c2ecf20Sopenharmony_ci	select VIDEO_WM8775
188c2ecf20Sopenharmony_ci	select VIDEO_WM8739
198c2ecf20Sopenharmony_ci	select VIDEO_VP27SMPX
208c2ecf20Sopenharmony_ci	select VIDEO_UPD64031A
218c2ecf20Sopenharmony_ci	select VIDEO_UPD64083
228c2ecf20Sopenharmony_ci	help
238c2ecf20Sopenharmony_ci	  This is a video4linux driver for Conexant cx23416 or cx23415 based
248c2ecf20Sopenharmony_ci	  PCI personal video recorder devices.
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ci	  This is used in devices such as the Hauppauge PVR-150/250/350/500
278c2ecf20Sopenharmony_ci	  cards.
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here: the
308c2ecf20Sopenharmony_ci	  module will be called ivtv.
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ciconfig VIDEO_IVTV_DEPRECATED_IOCTLS
338c2ecf20Sopenharmony_ci	bool "enable the DVB ioctls abuse on ivtv driver"
348c2ecf20Sopenharmony_ci	depends on VIDEO_IVTV
358c2ecf20Sopenharmony_ci	help
368c2ecf20Sopenharmony_ci	  Enable the usage of the a DVB set of ioctls that were abused by
378c2ecf20Sopenharmony_ci	  IVTV driver for a while.
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci	  Those ioctls were not needed for a long time, as IVTV implements
408c2ecf20Sopenharmony_ci	  the proper V4L2 ioctls since kernel 3.3.
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci	  If unsure, say N.
438c2ecf20Sopenharmony_ci
448c2ecf20Sopenharmony_ciconfig VIDEO_IVTV_ALSA
458c2ecf20Sopenharmony_ci	tristate "Conexant cx23415/cx23416 ALSA interface for PCM audio capture"
468c2ecf20Sopenharmony_ci	depends on VIDEO_IVTV && SND
478c2ecf20Sopenharmony_ci	select SND_PCM
488c2ecf20Sopenharmony_ci	help
498c2ecf20Sopenharmony_ci	  This driver provides an ALSA interface as another method for user
508c2ecf20Sopenharmony_ci	  applications to obtain PCM audio data from Conexant cx23415/cx23416
518c2ecf20Sopenharmony_ci	  based PCI TV cards supported by the ivtv driver.
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ci	  The ALSA interface has much wider use in user applications performing
548c2ecf20Sopenharmony_ci	  PCM audio capture, than the V4L2 "/dev/video24" PCM audio interface
558c2ecf20Sopenharmony_ci	  provided by the main ivtv driver.
568c2ecf20Sopenharmony_ci
578c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here: the
588c2ecf20Sopenharmony_ci	  module will be called ivtv-alsa.
598c2ecf20Sopenharmony_ci
608c2ecf20Sopenharmony_ciconfig VIDEO_FB_IVTV
618c2ecf20Sopenharmony_ci	tristate "Conexant cx23415 framebuffer support"
628c2ecf20Sopenharmony_ci	depends on VIDEO_IVTV && FB
638c2ecf20Sopenharmony_ci	select FB_CFB_FILLRECT
648c2ecf20Sopenharmony_ci	select FB_CFB_COPYAREA
658c2ecf20Sopenharmony_ci	select FB_CFB_IMAGEBLIT
668c2ecf20Sopenharmony_ci	help
678c2ecf20Sopenharmony_ci	  This is a framebuffer driver for the Conexant cx23415 MPEG
688c2ecf20Sopenharmony_ci	  encoder/decoder.
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ci	  This is used in the Hauppauge PVR-350 card.
718c2ecf20Sopenharmony_ci
728c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here: the
738c2ecf20Sopenharmony_ci	  module will be called ivtvfb.
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ciconfig VIDEO_FB_IVTV_FORCE_PAT
768c2ecf20Sopenharmony_ci	bool "force cx23415 framebuffer init with x86 PAT enabled"
778c2ecf20Sopenharmony_ci	depends on VIDEO_FB_IVTV && X86_PAT
788c2ecf20Sopenharmony_ci	help
798c2ecf20Sopenharmony_ci	  With PAT enabled, the cx23415 framebuffer driver does not
808c2ecf20Sopenharmony_ci	  utilize write-combined caching on the framebuffer memory.
818c2ecf20Sopenharmony_ci	  For this reason, the driver will by default disable itself
828c2ecf20Sopenharmony_ci	  when initializied on a kernel with PAT enabled (i.e. not
838c2ecf20Sopenharmony_ci	  using the nopat kernel parameter).
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_ci	  The driver is not easily upgradable to the PAT-aware
868c2ecf20Sopenharmony_ci	  ioremap_wc() API since the firmware hides the address
878c2ecf20Sopenharmony_ci	  ranges that should be marked write-combined from the driver.
888c2ecf20Sopenharmony_ci
898c2ecf20Sopenharmony_ci	  With this setting enabled, the framebuffer will initialize on
908c2ecf20Sopenharmony_ci	  PAT-enabled systems but the framebuffer memory will be uncached.
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_ci	  If unsure, say N.
93