summaryrefslogtreecommitdiff
path: root/linux/drivers
AgeCommit message (Collapse)Author
2009-03-03v4l2: Zero out read-only ioctls in one placeTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> If an ioctl is read-only then the driver fills in all the fields. Lots of times drivers only care about some fields so it's best if video_ioctl2 takes care of zeroing out the entire structure before handing it to the driver. This saves code in each driver to do it and driver authors often forget. The existing memset code in some of the read-only ioctl handlers can be deleted. Convert a case statement to a single if statement. Deleted a debug line from ENUMAUDOUT that was copy-and-pasted to G_AUDOUT by mistake. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-03-03videodev: only copy needed part of RW ioctl's parameterTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> There are many RW ioctls() in v4l2 where userspace only supplies one or two of the first fields in the structure passed to the ioctl. The driver then fills in the rest of the fields. Instead of copying the entire structure from userspace to the kernel we only need to copy those fields that userspace is actually supposed to supply. What's more, the fields that are meant to be only be output from the driver can be zeroed out in the videodev code, in case the driver doesn't fill them all in. Many of the ioctl handlers in v4l2_ioctl do this already, but my patch does this at one common point and so all the memsets for each ioctl can be deleted. For VIDIOC_G_SLICED_VBI_CAP, which has one input field ('type') and other output-only fields, the input field is near the end of the structure instead of at the beginning. So there is still a memset in it's ioctl handler to zero out the beginning of the struct. There were a couple mistakes with the existing code: For VIDIOC_G_AUDIO the index field was preserved, but G_AUDIO is a read only ioctl so nothing is copied from userspace to preserve. For VIDIOC_G_FREQUENCY the tuner field was not preserved like it should have been. This would be a problem if there was any hardware with more than one tuner/modulator. For VIDIOC_ENUM_FRAMESIZES and VIDIOC_ENUM_FRAMEINTERVALS, none of the fields were preserved even though each ioctl has several field that are supposed to be inputs to the driver! Obviously these ioctls don't get used much. The index field is needed if the driver has multiple discrete sizes/rates and other fields can be used too, e.g. if the size depends on pixel format or frame rate depends on image size for example. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-03-03stv6110: remove a wrong include fileMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> For sure a frontend doesn't need to include cx23885.h header. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-03merge: http://udev.netup.ru/hg/v4l-dvb-netupMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-03merge: http://linuxtv.org/hg/~tap/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-03merge: http://linuxtv.org/hg/~eandren/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-03v4l2: Move code to zero querybuf output struct to v4l2_ioctlTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> For VIDIOC_QUERYBUF only the first two fields, size and type, are used as input. The rest can be filled in by the driver as output. Most drivers do not actually use all the field and unused ones should be zeroed out. Some drivers have code to do this and some drivers should but don't. So put some zero out code in v4l2_ioctl so that all drivers using that system get it. The drivers that have zeroing code get that code removed. Some drivers checked that the type field was valid, but v4l2_ioctl already does this so those checks can be removed as well. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-03-03compat: rename struct delayed_work to work_struct on pre-2.6.20Trent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> In v2.6.19-rc6-118-g52bad64 struct work_struct was changed to be only for non-delayed work and struct delayed_work was created for delayed work. Instead of putting ifdefs in the drivers, we use compat.h to rename delayed_work to work_struct on pre-2.6.20 kernels. This will only be a problem if some driver decides to create identifiers named both work_struct and delayed_work in the same scope. There is one driver that has something named work_struct and none with anything named delayed_work, so I don't think will be a problem for as long as this compat code sticks around. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-03-03cx88: remove unnecessary forward declaration of cx88_coreTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> A recent patch added a forward declaration of cx88_core right before the main definition of that structure, which is obviously unneeded. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-03-03videodev: not possible to register NULL video_deviceTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> video_register_device_index() checks if it was passed a NULL video_device pointer (which isn't allowed) _after_ it has already dereferenced it with video_get_drvdata(vdev). The checks are clearly pointless and can be removed, as the function would have crashed before reaching them if vdev ever was NULL. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-03-03Add support for NetUP Dual DVB-S2 CI cardIgor M. Liplianin
From: Igor M. Liplianin <liplianin@netup.ru> Add support for NetUP Dual DVB-S2 CI card The card based on cx23885 PCI-e bridge, CiMax SP2 Common Interface chips, STM lnbh24 LNB power chip, stv6110 tuners and stv0900 demodulator. http://www.linuxtv.org/wiki/index.php/NetUP_Dual_DVB_S2_CI Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-03-03Add support for ST STV0900 dual demodulator.Igor M. Liplianin
From: Igor M. Liplianin <liplianin@netup.ru> Add last piece of code to support ST STV0900 dual demodulator. The IC consist of two dependent parts. It may use single or dual mode. Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-03-03Add core code for ST STV0900 dual demodulator.Igor M. Liplianin
From: Igor M. Liplianin <liplianin@netup.ru> Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-03-03Add more headers for ST STV0900 dual demodulator.Igor M. Liplianin
From: Igor M. Liplianin <liplianin@netup.ru> Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-03-03Add headers for ST STV0900 dual demodulator.Igor M. Liplianin
From: Igor M. Liplianin <liplianin@netup.ru> The IC consist of two dependent parts. It may use single or dual mode. Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-03-03Add support for ST LNBH24 LNB power controller.Igor M. Liplianin
From: Igor M. Liplianin <liplianin@netup.ru> The controller consist of two independent parts. Every part is similar to LNBP21, but has configurable i2c address. It is used in NetUP Dual DVB-S2 CI card. http://linuxtv.org/wiki/index.php/NetUP_Dual_DVB_S2_CI Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-03-03Add support for ST STV6110 silicon tuner.Igor M. Liplianin
From: Igor M. Liplianin <liplianin@netup.ru> The tuner is used in NetUP Dual DVB-S2 CI card. http://linuxtv.org/wiki/index.php/NetUP_Dual_DVB_S2_CI Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-03-03Add CIMax(R) SP2 Common Interface code for NetUP Dual DVB-S2 CI cardAbylay Ospan
From: Abylay Ospan <aospan@netup.ru> Add CIMax2 Common Interface code for NetUP Dual DVB-S2 CI card. SmarDTV CIMax(R) SP2 is Dual CableCARD, DVB Common Interface and OpenCable Hardware Controller. Signed-off-by: Abylay Ospan <aospan@netup.ru> Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-03-03Add EEPROM code for NetUP Dual DVB-S2 CI card.Abylay Ospan
From: Abylay Ospan <aospan@netup.ru> Signed-off-by: Abylay Ospan <aospan@netup.ru> Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-03-03Add init code for NetUP Dual DVB-S2 CI cardAbylay Ospan
From: Abylay Ospan <aospan@netup.ru> Add init code for NetUP Dual DVB-S2 CI card The card based on cx23885 PCI-e bridge, CiMax SP2 Common Interface chips, STM lnbh24 LNB power chip, stv6110 tuners and stv0900 demodulator. Signed-off-by: Abylay Ospan <aospan@netup.ru> Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-03-02merge: http://linuxtv.org/hg/~mkrufky/mxl5007tMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-27Remove legacy pxa_camera.h and tvmixer.c filesMauro Carvalho Chehab
Those files were removed by some previous commit on -git kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-27siano: prevent duplicate variable declarationMauro Carvalho Chehab
From: Michael Krufky <mkrufky@linuxtv.org> Fix the following build error: drivers/media/dvb/siano/smsusb.o: In function `get_order': include/asm-generic/page.h:10: multiple definition of `sms_dbg' drivers/media/dvb/siano/sms1xxx.o:include/asm-generic/page.h:10: first defined here drivers/media/dvb/siano/smsdvb.o: In function `get_order': include/asm-generic/page.h:10: multiple definition of `sms_dbg' drivers/media/dvb/siano/sms1xxx.o:include/asm-generic/page.h:10: first defined here Thanks to Mauro Carvalho Chehab for his original patch to address this issue. Priority: normal Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-27backport firedtv into V4L/DVB treeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-27Update dependencies of the modules converted to V4L2Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Several modules were converted to V4L2 API. Update their dependencies on Kconfig. Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-27cx18 and saa7110: remove the fake v4l2_ctrl_query_fill calls for the proper onesMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> During the patch merge, I've added a temporary fix for v4l2_ctrl_query_fill(), just to avoid the tree breakage. Replace those for the proper values. kernel-sync: Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-27siano: Remove duplicated var declarationMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> The same var were declared into three different modules: drivers/media/dvb/siano/smsusb.o: In function `get_order': /home/v4l/tokernel/wrk/devel/include/asm-generic/page.h:10: multiple definition of `sms_dbg' drivers/media/dvb/siano/sms1xxx.o:/home/v4l/tokernel/wrk/devel/include/asm-generic/page.h:10: first defined here drivers/media/dvb/siano/smsdvb.o: In function `get_order': /home/v4l/tokernel/wrk/devel/include/asm-generic/page.h:10: multiple definition of `sms_dbg' drivers/media/dvb/siano/sms1xxx.o:/home/v4l/tokernel/wrk/devel/include/asm-generic/page.h:10: first defined here kernel-sync: Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26cx18: Fix compilation and remove the obsoleted v4l2_ctrl_query_fill_std() callMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26merge: http://linuxtv.org/hg/~awalls/cx18Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26merge: http://linuxtv.org/hg/~mkrufky/sms1xxxMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26merge: http://mercurial.intuxication.org/hg/v4l-dvb-commitsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26merge: http://www.linuxtv.org/hg/~dougsland/em28xxMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26Get rid of video_decoder.h header were uneededMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Now, just a few modules are still dependent of this legacy header: $ grep -l DECODER_ `find linux/drivers/media/ -name '*.[ch]' -exec grep -l video_decoder '{}' \;` linux/drivers/media/video/v4l2-ioctl.c linux/drivers/media/video/indycam.c linux/drivers/media/video/saa7191.c linux/drivers/media/video/vino.c Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26saa7110: get rid of the legacy v4l2_ctrl_query_fill_std()Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26v4l2-common: Fix a merge conflict bad solvedMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-zoranMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26siano: convert EXPORT_SYMBOL to EXPORT_SYMBOL_GPLMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> As pointed out by Mauro Chehab, we should always use EXPORT_SYMBOL_GPL instead of EXPORT_SYMBOL wherever possible. A message was posted to the linux-media mailing list about this, checking with Uri Shkolnik of Siano Mobile Silicon if this is okay to convert. As per Uri's response to this email, it is OK for us to make this conversion. http://www.spinics.net/lists/linux-media/msg02200.html Priority: normal Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-02-26merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-fill-stdMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26merge: http://linuxtv.org/hg/~pb/v4l-dvb/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-usbvisionMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26merge: http://linuxtv.org/hg/~jfrancois/v4l-dvb/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26merge: http://linuxtv.org/hg/~gliakhovetski/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-26dm1105: infrared remote code is remaked.Igor M. Liplianin
From: Igor M. Liplianin <liplianin@netup.ru> The driver infrared remote code part is altered to switch to a work queue. Also ir_codes table moved to ir-common module for shared access. Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-02-26dm1105: not demuxing from interrupt context.Igor M. Liplianin
From: Igor M. Liplianin <liplianin@netup.ru> The driver already has DMA buffer organized like ringbuffer, so it is easy to switch to a work queue. Length of ringbuffer can easily be increased, if someone need it. Signed-off-by: Igor M. Liplianin <liplianin@netup.ru>
2009-02-25em28xx: Add Kaiser Baas Video to DVD maker supportDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Added usb vendor/product id for Kaiser Baas Video to DVD maker. Thanks to Trevor Campbell <tca42186@bigpond.net.au> for providing all data and tests needed to add this card to em28xx driver. Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-02-25em28xx-cards: Add SIIG AVTuner-PVR boardDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Added SIIG AVTuner-PVR to the right entry. Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-02-25em28xx-cards: remove incorrect entryDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Removed EM2821_BOARD_PROLINK_PLAYTV_USB2 entry. This entry has a incorrect tuner set. Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-02-25em28xx: VideoMate For You USB TV box requires tvaudioMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> As reported by Vitaly Wool <vital@embeddedalley.com>: > about half a year ago I posted the patch that basically enabled Compro > VideoMate For You USB TV box support. > The main problem is I couldn't get the sound working. > So I kind of decomposed the box and found out the audio decoder chip > used there was Philips TDA9874A. As far as I can see, it's not supported > within the em28xx suite although it is for other TV tuner drivers. A tvaudio modprobing confirms that tda9874a chip is accessible via i2c: tvaudio: TV audio decoder + audio/video mux driver tvaudio: known chips: tda9840, tda9873h, tda9874h/a, tda9850, tda9855, tea6300, tea6320, tea6420, tda8425, pic16c54 (PV951), ta8874z tvaudio' 1-0058: chip found @ 0xb0 tvaudio' 1-0058: tvaudio': chip_read2: reg254=0x11 tvaudio' 1-0058: tvaudio': chip_read2: reg255=0x2 tvaudio' 1-0058: tda9874a_checkit(): DIC=0x11, SIC=0x2. tvaudio' 1-0058: found tda9874a. tvaudio' 1-0058: tda9874h/a found @ 0xb0 (em28xx #0) tvaudio' 1-0058: tda9874h/a: chip_write: reg0=0x0 tvaudio' 1-0058: tda9874h/a: chip_write: reg1=0xc0 tvaudio' 1-0058: tda9874h/a: chip_write: reg2=0x2 tvaudio' 1-0058: tda9874h/a: chip_write: reg11=0x80 tvaudio' 1-0058: tda9874h/a: chip_write: reg12=0x0 tvaudio' 1-0058: tda9874h/a: chip_write: reg13=0x0 tvaudio' 1-0058: tda9874h/a: chip_write: reg14=0x1 tvaudio' 1-0058: tda9874h/a: chip_write: reg15=0x0 tvaudio' 1-0058: tda9874h/a: chip_write: reg16=0x14 tvaudio' 1-0058: tda9874h/a: chip_write: reg17=0x50 tvaudio' 1-0058: tda9874h/a: chip_write: reg18=0xf9 tvaudio' 1-0058: tda9874h/a: chip_write: reg19=0x80 tvaudio' 1-0058: tda9874h/a: chip_write: reg20=0x80 tvaudio' 1-0058: tda9874h/a: chip_write: reg24=0x80 tvaudio' 1-0058: tda9874h/a: chip_write: reg255=0x0 tvaudio' 1-0058: tda9874a_setup(): A2, B/G [0x00]. tvaudio' 1-0058: tda9874h/a: thread started] This patch automatically loads tvaudio when needed (currently, only with this board). Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-23remove redundant memset after kzallocMauro Carvalho Chehab
From: Matthias Schwarzott <zzam@gentoo.org> Hi there! While having a look at the allocation of struct dvb_frontend in *_attach functions, I found some cases calling memset after kzalloc. This is redundant, and the attached patch removes these calls. I also changed one case calling kmalloc and memset to kzalloc. Regards Matthias Signed-off-by: Matthias Schwarzott <zzam@gentoo.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>