There are several boards on V4L that can work with several different
helper modules for audio/video encoding/decoding and similar stuff.
This patch adds the capability of choicing between autoselecting the
pertinent helper modules for each driver, or to manually selecting
them.
Acked-by: Michael Krufky <mkrufky@linuxtv.org>
Acked-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Several audio/video encoders/decoders were just bound as if they were
part of the core driver.
In fact, they are generic enough to be used by other drivers as well,
since they use I2C event bus to communicate.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Several audio decoders were just bound as if they were part of
bttv driver. In fact, they are generic enough to be used by other
drivers as well, since they use I2C event bus to communicate.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
when checking the -Wextra signedness warnings issued by gcc 4.1
I came across this one:
drivers/media/video/vivi.c:1001: warning: comparison of unsigned expression < 0 is always false
Since videobuf_reqbufs() returns negative values on errors the current
code does no real error checking since gcc removes the comparison.
This patch fixes this issue by making ret a normal, signed integer.
Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Several changes at register stuff were done since commit
b45009b028, but I've forgot
to add the copyright line for this. Those changes allowed
cx88 to have multiple tuners, allowing it to support hardware with
separated radio and video tuners. It also allows binding a tuner to an
specific i2c address.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
The Coverity checker spotted the following two array overflows.
Registers 0xcc and 0xdc were cached on reg[] array, with only 128 elements,
instead of 256.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
cx88-alsa can be compiled in (in distro built kernels, for example), but
not used. In those cases, the audio DMA restart is needed for proper sound
on NICAM channels.
This patch enables the DMA restart even with ALSA, but the functions now
check if cx88-alsa is really active.
Signed-off-by: Ricardo Cerqueira <v4l@cerqueira.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Apparently there are two types of knc1 dvb-s plus cards with different tuners
(as for the knc1 dvb-s ones). This patch adds support for those cards with
subsystem id 1894:0011.
Successfully tested by: Benjamin Weber <benny1990@gmail.com>
Signed-off-by: Christoph Pfister <christophpfister@gmail.com>
Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This actually needs the same configuration as the other DVBC cards; simply
no one had managed to test before to find out.
Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Although not dangerous, it may allow a normal user with access to a machine
to untune a TV channel.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
If the FX2 does not reset properly during reboot, it can present an
invalid USB device ID and fail to attach. Prevent this situation
from occuring by resetting the USB part of the card when the PCI part
probes.
Also fix the GPIO configurations so that analog capture will not
inadvertantly reset the USB part.
Signed-off-by: Chris Pascoe <c.pascoe@itee.uq.edu.au>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
More register setup which improves the ZL10353's tuning characteristics.
Signed-off-by: Chris Pascoe <c.pascoe@itee.uq.edu.au>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Force parallel transport stream output on the ZL10353 attached to a
bluebird device.
Addresses the problem where a frontend lock was observed, but no MPEG
transport data was received.
Signed-off-by: Chris Pascoe <c.pascoe@itee.uq.edu.au>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
lnbp21 module must use fe->ops.release_sec, not fe->ops.release.
The release function of the frontend driver was never called for cards
with lnbp21...
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
dvb_frontend_detach() used invalid config option CONFIG_DVB_DETACH,
so dvb_frontend_detach() did not call symbol_put_addr().
Replaced CONFIG_DVB_DETACH by CONFIG_DVB_CORE_ATTACH.
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
If an eeprom defined two tuners and they supported more than eight
standards combined (as opposed to each), it would overflow an array.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/video/pvrusb2/pvrusb2-i2c-cmd-v4l2.c: In function 'set_standard':
drivers/media/video/pvrusb2/pvrusb2-i2c-cmd-v4l2.c:33: warning: format '%llx' expects type 'long long unsigned int', but argument 2 has type 'v4l2_std_id'
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/radio/radio-cadet.c: In function 'cadet_do_ioctl':
drivers/media/radio/radio-cadet.c:362: warning: implicit declaration of function 'KERNEL_VERSION'
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Forget to put the MODULE-define and thus to give the license. Now GPL
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
DVB null terminates its device names, which seems odd, and should be
unnecessary.
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
1) It sets LNBDCPol differently based on the card type. Now it should
work properly for both the kworld and geniatech cards.
2) It stops returning an error for the SEC_VOLTAGE_OFF voltage command
(the cx88-dvb level handles the actual voltage on/off, but it still
passes the ioctl down to the cx24123 level, which previously rejected
the OFF as invalid so the ioctl would report failure)
Acked-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Yeasah Pell <yeasah@schwide.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Some DVB-T cards with Grundig 29504-401 tuner use subsystem id 13c2:0001
(reported by Stuart Butterfield).
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Hardware algorithm needs to be configured to:
1) Increase timeout constants, to detect weaker signals;
2) do a wider zigzag search.
Acked-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Tested on x64 with a bttv board. Most Get ioctls are fixed. The only
non-completely working one is VIDIOCGAUDIO. All other IOR ioctls give the
same results on x86_64 and i386 architectures.
Thanks to Alastair Poole <netstar@gatheringofgray.com> for part of this
patch and tests on ppc64.
Signed-off-by: Alastair Poole <netstar@gatheringofgray.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Removed and commented a small debug function.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
The VGA was not turned on after calling sleep. This lead to bad performance in difficult areas.
Signed-off-by: matthieu castet <castet.matthieu@free.fr>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Another stupid fix for attaching the DiB3000MC. == 0 instead of != 0.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
DiB3000MC: set FE to NULL after being freed
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
A new revision of the Avermedia A800 does not reenumerate after download the firmware.
Signed-off-by: Klaus Frahm <frahm@irsamc.ups-tlse.fr>
Signed-off-by: Martin Habbecke <M.Habbecke@gmx.de>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Thomas Rokamp and others are reporting:
"I have now with success extracted a working firmware for the 93004 rev. C1A2."
This patch increments the firmware version to 2.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Flynn Marquardt found out that there is problem with the new dib3000mc-driver
when using with the real dib3000mc. It resulted in a segfault.
Fixed two things: use the correct I2C address and do not attach a tuner, when
the demod was previously failing.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
The first commit omitted the common-code and header-files.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
A complete rewrite of the DiB3000MC/P driver has been done. It is now much more
easy to maintain and to get improvements inside.
Additionally the tuning time has been reduced and the usage of the driver is
much more understandable now.
Signed-off-by: Patrick Boettcher <pboettcher@dibcom.fr>
Signed-off-by: Francois KANOUNNIKOFF <fkanounnikoff@dibcom.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
removing the dib3000-common-module. The common stuff is not common anymore - it will be only used by the 3000mb-driver.
A new 3000mc/p-driver will be added which will share common stuff with dib7000.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
new tuner api
minor fixes for tuning
Signed-off-by: Olivier DANET <odanet@caramail.com>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
When debugging was disabled at lot of empty lines where printed anyway.
Reported by Rolf Ahrenberg and Sergei Haller.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Some minor code cleanups and added the MT2060 to new v4l-dvb-build-system, preliminarily under dvb/frontends.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
+ Added support for the remote control shipped with the pen drive size
DVB-T receiver
[ID 10b8:0bc7 DiBcom DiBcom USB2.0 DVB-T reference design (MOD3000P)]
Signed-off-by: Sergei Haller <sergei@sergei-haller.de>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
- AGC gain set to 3
- The tuning sequence has been changed to match the DibCom driver ( from I2C
spy captures )
- For LITE-ON adapters : The IF1 frequency is now tuned according to the
calibration values stored in EEPROM.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Olivier DANET <odanet@caramail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Adding the USB ids for the LeadTek clone of the STK3000P-ref-design.
Signed-off-by: Olivier DANET <odanet@caramail.com>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Adding the USB IDs to dibusb-mc.c for the Artec T14 USB Stick based on STK3000P reference design.
Thanks to Thomas Rabe testing.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>