summaryrefslogtreecommitdiff
path: root/linux
AgeCommit message (Collapse)Author
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-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-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>
2009-01-25em28xx: Add check before call em28xx_isoc_audio_deinit()Douglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Just call em28xx_isoc_audio_deinit() if em28xx sent a usb_submit(). Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-01-25em28xx: fix spacesDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Fixed spaces Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-01-25gspca - pac207: Webcam 093a:2474 added.Jean-Francois Moine
From: Lierdakil <root@livid.pp.ru> Priority: normal Signed-off-by: Lierdakil <root@livid.pp.ru> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-25em28xx: Fix for fail to submit URB with IRQs and Pre-emption DisabledDouglas Schilling Landgraf
From: Robert Krakora <rob.krakora@messagenetsystems.com> Trace: (Provided by Douglas) BUG: sleeping function called from invalid context at drivers/usb/core/urb.c:558 in_atomic():0, irqs_disabled():1 Pid: 4918, comm: sox Not tainted 2.6.27.5 #1 [<c04246d8>] __might_sleep+0xc6/0xcb [<c058c8b0>] usb_kill_urb+0x1a/0xd8 [<c0488e68>] ? __kmalloc+0x9b/0xfc [<c0488e85>] ? __kmalloc+0xb8/0xfc [<c058cd5a>] ? usb_alloc_urb+0xf/0x31 [<f8dd638c>] em28xx_isoc_audio_deinit+0x2f/0x6c [em28xx_alsa] [<f8dd6573>] em28xx_cmd+0x1aa/0x1c5 [em28xx_alsa] [<f8dd65e1>] snd_em28xx_capture_trigger+0x53/0x68 [em28xx_alsa] [<f8aa8674>] snd_pcm_do_start+0x1c/0x23 [snd_pcm] [<f8aa85d7>] snd_pcm_action_single+0x25/0x4b [snd_pcm] [<f8aa9833>] snd_pcm_action+0x6a/0x76 [snd_pcm] [<f8aa98f5>] snd_pcm_start+0x14/0x16 [snd_pcm] [<f8aae10e>] snd_pcm_lib_read1+0x66/0x273 [snd_pcm] [<f8aac5a3>] ? snd_pcm_kernel_ioctl+0x46/0x5f [snd_pcm] [<f8aae4a7>] snd_pcm_lib_read+0xbf/0xcd [snd_pcm] [<f8aad774>] ? snd_pcm_lib_read_transfer+0x0/0xaf [snd_pcm] [<f89feeb6>] snd_pcm_oss_read3+0x99/0xdc [snd_pcm_oss] [<f89fef9c>] snd_pcm_oss_read2+0xa3/0xbf [snd_pcm_oss] [<c064169d>] ? _cond_resched+0x8/0x32 [<f89ff0be>] snd_pcm_oss_read+0x106/0x150 [snd_pcm_oss] [<f89fefb8>] ? snd_pcm_oss_read+0x0/0x150 [snd_pcm_oss] [<c048c6e2>] vfs_read+0x81/0xdc [<c048c7d6>] sys_read+0x3b/0x60 [<c04039bf>] sysenter_do_call+0x12/0x34 ======================= The culprit in the trace is snd_pcm_action() which invokes a spin lock which disables pre-emption which disables an IRQ which causes the __might_sleep() function to fail the irqs_disabled() test. Since pre-emption is enabled then it is safe to de-allocate the memory if you first unlink each URB. In this instance you are safe since pre-emption is disabled. If pre-emption and irqs are not disabled then call usb_kill_urb(), else call usb_unlink_urb(). Thanks to Douglas for tracking down this bug originally!!! Priority: high Signed-off-by: Robert Krakora <rob.krakora@messagenetsystems.com> [dougsland@redhat.com: Fixed codyingstyle] Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-01-25em28xx: Correct mailing listDouglas Schilling Landgraf
From: Alexey Klimov <klimov.linux@gmail.com> Move development mail-list to linux-media on vger.kernel.org. Priority: normal Signed-off-by: Alexey Klimov <klimov.linux@gmail.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-01-24gspca - spca505: Move some sequences from probe to streamon.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> The webcams worked only one time after connection. Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-24merge: v4l-dvbJean-Francois Moine
2009-01-24gspca - main: Fix memory leak when USB disconnection while streaming.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Resetting the streaming flag on disconnection prevented the URBs to be freed when streaming was active. Also, USBs cannot be killed after disconnection (oops in [usbcore] unlink1). Priority: high Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-23videobuf-vmalloc: Fix: videobuf memory were never freedMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> videobuf_vmalloc_free() is never freeing the video buffer memory. Due to that, after multiple open/closes, user can suffer a panic: Kernel BUG at mm/slab.c:2650 invalid opcode: 0000 [1] SMP last sysfs file: /class/video4linux/video0/dev CPU 4 Modules linked in: vivi(U) videodev(U) v4l1_compat(U) v4l2_compat_ioctl32(U) videobuf_vmalloc(U) videobuf_core(U) ipv6 xfrm_nalgo autofs4 vmnet(U) vmblock(U) vmci(U) vmmon(U) ip_conntrack_netbios_ns ipt_REJECT xt_state ip_conntrack nfnetlink xt_tcpudp iptable_filter ip_tables x_tables cpufreq_ondemand dm_mirror dm_log dm_multipath scsi_dh dm_mod video backlight sbs i2c_ec button battery asus_acpi acpi_memhotplug ac lp testmgr_cipher testmgr aead crypto_blkcipher crypto_algapi crypto_api arc4 snd_hda_intel nvidia(PFU) snd_seq_dummy snd_seq_oss snd_seq_midi_event rt73usb crc_itu_t snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss tg3 sr_mod snd_pcm snd_timer snd_page_alloc snd_hwdep pcspkr rt2500usb cdrom rt2x00usb rt2x00lib libphy snd parport_pc soundcore shpchp serio_raw i2c_i801 i5400_edac parport ata_piix sg mac80211 edac_mc i2c_core cfg80211 ahci libata sd_mod scsi_mod ext3 jbd uhci_hcd ohci_hcd ehci_hcd Pid: 6215, comm: v4l-stress-buff Tainted: PF 2.6.18-118.el5 #1 RIP: 0010:[<ffffffff80017506>] [<ffffffff80017506>] cache_grow+0x1e/0x395 RSP: 0018:ffff810128a35d28 EFLAGS: 00010006 RAX: 0000000000000000 RBX: 00000000000080d0 RCX: 00000000ffffffff RDX: 0000000000000000 RSI: 00000000000080d0 RDI: ffff8101042d8340 RBP: ffff8101042ce5e0 R08: ffff81012fc1e8c0 R09: ffff8101042eac00 R10: 0000000000000000 R11: ffffffff882a5139 R12: ffff8101042d8340 R13: ffff8101042ce5c0 R14: 0000000000000000 R15: ffff8101042d8340 FS: 0000000000000000(0000) GS:ffff81012fc24d40(0063) knlGS:00000000f7f706c0 CS: 0010 DS: 002b ES: 002b CR0: 000000008005003b CR2: 00000000f7f9a000 CR3: 0000000117ad0000 CR4: 00000000000006e0 Process v4l-stress-buff (pid: 6215, threadinfo ffff810128a34000, task ffff810128fcb820) Stack: ffffc20012a39000 0000004415173ff8 ffff810000011c10 000280d200000000 0000000000000002 00000000ffffffff ffff8101042ce5e0 ffff81012fc1e8c0 ffff8101042ce5c0 000000000000000c ffff8101042d8340 ffffffff8005bdde Call Trace: [<ffffffff8005bdde>] cache_alloc_refill+0x136/0x186 [<ffffffff800d7822>] kmem_cache_alloc_node+0x98/0xb2 [<ffffffff800cda1f>] __vmalloc_area_node+0x62/0x153 [<ffffffff800cdd65>] vmalloc_user+0x15/0x50 [<ffffffff882a521f>] :videobuf_vmalloc:__videobuf_iolock+0xe6/0x155 [<ffffffff8838f958>] :vivi:buffer_prepare+0xb9/0xe6 [<ffffffff882981f3>] :videobuf_core:__videobuf_read_start+0xa2/0x10f [<ffffffff882983e6>] :videobuf_core:videobuf_read_stream+0x9c/0x1f3 [<ffffffff8000b3f3>] vfs_read+0xcb/0x171 [<ffffffff80011967>] sys_read+0x45/0x6e [<ffffffff8006149b>] sysenter_do_call+0x1b/0x67 Code: 0f 0b 68 af 1e 2a 80 c2 5a 0a f6 c7 20 0f 85 53 03 00 00 89 RIP [<ffffffff80017506>] cache_grow+0x1e/0x395 RSP <ffff810128a35d28> <0>Kernel panic - not syncing: Fatal exception Thanks to Douglas Schilling Landgraf <dougsland@gmail.com> for writing a stress tool for testing and to Robert Krakora <rob.krakora@messagenetsystems.com> to trace the code and discover the point where the bug were happening. Thanks also to Magnus Damm <damm@igel.co.jp> that provided us a fix for a similar bug on videobuf-dma-contig. Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-01-24af9015: New remote RM-KS for Avermedia Volar-XAntti Palosaari
From: Jose Alberto Reguero <jareguero@telefonica.net> The new Avermedia Volar-X is shipped with a new remote(RM-KS). The attached patch add a new option to the remote parameter of dvb_usb_af9015 for this remote. Priority: normal Signed-off-by: Felipe Morales Moreno <felipe.morales.moreno@gmail.com> Signed-off-by: Jose Alberto Reguero <jareguero@telefonica.net> Signed-off-by: Antti Palosaari <crope@iki.fi>
2009-01-23gspca - spca505: Simplify and add the brightness in start.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-23af9015: remove dual_mode module paramAntti Palosaari
From: Antti Palosaari <crope@iki.fi> Remove dual_mode module param. Possible 2nd FE seems not to be buggy any more and therefore can be enabled as default. Priority: normal Signed-off-by: Antti Palosaari <crope@iki.fi>
2009-01-22pvrusb2: Use usb_make_path() to determine device bus locationMike Isely
From: Mike Isely <isely@pobox.com> Priority: normal Signed-off-by: Mike Isely <isely@pobox.com>
2009-01-22gspca - spca505: Cleanup and optimize code.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-22gspca - t613: Bad returned value when no known sensor found.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-22gspca - t613: New unknown sensor added.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-22gspca - t613: Cleanup and optimize code.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-21gspca - main: Use usb_make_path() for VIDIOC_QUERYCAP.Jean-Francois Moine
From: Thierry MERLE <thierry.merle@free.fr> Priority: normal Signed-off-by: Thierry MERLE <thierry.merle@free.fr> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-20dib0700: Report dib0700_i2c_enumeration failuresDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Make it clear that a failure in dib0700_i2c_enumeration is a fatal condition and we cannot continue. If the failure occurs, do not attempt to attach to the tuner. Problem Noticed the issue when debugging an i2c issue a YUAN High-Tech STK7700PH for user Roshan Karki <roshan@olenepal.org>. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2009-01-20dib0700: fix i2c error message to make data type clearDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Make it clear that the address is in hex format. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2009-01-20dib0700: enable IR receiver in Nova TD usb stick (52009)Devin Heitmueller
From: Arne Luehrs <arne.luehrs@googlemail.com> Adds the IR data structure to the configuration datastructure of the Hauppauge WinTV Nova-TD USB stick (52009) Provided remote control is the same as theone provided with the Nova-T500 Card. Priority: normal Signed-off-by: Arne Luehrs <arne.luehrs@googlemail.com> Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2009-01-20s2255drv: use usb_make_path to report bus infoThierry MERLE
From: Thierry MERLE <thierry.merle@free.fr> usb_make_path reports canonical bus info. Use it when reporting bus info in VIDIOC_QUERYCAP. Priority: normal Signed-off-by: Thierry MERLE <thierry.merle@free.fr>
2009-01-27uvcvideo: use usb_make_path to report bus infoThierry MERLE
From: Thierry MERLE <thierry.merle@free.fr> usb_make_path reports canonical bus info. Use it when reporting bus info in VIDIOC_QUERYCAP. Priority: normal Signed-off-by: Thierry MERLE <thierry.merle@free.fr> Acked-by: Laurent Pinchart <laurent.pinchart@skynet.be>
2009-01-20em28xx: use usb_make_path to report bus infoThierry MERLE
From: Thierry MERLE <thierry.merle@free.fr> usb_make_path reports canonical bus info. Use it when reporting bus info in VIDIOC_QUERYCAP. Priority: normal Signed-off-by: Thierry MERLE <thierry.merle@free.fr>
2009-01-20usbvision: use usb_make_path to report bus infoThierry MERLE
From: Thierry MERLE <thierry.merle@free.fr> usb_make_path reports canonical bus info. Use it when reporting bus info in VIDIOC_QUERYCAP. Priority: normal Signed-off-by: Thierry MERLE <thierry.merle@free.fr>
2009-01-20gspca - main: Avoid error on set interface on disconnection.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-20merge:v4l-dvbJean-Francois Moine
2009-01-20gspca - zc3xx: Remove some useless tables of sensor adcm2700.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-20gspca - zc3xx: Remove duplicated sequence of sensor cs2102k.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-20gspca - zc3xx: Bad probe of the sensor adcm2700.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-19gspca - zc3xx: Sensor adcm2700 added.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-19em28xx: Add entry for GADMEI TVR200Douglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Added entry for GADMEI TVR200. Thanks to Yohanes Nugroho <yohanes@gmail.com> for testing and data collection. Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-01-19gspca - sonixj: Cleanup code.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-18gspca - spca561: Fix image problem in the 352x288 mode of rev72a.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> With the wrong clock value, the image had two moving colored lines. Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-01-18budget.c driver: Kernel oops: "BUG: unable to handle kernel paging request ↵Mauro Carvalho Chehab
at ffffffff" boundary="------------060402040603020802080803" From: Tony Broad <tony@byteworkshop.co.uk> I'm using a "Hauppauge WinTV-NOVA-T DVB card" of PCI id "13c2:1005" with kernel 2.6.27.9. I've recently experienced the following fairly consistent kernel oops on startup in grundig_29504_401_tuner_set_params from budget.c. As you might expect, following this failure, the card doesn't work. I'm not a kernel developer, nevertheless I seem to have managed to track this down to a non-existent initialisation of budget->dvb_frontend->tuner_priv. The attached patch fixes the problem for me (and I've managed to tune the card successfully as a result), but I don't know of anyone else using the driver so I can't test it on other people. Please let me know if this works for you or if I've done something terribly wrong ;-( BUG: unable to handle kernel paging request at ffffffff IP: [<f8981e11>] :budget:grundig_29504_401_tuner_set_params+0x3b/0xf8 *pde = 007e0067 *pte = 00000000 Oops: 0000 [#1] SMP Modules linked in: bridge stp bnep rfcomm l2cap asb100 hwmon_vid hwmon fuse ipt_REJECT nf_conntrack_ipv4 iptable_filter ip_tables ip6t_REJECT xt_tcpudp nf_conntrack_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables x_tables ipv6 loop dm_multipath scsi_dh ppdev snd_cmipci gameport snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_pcm_oss snd_mixer_oss l64781 snd_pcm snd_page_alloc snd_opl3_lib snd_timer parport_pc snd_hwdep parport btusb snd_mpu401_uart budget budget_core snd_rawmidi bluetooth saa7146 snd_seq_device ttpci_eeprom snd soundcore sr_mod i2c_sis96x cdrom dvb_core sis900 i2c_core floppy pcspkr mii sata_sil sg dm_snapshot dm_zero dm_mirror dm_log dm_mod pata_sis ata_generic pata_acpi libata sd_mod scsi_mod crc_t10dif ext3 jbd mbcache uhci_hcd ohci_hcd ehci_hcd [last unloaded: microcode] Pid: 2319, comm: kdvb-fe-0 Not tainted (2.6.27.9-73.fc9.i686 #1) EIP: 0060:[<f8981e11>] EFLAGS: 00010286 CPU: 0 EIP is at grundig_29504_401_tuner_set_params+0x3b/0xf8 [budget] EAX: f6417f00 EBX: f6f53808 ECX: 00000000 EDX: ffffffff ESI: f6f94404 EDI: f6417f00 EBP: f6417f10 ESP: f6417ef0 DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 Process kdvb-fe-0 (pid: 2319, ti=f6417000 task=f642b2c0 task.ti=f6417000) Stack: f6e39800 00000000 00000004 f6417f00 c064523c f6f53808 f6f53800 f6f94404 f6417f54 f8b2e45a f6417f24 00000286 f6417f4c f6417f38 00000000 00000286 f6417f3c c064520f f642b2c0 f6417f6c c064456f 00000001 f6f94400 00000001 Call Trace: [<c064523c>] ? _spin_lock_irqsave+0x29/0x30 [<f8b2e45a>] ? apply_frontend_param+0x27/0x357 [l64781] [<c064520f>] ? _spin_lock_irq+0x1c/0x20 [<c064456f>] ? __down_common+0x91/0xbf [<f894f25d>] ? dvb_frontend_swzigzag_autotune+0x17d/0x1a4 [dvb_core] [<f894f780>] ? dvb_frontend_swzigzag+0x1ac/0x209 [dvb_core] [<f894fcc8>] ? dvb_frontend_thread+0x2eb/0x3b3 [dvb_core] [<c043c166>] ? autoremove_wake_function+0x0/0x33 [<f894f9dd>] ? dvb_frontend_thread+0x0/0x3b3 [dvb_core] [<c043bec3>] ? kthread+0x3b/0x61 [<c043be88>] ? kthread+0x0/0x61 [<c040494b>] ? kernel_thread_helper+0x7/0x10 ======================= Code: ec 14 8b 80 00 02 00 00 8b 93 08 02 00 00 8d 7d e4 8b 40 20 89 45 e0 31 c0 85 d2 f3 ab 8d 45 f0 66 c7 45 e8 04 00 89 45 ec 74 09 <0f> b6 02 66 89 45 e4 eb 06 66 c7 45 e4 61 00 8b 0e be 0a 8b 02 EIP: [<f8981e11>] grundig_29504_401_tuner_set_params+0x3b/0xf8 [budget] SS:ESP 0068:f6417ef0 Signed-off-by: Oliver Endriss <o.endriss@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>