1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only 2*4882a593Smuzhiyunconfig VIDEO_IVTV 3*4882a593Smuzhiyun tristate "Conexant cx23416/cx23415 MPEG encoder/decoder support" 4*4882a593Smuzhiyun depends on VIDEO_V4L2 && PCI && I2C 5*4882a593Smuzhiyun select I2C_ALGOBIT 6*4882a593Smuzhiyun depends on RC_CORE 7*4882a593Smuzhiyun select VIDEO_TUNER 8*4882a593Smuzhiyun select VIDEO_TVEEPROM 9*4882a593Smuzhiyun select VIDEO_CX2341X 10*4882a593Smuzhiyun select VIDEO_CX25840 11*4882a593Smuzhiyun select VIDEO_MSP3400 12*4882a593Smuzhiyun select VIDEO_SAA711X 13*4882a593Smuzhiyun select VIDEO_SAA717X 14*4882a593Smuzhiyun select VIDEO_SAA7127 15*4882a593Smuzhiyun select VIDEO_CS53L32A 16*4882a593Smuzhiyun select VIDEO_M52790 17*4882a593Smuzhiyun select VIDEO_WM8775 18*4882a593Smuzhiyun select VIDEO_WM8739 19*4882a593Smuzhiyun select VIDEO_VP27SMPX 20*4882a593Smuzhiyun select VIDEO_UPD64031A 21*4882a593Smuzhiyun select VIDEO_UPD64083 22*4882a593Smuzhiyun help 23*4882a593Smuzhiyun This is a video4linux driver for Conexant cx23416 or cx23415 based 24*4882a593Smuzhiyun PCI personal video recorder devices. 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun This is used in devices such as the Hauppauge PVR-150/250/350/500 27*4882a593Smuzhiyun cards. 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun To compile this driver as a module, choose M here: the 30*4882a593Smuzhiyun module will be called ivtv. 31*4882a593Smuzhiyun 32*4882a593Smuzhiyunconfig VIDEO_IVTV_DEPRECATED_IOCTLS 33*4882a593Smuzhiyun bool "enable the DVB ioctls abuse on ivtv driver" 34*4882a593Smuzhiyun depends on VIDEO_IVTV 35*4882a593Smuzhiyun help 36*4882a593Smuzhiyun Enable the usage of the a DVB set of ioctls that were abused by 37*4882a593Smuzhiyun IVTV driver for a while. 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun Those ioctls were not needed for a long time, as IVTV implements 40*4882a593Smuzhiyun the proper V4L2 ioctls since kernel 3.3. 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun If unsure, say N. 43*4882a593Smuzhiyun 44*4882a593Smuzhiyunconfig VIDEO_IVTV_ALSA 45*4882a593Smuzhiyun tristate "Conexant cx23415/cx23416 ALSA interface for PCM audio capture" 46*4882a593Smuzhiyun depends on VIDEO_IVTV && SND 47*4882a593Smuzhiyun select SND_PCM 48*4882a593Smuzhiyun help 49*4882a593Smuzhiyun This driver provides an ALSA interface as another method for user 50*4882a593Smuzhiyun applications to obtain PCM audio data from Conexant cx23415/cx23416 51*4882a593Smuzhiyun based PCI TV cards supported by the ivtv driver. 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun The ALSA interface has much wider use in user applications performing 54*4882a593Smuzhiyun PCM audio capture, than the V4L2 "/dev/video24" PCM audio interface 55*4882a593Smuzhiyun provided by the main ivtv driver. 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun To compile this driver as a module, choose M here: the 58*4882a593Smuzhiyun module will be called ivtv-alsa. 59*4882a593Smuzhiyun 60*4882a593Smuzhiyunconfig VIDEO_FB_IVTV 61*4882a593Smuzhiyun tristate "Conexant cx23415 framebuffer support" 62*4882a593Smuzhiyun depends on VIDEO_IVTV && FB 63*4882a593Smuzhiyun select FB_CFB_FILLRECT 64*4882a593Smuzhiyun select FB_CFB_COPYAREA 65*4882a593Smuzhiyun select FB_CFB_IMAGEBLIT 66*4882a593Smuzhiyun help 67*4882a593Smuzhiyun This is a framebuffer driver for the Conexant cx23415 MPEG 68*4882a593Smuzhiyun encoder/decoder. 69*4882a593Smuzhiyun 70*4882a593Smuzhiyun This is used in the Hauppauge PVR-350 card. 71*4882a593Smuzhiyun 72*4882a593Smuzhiyun To compile this driver as a module, choose M here: the 73*4882a593Smuzhiyun module will be called ivtvfb. 74*4882a593Smuzhiyun 75*4882a593Smuzhiyunconfig VIDEO_FB_IVTV_FORCE_PAT 76*4882a593Smuzhiyun bool "force cx23415 framebuffer init with x86 PAT enabled" 77*4882a593Smuzhiyun depends on VIDEO_FB_IVTV && X86_PAT 78*4882a593Smuzhiyun help 79*4882a593Smuzhiyun With PAT enabled, the cx23415 framebuffer driver does not 80*4882a593Smuzhiyun utilize write-combined caching on the framebuffer memory. 81*4882a593Smuzhiyun For this reason, the driver will by default disable itself 82*4882a593Smuzhiyun when initializied on a kernel with PAT enabled (i.e. not 83*4882a593Smuzhiyun using the nopat kernel parameter). 84*4882a593Smuzhiyun 85*4882a593Smuzhiyun The driver is not easily upgradable to the PAT-aware 86*4882a593Smuzhiyun ioremap_wc() API since the firmware hides the address 87*4882a593Smuzhiyun ranges that should be marked write-combined from the driver. 88*4882a593Smuzhiyun 89*4882a593Smuzhiyun With this setting enabled, the framebuffer will initialize on 90*4882a593Smuzhiyun PAT-enabled systems but the framebuffer memory will be uncached. 91*4882a593Smuzhiyun 92*4882a593Smuzhiyun If unsure, say N. 93