1. 07 4月, 2009 1 次提交
  2. 30 3月, 2009 4 次提交
  3. 29 1月, 2009 1 次提交
    • M
      V4L/DVB (10201): Fixes cx88 compilation bug · 77f56279
      Mauro Carvalho Chehab 提交于
      Randy Dunlap <randy.dunlap@oracle.com> wrote:
      
      > linux-next-20090108/drivers/media/video/cx88/cx88-i2c.c: In function 'cx88_call_i2c_clients':
      > linux-next-20090108/drivers/media/video/cx88/cx88-i2c.c:122: error: 'struct cx88_core' has no member named 'gate_ctrl'
      > linux-next-20090108/drivers/media/video/cx88/cx88-i2c.c:123: error: 'struct cx88_core' has no member named 'gate_ctrl'
      > linux-next-20090108/drivers/media/video/cx88/cx88-i2c.c:127: error: 'struct cx88_core' has no member named 'gate_ctrl'
      > linux-next-20090108/drivers/media/video/cx88/cx88-i2c.c:128: error: 'struct cx88_core' has no member named 'gate_ctrl'
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      77f56279
  4. 08 1月, 2009 1 次提交
    • M
      V4L/DVB (10190): cx88: Fix some Kbuild troubles · e32fadc4
      Mauro Carvalho Chehab 提交于
      As Randy Dunlap <randy.dunlap@oracle.com> reported, cx88 has some compilation issues:
      
      drivers/built-in.o: In function `cx88_call_i2c_clients':
      (.text+0x20af17): undefined reference to `videobuf_dvb_get_frontend'
      drivers/built-in.o: In function `cx8802_probe':
      cx88-mpeg.c:(.devinit.text+0x268c4): undefined reference to `videobuf_dvb_alloc_frontend'
      cx88-mpeg.c:(.devinit.text+0x268ea): undefined reference to `videobuf_dvb_dealloc_frontends'
      
      With those configs:
      
      CONFIG_VIDEO_CX88=y
      CONFIG_VIDEO_CX88_BLACKBIRD=y
      CONFIG_VIDEO_CX88_DVB=m
      CONFIG_DVB_CORE=m
      
      After carefully examining the code, with the current code, several cx88 drivers
      (cx8800, cx8802, cx88_dvb and cx88_blackbird) should be compiled as a module,
      if one of them is marked as such. Just fixing Kconfig could create a very complex
      set of rules. Also, this hides a problem with the current approach where the dvb
      functionality weren't confined inside dvb module.
      
      What happens is that:
      	- cx88-i2c (part of cx8800) has some special rules if DVB;
      	- cx88-mpeg (cx8802 module) has also part of DVB init code;
      	- cx88-dvb has the rest of the dvb code;
      	- cx88-blackbird can be used with cx88-mpeg, having cx88-dvb or not.
      
      So, instead of doing some tricks at Kconfig and wait for a next breakage,
      this patch moves the dvb code inside cx88-i2c and cx88-mpeg into cx88-dvb.
      
      Another problem is that cx8802 were being compiled, even without cx88-dvb
      and cx88-blackbird modules.
      
      While on this code, let's fix also a reported problem:
      http://www.linuxtv.org/pipermail/linux-dvb/2009-January/031225.html
      
      A solution for the issue were proposed here:
      http://www.mail-archive.com/linux-media@vger.kernel.org/msg00021.html
      
      Thanks to Randy, Andy, Gregoire and Thomas for helping us to detect
      and solve the issues.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      e32fadc4
  5. 03 1月, 2009 1 次提交
  6. 30 12月, 2008 4 次提交
  7. 11 11月, 2008 1 次提交
  8. 18 10月, 2008 3 次提交
    • D
      V4L/DVB (9269): cx88: add I2S-ADC tvaudio method · 430189da
      Darron Broad 提交于
      This adds I2S-ADC tvaudio mode as a formal method of audio
      delivery.
      
      This fixes one bug and adds fm audio via I2S-ADC on cards
      that support it.
      
      The bug occured before when I2S-ADC mode was initiated on
      composite/s-video open but was then reset within 500ms
      by the audio thread which used any previous audio tuning
      details.
      Signed-off-by: NDarron Broad <darron@kewl.org>
      Signed-off-by: NSteven Toth <stoth@linuxtv.org>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      430189da
    • D
      V4L/DVB (9228): cx88: Add audio routing for the hvr-3000/4000 · 923ac7f7
      Darron Broad 提交于
      This adds audio routing on the hvr-3000/4000
      
      This is a preliminary patch for later routing
      requirements.
      
      This adds line-in support on the 2 cards mentioned.
      It is also apparent that there is an initial open
      fault for line-in when opening composite/s-video.
      This will be fixed later.
      
      It was also noticed that the bit-field for audio
      routing which was 2 bits needs an increase as
      the WM8775 for example, allows a value 4 bits
      wide for it's audio mux.
      Signed-off-by: NDarron Broad <darron@kewl.org>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      923ac7f7
    • S
      V4L/DVB (9222): S2API: Add Multiple-frontend on a single adapter support. · 363c35fc
      Steven Toth 提交于
      A detailed description from the original patches 2 years ago:
      
      "The WinTV-HVR3000 has a single transport bus which is shared between
      a DVB-T and DVB-S modulator. These patches build on the bus acquisition
      cx88 work from a few weeks ago to add support for this.
      
      So to applications the HVR3000 looks like this:
      /dev/dvb/adapter0/fe0 (cx24123 DVB-S demod)
      /dev/dvb/adapter0/fe1 (cx22702 DVB-T demod)
      
      Additional boards continue as before, eg:
      /dev/dvb/adapter1/fe0 (lgdt3302 ATSC demod)
      
      The basic change is removing the single instance of the videobuf_dvb in
      cx8802_dev and saa7134_dev(?) and replacing it with a list and some
      supporting functions.
      
      *NOTE* This branch was taken before v4l-dvb was closed for 2.6.19 so
      two or three current cx88 patches appear to be reversed by this tree,
      this will be cleaned up in the near future. The patches missing change
      the mutex handing to core->lock, fix an enumeration problem."
      
      It should be recognised that a number of people have been maintaining
      this patchset. Significant levels of Kudos to everyone one involved,
      including but not limited to:
      
      Darron Broad
      Fabio M. Di Nitto
      Carlo Scarfoglio
      Hans Werner
      
      Without the work of these people, and countless others, my two year old
      patches would of died on the Mercurial linuxtv.org vine a long time
      ago.
      
      TODO: Revise these patches a little further so that the need for
      demux1 and dvr0 is optional, not mandatory on the HVR3000.
      
      HISTORY (darron):
      This is the last update to MFE prepared by Hans which is based
      upon the `scratchpad' diff created by Carlo.
      All MFE work prior to that point must be attributed to Fabio
      who ported and maintained Steve's original patch up to that
      time.
      Signed-off-by: NSteven Toth <stoth@linuxtv.org>
      Signed-off-by: NDarron Broad <darron@kewl.org>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      363c35fc
  9. 13 10月, 2008 1 次提交
  10. 12 10月, 2008 8 次提交
  11. 26 7月, 2008 1 次提交
  12. 25 4月, 2008 7 次提交
  13. 18 2月, 2008 1 次提交
  14. 26 1月, 2008 5 次提交
  15. 22 10月, 2007 1 次提交
    • T
      V4L/DVB (6334): cx88: Change (struct cx8802_dev)->drvlist to a list_head and fix bugs · 081c2fc8
      Trent Piepho 提交于
      It was a struct cx8802_driver for no apparent reason.  Nothing uses a
      cx8802_driver in the cx8802_dev struct.  The only field that was used was
      devlist, a list_head.
      
      The code in cx8802_remove() that removed any loaded sub-drivers was broken.
      It would delete the current list entry, but didn't use list_for_each_safe.  It
      also called list_del() on the list _head_ inside the list_for_each loop?  It
      would crash if it was run, which I don't think can ever happen.
      
      Since the cx8802 sub-drivers use the cx8802 driver, they have to be unloaded
      first.  So there isn't any way for a sub-driver to still be loaded when
      cx8802_remove() is called...  Except maybe with PCI hot-plug, if one removes
      the PCI card while the drivers are loaded?
      
      So I left some code in to handle that if it's actually possible.  It will
      remove the sub-drivers from the device cx8802_remove() was called on, and only
      that device.  If one has two DVB cards and unplugs one, there is no reason to
      unload the DVB drivers for both cards.  I have no way to test this, but it
      can't be worse than what was there before.
      
      cx8802_get_driver() is passed a cx8802_dev pointer and looks for the requested
      driver on that device.  It first loops over the cx8802 device list looking for
      the device it was passed, which is pointless.  It doesn't need to find the
      device pointer in the list, as it already has the pointer.
      
      The list_head in the cx8802_driver struct, which joins all the _drivers_
      attached to a device, was named devlist.  Changed that to drvlist, since the
      devlist is used for a list of _devices_ in other cx8802 structs.
      Signed-off-by: NTrent Piepho <xyzzy@speakeasy.org>
      Reviewed-by: NMichael Krufky <mkrufky@linuxtv.org>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@infradead.org>
      081c2fc8