summaryrefslogtreecommitdiff
path: root/linux
AgeCommit message (Collapse)Author
2009-02-01merge: http://mercurial.intuxication.org/hg/v4l-dvb-commits/v4l-dvb-commitsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-01merge: http://linuxtv.org/hg/~dheitmueller/v4l-dvb-s5h1409Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-02-01merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-31saa7134-core: loading saa7134-alsa is now the defaultMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Most boards nowadays supports saa7134-alsa. Even some of they doesn't have any option to wire an audio cable. So, lets load saa7134-alsa by default, if the board is not based on saa7130 and if saa7134-alsa is compiled. Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-31saa7134-core: remove oss option, since saa7134-oss doesn't exist anymoreMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-31saa7134-alsa: saa7130 doesn't support digital audioMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-30cx18: Clean-up and enable sliced VBI handlingAndy Walls
From: Andy Walls <awalls@radix.net> Removed legacy ivtv state variables, added comments, and cleaned up sliced VBI related code. Enabled sliced VBI. Priority: normal Signed-off-by: Andy Walls <awalls@radix.net>
2009-01-30cx18: Normalize APU after second APU firmware loadAndy Walls
From: Andy Walls <awalls@radix.net> Priority: normal Signed-off-by: Andy Walls <awalls@radix.net>
2009-01-30cx18: Smarter verification of CX18_AUDIO_ENABLE register writesAndy Walls
From: Andy Walls <awalls@radix.net> The CX18_AUDIO_ENABLE register usually never reads back what was just written under normal circumstances. Perform better checking that a write went to the register as expected with a specification of what bits to verify. Priority: normal Signed-off-by: Andy Walls <awalls@radix.net>
2009-01-30cx18: Defer A/V core initialization until a valid cx18_av_cmd arrivesAndy Walls
From: Andy Walls <awalls@radix.net> Priority: normal Signed-off-by: Andy Walls <awalls@radix.net>
2009-01-30gspca - sonixj: Bad initialization of sensor mt9v111.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-30Bug fix: Restore HVR-4000 tuning.Igor M. Liplianin
From: Igor M. Liplianin <liplianin@me.by> Some cards uses cx24116 LNB_DC pin for LNB power control, some not uses, some uses it different way, like HVR-4000. Signed-off-by: Igor M. Liplianin <liplianin@me.by> Tested-by : Edgar Hucek <gimli@dark-green.com>
2009-01-29gspca - vc032x: Add resolution 1280x1024 for sensor mi1310_soc.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-29v4l: remove unused I2C_DRIVERIDs.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> I2C_DRIVERIDs are phased out. Remove those that are unused at the moment. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-01-29v4l2: fix incorrect hue range checkHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> A hue of -128 was rejected due to an incorrect range check, which was faithfully copy-and-pasted into four drivers... Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-01-29gspca - sonixj: Bad sensor definition of the webcams 0c45:60c0.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-29merge: v4l-dvbJean-Francois Moine
2009-01-29merge: backportMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-29backport changes on stb0899_algo per requestMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-29commit backportMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-29gspca: version.h is needed in order to compile upstreamMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> drivers/media/video/gspca/gspca.c: In function ‘vidioc_querycap’: drivers/media/video/gspca/gspca.c:963: error: implicit declaration of function ‘KERNEL_VERSION’ kernel-sync: CC: Jean-Francois Moine <moinejf@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-29backport changes on files not maintained hereMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> kernel-sync: Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-29gspca: fix compiler warningHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-01-29gspca - documentation: Add the webcam 041e:405b.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-29gspca - vc032x: Webcam 041e:405b added and mi1310_soc updated.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> The mi1310_soc sequences come from the ms-win driver C0130Dev.inf. Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-29gspca - sonixj: Sensor mt9v111 added.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-28bttv: dynamically allocate device dataTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The bttv driver had static array of structures for up to 16 possible bttv devices, even though few users have more than one or two. The structures were quite large and this resulted in a huge BSS segment. Change the driver to allocate the bttv device data dynamically, which changes "struct bttv bttvs[BTTV_MAX]" to "struct bttv *bttvs[BTTV_MAX]". It would be nice to get ride of "bttvs" entirely but there are some complications with gpio access from the audio & mpeg drivers. To help bttvs removal along anyway, I changed the open() methods use the video device's drvdata to get the driver data instead of looking it up in the bttvs array. This is also more efficient. Some WARN_ON()s are added in cases the device node exists by the bttv device doesn't, which I don't think should be possible. The gpio access functions need to check if bttvs[card] is NULL now. Though calling them on a non-existent card in the first place is wrong, but hard to solve given the fundamental problems in how the gpio access code works. This patch reduces the bss size by 66560 bytes on ia32. Overall change is a reduction of 66398 bytes, as the WARN_ON()s add some 198 bytes. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-01-28bttv: shrink muxsel data in card databaseTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Over half of the card database was used to store muxsel data. 64 bytes were used to store one 32 bit word for each of up to 16 inputs. The Bt8x8 only has two bits to control its mux, so muxsel data for 16 inputs will fit into a single 32 bit word. There were a couple cards that had special muxsel data that didn't fit in two bits, but I cleaned them up in earlier patches. Unfortunately, C doesn't allow us to have an array of bit fields. This makes initializing the structure more of a pain. But with some cpp magic, we can do it by changing: .muxsel = { 2, 3, 0, 1 }, .muxsel = { 2, 2, 2, 2, 3, 3, 3, 3, 1, 1 }, Into: .muxsel = MUXSEL(2, 3, 0, 1), .muxsel = MUXSEL(2, 2, 2, 2, 3, 3, 3, 3, 1, 1), That's not so bad. MUXSEL is a fancy macro that packs the arguments (of which there can be one to sixteen!) into a single word two bits at a time. It's a compile time constant (a variadic function wouldn't be) so we can use it to initialize the structure. It's important the the arguments to the macro only be plain decimal integers. Stuff like "0x01", "(2)", or "MUX3" won't work properly. I also created an accessor function, bttv_muxsel(btv, input), that gets the mux bits for the selected input. It makes it cleaner to change the way the muxsel data is stored. This patch doesn't change the code size and decreases the datasegment by 9440 bytes. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-01-28bttv: clean up mux code for IDS EagleTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> This card apparently uses an external mux and the Bt878's mux should always be set to MUX2. The values for the external mux control bits were stored in the muxsel field. This meant that when changing inputs the driver would switch the Bt878's mux to whatever value the external mux was supposed to be set to, then eagle_muxsel() would switch it back to MUX2 and program the external mux. This creates an unnecessary switch of the Bt878's mux. So change muxsel to be 2 for each input. The external mux bits are just "input&3" so they don't really need to be stored anywhere. This also eliminates the last non-standard use of the muxsel data. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> CC: M G Berberich <berberic@fmi.uni-passau.de>
2009-01-28bttv: fix external mux for RemoteVision MXTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Old versions of the bttv driver would use the high nibble of an input's muxsel value to program the GPIO lines enabled via gpiomask2. Apparently this was supposed to be for switching external audio muxes. Anyway, the code that did this was removed sometime in the pre-git 2.6 series. The RemoteVision MX board used this feature to control an external video mux and I guess no one noticed when they removed the code. Move the extra gpio mux data out of the high nibble of muxsel and to rv605_muxsel(), then have that function set the gpio lines with it. From looking at the CD22M3494E datasheet, it seems like the mdelay(1) is a much longer delay than necessary. It looks like only around 20 ns is necessary. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> CC: Miguel Freitas <miguel@cetuc.puc-rio.br>
2009-01-28bttv: fix external mux for PHYTEC VD-009Trent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Old versions of the bttv driver would use the high nibble of an input's muxsel value to program the GPIO lines enabled via gpiomask2. Apparently this was supposed to be for switching external audio muxes. Anyway, the code that did this was removed sometime in the pre-git 2.6 series. These phytec boards used this feature to control an external video mux and I guess no one noticed when they removed the code. So add a muxsel_hook for these boards that does the necessary gpio setting. BTW, I doubt the needs_tvaudio setting for these cards is correct. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> CC: Dirk Heer <d.heer@phytec.de>
2009-01-28bttv: clean up mux code for IVC-120GTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The card data for BTTV_BOARD_IVC120 set muxsel to a bunch of bogus values (1 to 16), which the common mux code would use to set the Bt878's mux to some random value. Then the custom code in ivc120_muxsel() would change the Bt878's mux to the right value (always MUX0). Better to just make the muxsel data correct (all zeros, easy!) and get the mux right to begin with. Then the extra Bt878 mux setting code in ivc120_muxsel() can be eliminated (the rest of the code for the IVC-120G's external mux is still there of course). This will help me clean up muxsel for some other changes. It should also get rid of an unnecessary mux switch when changing from certain inputs to certain other inputs on the IVC-120G. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> CC: Alan Garfield <alan@fromorbit.com>
2009-01-28bttv: rework the way digital inputs are indicatedTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The code was using a muxsel value of -1U to indicate a digital input. A couple places in were checking of muxsel < 0 to detect this, which doesn't work of course because muxsel is unsigned and can't be negative. Only a couple cards had digital inputs and it was always the last one, so for the card database create a one bit field that indicates the last input is digital. On init, this is used to set a new field in the bttv struct to the digital input's number or UNSET for none. This makes it easier to check if the current input is digital. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-01-28bttv: store card database more efficientlyTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The bttv card database is quite large and the data structure used to store it wasn't very efficient. Most of the field are only used at card initialization time so it doesn't matter if they aren't efficient to access. Overall the changes reduce code size by 60 bytes in ia32. The data size is decreased by 5024 byes. It is probably even more for 64-bit kernels. Move the fields in the struct around to be sorted from largest to smallest. This saves on padding space used for alignment. Get rid of the unused digital_mode field. Leave the setting as a comment in the few cards entries that set it, in case someone ever writes the code. Get rid of the unused audio_inputs field. Leave the values in the card entries in case someone ever writes code that might use it. Get ride of the unused radio_addr field. No card entries even set it to anything interesting so it's not left as comments. All the code that used it was removed in commit v2.6.14-3466-g291d1d7 from Nov 8th 2005. Reduce video_inputs to u8 as no card has more than 255 inputs (the most is 16). Change tuner_addr to u8. I2C addresses are only seven bits and 255 means ADDR_UNSET, so everything fits. Make has_radio a one bit flag. Make the pll setting a two bit field. Reduce svhs to four bits as no card has an s-video input above 9. Change the value for no s-video input from UNSET (which is -1U and out of range of four bits) to NO_SVHS (which is now 15). Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-01-28bttv: make tuner card info more consistentTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The bttv card database structure had a "tuner" field that was the input number of the tuner input or UNSET for no tuner. However, the only values it could ever be are 0 and UNSET. Having a tuner on an input other than 0 didn't work and was never used. There is also a "tuner_type" field that can be set to TUNER_ABSENT to indicate no tuner, which makes "tuner = UNSET" redundant. In many cases, tuner_type was set to UNSET when there was no tuner, which isn't quite correct. tuner_type == UNSET is supposed to mean the tuner type isn't yet known. So, I changed cards where "tuner == UNSET" to always have tuner_type of TUNER_ABSENT. At this point the tuner field is redundant, so I deleted it. I have the card setup code set the card's tuner_type (not the card type's tuner_type!) to TUNER_ABSENT if it hasn't yet been set at the end of the setup code. Various places that check if the card has a tuner will now look for this instead of checking the card type's "tuner" field. Also autoload the tuner module before issuing the TUNER_SET_TYPE_ADDR I2C client call instead of after issuing it. Overall, on ia32 this decreases compiled code size by about 24 bytes and reduces the data size by 640 bytes. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-01-28bttv: Fix TDA9880 norm setting codeTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The code to set the norm for the TDA9880 analog demod was comparing btv->norm, an index into the bttv driver's norm array, to V4L2_STD_NTSC, which is a bit flag that's part of the V4L2 API. This doesn't work of course and results in the PAL path always being taken. What's more, it modified the bttv_tvcards[] entries for cards using the TDA9880. This is wrong because changing the norm on one card will also affect other cards of the same type. Writing to bttv_tvcards is also bad because it should be read-only or even devinitdata. Changing the norm would also cause the audio to become unmuted. Have the code get called for both norm setting and audio input setting (which where the gpios are set) to avoid needed to modify bttv_tvcards. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-01-28bttv: norm value should be unsignedTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The norm value in the driver is an index into an array and the the driver doesn't allow it to be negative or otherwise invalid. It should be unsigned but wasn't in all places. Fix some structs and functions to have the norm be unsigned. Get rid of useless checks for "< 0". Most of the driver code can't handle a norm value that's out of range, so change some ">= BTTV_TVNORMS" checks to BUG_ON(). There's no point in silently ignoring invalid driver state just to crash because of it later. Priority: normal Reported-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-01-27merge: http://linuxtv.org/hg/~jfrancois/gspca/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-27merge: http://linuxtv.org/hg/~anttip/af9015/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-27merge: http://linuxtv.org/hg/~dougsland/em28xx/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-27merge: http://linuxtv.org/hg/~dheitmueller/dib0700-pbfixes/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-27merge: http://linuxtv.org/hg/~dougsland/radiosMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-27merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-saa7146Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-29v4l2-device.c: Fix compilation with older kernelsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-27cx25840: ignore TUNER_SET_CONFIG in the command callback.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> These days TUNER_SET_CONFIG is broadcast to the other i2c devices and that triggers a fw load on the cx25840. Ignore this command since cx25840 isn't a tuner and you really do not want to load the firmware that early. Priority: high Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-01-26saa7146: fix VIDIOC_ENUMSTD.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The previous conversion to video_ioctl2 broke VIDIOC_ENUMSTD. This is now fixed. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-01-26gspca - zc3xx: Do work the sensor adcm2700.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> The lack of the green color is fixed by sensor sequences closer to the ms-win traces. Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-26s5h1409: Perform s5h1409 soft reset after tuningDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Just like with the s5h1411, the s5h1409 needs a soft-reset in order for it to know that the tuner has been told to change frequencies. This change changes the behavior from "random tuning times between 500ms to complete tuning lock failures" to "tuning lock consistently within 700ms". Thanks to Robert Krakora <rob.krakora@messagenetsystems.com> for doing initial testing of the patch on the KWorld 330U. Thanks to Andy Walls <awalls@radix.net> for doing testing of the patch on the HVR-1600. Thanks to Michael Krufky <mkrufky@linuxtv.org> for doing additional testing. Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-01-25radio-mr800: fix radio->muted and radio->stereoDouglas Schilling Landgraf
From: Alexey Klimov <klimov.linux@gmail.com> Move radio->muted and radio->stereo in section where radio mutex is locked to avoid possible race condition problems or access to memory. Thanks to David Ellingsworth <david@identd.dyndns.org> for pointing to this weak place in driver. Priority: high Signed-off-by: Alexey Klimov <klimov.linux@gmail.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-01-25v4l/dvb: use usb_make_path in usb-radio driversDouglas Schilling Landgraf
From: Alexey Klimov <klimov.linux@gmail.com> Place usb_make_path in dsbr100.c, radio-mr800.c, radio-si470x.c that used when reporting bus_info information in vidioc_querycap. Priority: normal Signed-off-by: Alexey Klimov <klimov.linux@gmail.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>