1. 17 Feb, 2009 6 commits
    • Adam Baker's avatar
      V4L/DVB (10619): gspca - main: Destroy the URBs at disconnection time. · ad28127d
      Adam Baker authored
      If a device using the gspca framework is unplugged while it is still streaming
      then the call that is used to free the URBs that have been allocated occurs
      after the pointer it uses becomes invalid at the end of gspca_disconnect.
      Make another cleanup call in gspca_disconnect while the pointer is still
      valid (multiple calls are OK as destroy_urbs checks for pointers already
      being NULL.
      Signed-off-by: default avatarAdam Baker <linux@baker-net.org.uk>
      Signed-off-by: default avatarJean-Francois Moine <moinejf@free.fr>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      ad28127d
    • Mauro Carvalho Chehab's avatar
      V4L/DVB (10572): Revert commit dda06a8e · 28100165
      Mauro Carvalho Chehab authored
      On Mon, 02 Feb 2009, Hartmut wrote:
      
      This change set is wrong. The affected functions cannot be called from
      an interrupt context, because they may process large buffers. In this
      case, interrupts are disabled for a long time. Functions, like
      dvb_dmx_swfilter_packets(), could be called only from a tasklet.
      
      This change set does hide some strong design bugs in dm1105.c and
      au0828-dvb.c.
      
      Please revert this change set and do fix the bugs in dm1105.c and
      au0828-dvb.c (and other files).
      
      On Sun, 15 Feb 2009, Oliver Endriss wrote:
      
      This changeset _must_ be reverted! It breaks all kernels since 2.6.27
      for applications which use DVB and require a low interrupt latency.
      
      It is a very bad idea to call the demuxer to process data buffers with
      interrupts disabled!
      
      On Mon, 16 Feb 2009, Trent Piepho wrote:
      
      I agree, this is bad.  The demuxer is far too much work to be done with
      IRQs off.  IMHO, even doing it under a spin-lock is excessive.  It should
      be a mutex.  Drivers should use a work-queue to feed the demuxer.
      
      Thank you for testing this changeset and discovering the issues on it.
      
      Cc: Trent Piepho <xyzzy@speakeasy.org>
      Cc: Hartmut <e9hack@googlemail.com>
      Cc: Oliver Endriss <o.endriss@gmx.de>
      Cc: Andreas Oberritter <obi@linuxtv.org>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      28100165
    • Tobias Lorenz's avatar
      V4L/DVB (10533): fix LED status output · 2f94fc46
      Tobias Lorenz authored
      This patch closes one of my todos that was since long on my list.
      Some people reported clicks and glitches in the audio stream,
      correlated to the LED color changing cycle.
      Thanks to Rick Bronson <rick@efn.org>.
      Signed-off-by: default avatarTobias Lorenz <tobias.lorenz@gmx.net>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      2f94fc46
    • Tobias Lorenz's avatar
      V4L/DVB (10532): Correction of Stereo detection/setting and signal strength indication · d807dec5
      Tobias Lorenz authored
      Thanks to Bob Ross <pigiron@gmx.com>
      - correction of stereo detection/setting
      - correction of signal strength indicator scaling
      Signed-off-by: default avatarTobias Lorenz <tobias.lorenz@gmx.net>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      d807dec5
    • Mauro Carvalho Chehab's avatar
      V4L/DVB (10527): tuner: fix TUV1236D analog/digital setup · ef88f2b5
      Mauro Carvalho Chehab authored
      As reported by David Engel <david@istwok.net>, ATSC115 doesn't work
      fine with mythtv. This software opens both analog and dvb interfaces of
      saa7134.
      
      What happens is that some tuner commands are going to the wrong place,
      as shown at the logs:
      
      Feb 12 20:37:48 opus kernel: tuner-simple 1-0061: using tuner params #0 (ntsc)
      Feb 12 20:37:48 opus kernel: tuner-simple 1-0061: freq = 67.25 (1076), range = 0, config = 0xce, cb = 0x01
      Feb 12 20:37:48 opus kernel: tuner-simple 1-0061: Freq= 67.25 MHz, V_IF=45.75 MHz, Offset=0.00 MHz, div=1808
      Feb 12 20:37:48 opus kernel: tuner 1-0061: tv freq set to 67.25
      Feb 12 20:37:48 opus kernel: tuner-simple 1-000a: using tuner params #0 (ntsc)
      Feb 12 20:37:48 opus kernel: tuner-simple 1-000a: freq = 67.25 (1076), range = 0, config = 0xce, cb = 0x01
      Feb 12 20:37:48 opus kernel: tuner-simple 1-000a: Freq= 67.25 MHz, V_IF=45.75 MHz, Offset=0.00 MHz, div=1808
      Feb 12 20:37:48 opus kernel: tuner-simple 1-000a: tv 0x07 0x10 0xce 0x01
      Feb 12 20:37:48 opus kernel: tuner-simple 1-0061: tv 0x07 0x10 0xce 0x01
      
      This happens due to a hack at TUV1236D analog setup, where it replaces
      tuner address, at 0x61 for 0x0a, in order to save a few memory bytes.
      
      The code assumes that nobody else would try to access the tuner during
      that setup, but the point is that there's no lock to protect such
      access. So, this opens the possibility of race conditions to happen.
      
      Instead of hacking tuner address, this patch uses a temporary var with
      the proper tuner value to be used during the setup. This should save
      the issue, although we should consider to write some analog/digital
      lock at saa7134 driver.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      ef88f2b5
    • Trent Piepho's avatar
      V4L/DVB (10516a): zoran: Update MAINTAINERS entry · f63145e2
      Trent Piepho authored
      Ronald Bultje hasn't been maintaining the zoran driver for some time.
      Re-direct people to the mailing lists and web pages.
      
       MAINTAINERS |    6 +++---
      Signed-off-by: default avatarTrent Piepho <xyzzy@speakeasy.org>
      Acked-by: default avatarJean Delvare <khali@linux-fr.org>
      Acked-by: default avatarRonald S. Bultje <rbultje@ronald.bitfreak.net>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      f63145e2
  2. 13 Feb, 2009 33 commits
  3. 12 Feb, 2009 1 commit