Commit Graph

266 Commits

Author SHA1 Message Date
Mario Rossi
a821e990e4 V4L/DVB (4955): Fix autosearch index
After rewriting the driver the wrong autosearch index was used when
COFDM-parameter needed to be detected.
Thanks to Mario Rossi who found it.

Signed-off-by: Mario Rossi <mariofutire@googlemail.com>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-27 10:23:24 -02:00
Rusty Scott
1444e5f591 V4L/DVB (4940): Or51211: Changed SNR and signal strength calculations
Removes embedded log functions and makes use of the DVB math functions to
provide SNR in dB.  The changes are modeled after recent changes made to
the LGDT330x frontends in lgdt330x.c

Signed-off-by: Rusty Scott <rustys@ieee.org>
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 09:22:53 -02:00
Rusty Scott
b2fb7f55a1 V4L/DVB (4939): Or51132: Changed SNR and signal strength reporting
Removes embedded log functions and makes use of the DVB math functions
to provide SNR in dB.  The changes are modeled after recent changes made
to the LGDT330x frontends in lgdt330x.c

Signed-off-by: Rusty Scott <rustys@ieee.org>
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 09:22:53 -02:00
Michael Krufky
0b6389ff16 V4L/DVB (4891): Lgdt330x: fix broken whitespace
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 09:05:24 -02:00
Michael Krufky
1b5b32bf87 V4L/DVB (4890): Lgdt330x: fix signal / lock status detection bug
In some cases when using VSB, the AGC status register has been known to
falsely report "no signal" when in fact there is a carrier lock.  The
datasheet labels these status flags as QAM only, yet the lgdt330x
module is using these flags for both QAM and VSB.
This patch allows for the carrier recovery lock status register to be
tested, even if the agc signal status register falsely reports no signal.
Thanks to jcrews from #linuxtv in irc, for initially reporting this bug.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 09:05:23 -02:00
Michael Krufky
fd83e2487e V4L/DVB (4869): Lgh06xf: use return value of dvb_pll_configure()
Use return value of dvb_pll_configure() to fill priv->frequency

In lgh06xf_set_params:
Rename int variable "err" to "result".
Remove needless calculation of the set frequency, since this value is now
being returned by dvb_pll_configure().

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 09:05:06 -02:00
Michael Krufky
89faeefcf8 V4L/DVB (4868): Dvb-pll: return frequency set by dvb_pll_configure()
This patch removes some duplicated code by returning the frequency set by
dvb_pll_configure(), instead of recalculating it again in dvb_pll_set_params()
and dvb_pll_calc_regs().
If the return value of dvb_pll_configure is less than zero, it is an error
code.  Otherwise, the return value is the frequency actually set by the
function.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Acked-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 09:05:05 -02:00
Michael Krufky
47ae9ae895 V4L/DVB (4867): Whitespace cleanup
- adhere to 80-column limit
- replace some spaces with tabs

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 09:05:04 -02:00
Patrick Boettcher
8949f1a242 V4L/DVB (4864): TDA826x I2C read with 2 messages
Added a dump I2C message to the TDA826x-driver to fix I2C read for
identification with ttusb2-driver.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 09:05:02 -02:00
Michael Krufky
fa4cdd0dc4 V4L/DVB (4850): Lgh06xf: fix compiler error when not selected
fix build error:
lgh06xf.h:29: error: syntax error before '{' token

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:51:34 -02:00
Michael Krufky
2213918a99 V4L/DVB (4847): Drivers/media/dvb/frontends: kfree() cleanups
We don't have to check for NULL before kfree()
Acked-by: Andrew de Quincey <adq_dvb@lidskialf.net>

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:51:33 -02:00
Michael Krufky
76db93d03f V4L/DVB (4846): Create new lgh06xf atsc tuner module
This patch creates a new atsc tuner module for the LG TDVS-H06xF ATSC tuners,
called lgh06xf.  The purpose of this change is to reduce some duplicated
code, and to allow the lgh06xf tuner code to take advantage of dvb_attach().
As a side effect, the dependency of dvb-bt8xx on dvb-pll has been removed,
since the lgh06xf module itself will use dvb-pll, while remaining optional
for the dvb-bt8xx driver through the use of DVB_FE_CUSTOMISE
Acked-by: Andrew de Quincey <adq_dvb@lidskialf.net>

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:51:32 -02:00
Hartmut Hackmann
550a9a5e5f V4L/DVB (4835): Added support for the Terratec Cinergy HT PCMCIA module
This is a hybrid cardbus module. Besides the card support, i 
modified the definition names for AGC and GPIO of the tda10046.

Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:51:27 -02:00
Andrew Morton
589d069cfe V4L/DVB (4794): Dvb: dibx000_common-fix
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:51:11 -02:00
Trent Piepho
19be685a4a V4L/DVB (4789): Lgdt330x: SNR and signal strength reporting
Update the SNR calculations to use the new dvb_math log function, and add
SNR calculations for all supported modulations for both lg dt3302 and dt3303.
The QAM equations don't appear in the dt3302 datasheet, so the ones from the
dt3303 datasheet were used.
SNR returned is the actual value in dB as 8.8 fixed point.
Reporting of real signal strength isn't supported, so rather than return 0,
which confuses some software and users, a re-scaled SNR value is returned.
Code originally by Rusty Scott.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Rusty Scott <rustys@ieee.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:51:09 -02:00
Christoph Haubrich
dbb2e6392b V4L/DVB (4788): Tda8083: support for uncorrectable blocks and bit error rate
Copied routines for uc blocks and BER from the removed tda80xx.c
into tda8083.c.

Signed-off-by: Christoph Haubrich <christoph1.haubrich@arcor.de>
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:51:08 -02:00
Patrick Boettcher
d92532d986 V4L/DVB (4773): Misc fixes for DiB3000 and DiB7000
This patch contains several fixes for the autosearch algorithm and other small ones.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:51:04 -02:00
Patrick Boettcher
a75763ffff V4L/DVB (4772): Add support for DiBcom DiB7000PC
This patch contains support for the DiB7000PC-driver.

Signed-off-by: Francois KANOUNNIKOFF <fkanounnikoff@dibcom.fr>
Signed-off-by: Patrick Boettcher <pboettcher@dibcom.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:51:03 -02:00
Patrick Boettcher
69ea31e7de V4L/DVB (4766): Add working dib7000m-module
First working version of the dib7000m-driver. 
This commit also makes the Hauppauge NOVA-T Stick working.

Signed-off-by: Francois Kanounnikoff <fkanounnikoff@dibcom.fr>
Signed-off-by: Patrick Boettcher <pboettcher@dibcom.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:51:00 -02:00
Patrick Boettcher
91bb9be6ff V4L/DVB (4524): Initial commit for the DiB7000M-demod
Initial commit for the driver for the DiB7000M COFDM demodulator.

Signed-off-by: Francois KANOUNNIKOFF <fkanounnikoff@dibcom.fr>
Signed-off-by: Patrick Boettcher <pboettcher@dibcom.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-12-10 08:50:46 -02:00
Mariusz Kozlowski
940cc2df93 [PATCH] make 1-bit bitfields unsigned
Keeps sparse happy.

Signed-of-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: Mauro Carvalho Chehab <mchehab@infradead.org>
Acked-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-07 08:39:38 -08:00
Andrew de Quincey
221a09d5c4 V4L/DVB (4874): Fix oops on symbol rate==0
The tda10086 causes an oops (divide by zero) if a zero symbol rate is used;
this prevents this.

Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-11-26 11:02:43 -02:00
Alexey Dobriyan
d027c4dc7d V4L/DVB (4795): Tda826x: use correct max frequency
sparse "defined twice" warning

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-11-13 08:17:19 -02:00
Trent Piepho
c5dec9fb24 V4L/DVB (4751): Fix DBV_FE_CUSTOMISE for card drivers compiled into kernel
When a front-end is disabled, card drivers that use it are compiled with
a stub version of the front-end's attach function.  This way they have no
references to the front-end's code and don't need it to be loaded.
If a card driver is compiled into the kernel, and a front-end is a
module, then that front-end is effectively disabled wrt the card driver. 
In this case, the card driver should get the stub version.  This was not
happening.
The stub vs real attach function selection is changed so that when the
front-end is a module the real attach function is only used if the card
driver is a module as well.  This means a module front-end will be
supported by card drivers that are modules and not supported by card
drivers compiled into the kernel.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-11-03 00:49:40 -03:00
Trent Piepho
6c8c21b911 V4L/DVB (4752): DVB: Add DVB_FE_CUSTOMISE support for MT2060
Let the MT2060 be customized like most of the other DVB PLLs/front-ends. 
Also, add a missing dependency on I2C.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-11-02 23:58:04 -03:00
Patrick Boettcher
5570dd02ca V4L/DVB (4750): AGC command1/2 is board specific
Added config-struct-parameter to take board-specific AGC command 1 and 2 into account.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-14 00:44:29 -03:00
Michael Krufky
c071fab453 V4L/DVB (4734): Tda826x: fix frontend selection for dvb_attach
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-14 00:44:06 -03:00
Michael Krufky
fc13d929cc V4L/DVB (4733): Tda10086: fix frontend selection for dvb_attach
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-14 00:44:02 -03:00
Steven Toth
9b5a4a676a V4L/DVB (4699): CX24109 patch to eliminate the weird mis-tunings
A number of people have been reporting wierd tuning problems with various
cards. Yeasah tracked down the problem to a miss-read datasheet. This
resolves the problems.

Signed-off-by: Yeasah Pell <yeasah@schwide.net>
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-03 15:15:04 -03:00
Patrick Boettcher
303cbeaaac V4L/DVB (4653): Misc fixes for Nova-T 500
- forward the clock to the slave undivided
- when sleeping the 3000 do not shutdown the clock

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-03 15:12:57 -03:00
Patrick Boettcher
01b4bf31ce V4L/DVB (4652): Misc fixes for DiB3000MC and Nova-T 500
- make the timing frequency update work.
- fix AGC calibration for Nova-T 500

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-03 15:12:50 -03:00
Patrick Boettcher
6958effedb V4L/DVB (4648): Hauppauge Nova-T 500 support added
This changeset finalizes the support of the Hauppauge Nova-T 500 (Dual DVB-T).
It adds correct AGC setting for the 3000P, correct firmware download state
detection.
Additionally it fixes the mt2060-driver to be able to be used with dvb_attach.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-03 15:12:36 -03:00
Patrick Boettcher
136cafbf4a V4L/DVB (4646): Misc. changes, DiB3000MC, MT2060
Changed the attach-function of the dib3000mc-driver to return only one
frontend. In case of multiple dib3000-chips on one board, one has to call the
i2c-enumeration manually before.
Added a field to Microtune 2060 config to output the clock to other
tuners/device on a board.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-03 15:12:27 -03:00
Andrew de Quincey
92cd24fea4 V4L/DVB (4610): Add tua6100 config wrapper
I had forgotten to add the wrapper round the tua6100_attach function if its
disabled in Kconfig

Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-09-26 12:30:35 -03:00
Andrew de Quincey
00be2e7c64 V4L/DVB (4606): Add driver for TUA6100
This driver was originally in budget-av.c, however I have extracted it into
a seperate file to permit reuse.
I also reworked the code to make it maintainable. I then examined the KNC1
windows drivers and rewrote the code in order to configure the PLL as they
do. This solves a lot of reported tuning problems.

Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-09-26 12:30:35 -03:00
Bradley Kite
1e9dadbe7a V4L/DVB (4600): Fix DVB Front-End Signal Strength Inconsistency
The cx22702 returns an 8 bit unshifted value for signal strength; this is 
inconsistent with most other frontends

Signed-off-by: Bradley Derek Kite <bradley.kite@gmail.com>
Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-09-26 12:30:35 -03:00
Trent Piepho
62a7b3e2ad V4L/DVB (4532): Isl6421: Release callback installed incorrectly
The release callback was installed in ops.release, it should have been
ops.release_sec.  This prevented to front-end release from getting
called.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-09-26 12:30:34 -03:00
Patrick Boettcher
fb6065bbd9 V4L/DVB (4530): Another fix for the PID parsing
Still the pid_parse bit was erased.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-09-26 12:30:34 -03:00
Patrick Boettcher
559463bba8 V4L/DVB (4529): Keep the PID parse bit when resetting the output mode
Matthieu Castet found that with the rewritten dib3000mc-driver the PID-parsing
was handled correctly. This changeset fixes it.
Thanks Matthieu

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-09-26 12:30:34 -03:00
Mauro Carvalho Chehab
1e805e679a V4L/DVB (4523): Fix a warning caused by a typo (comma instead of dot-comma)
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-09-26 12:30:34 -03:00
Chris Pascoe
fc3398d8b3 V4L/DVB (4496): Tuning tweaks for ZL10353
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>
2006-09-26 12:30:32 -03:00
Chris Pascoe
8fb957841b V4L/DVB (4495): Fix "no data from ZL10353 based USB tuner" problem
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>
2006-09-26 12:30:32 -03:00
Oliver Endriss
b5b168d7b9 V4L/DVB (4493): [lnbp21] release callback fixed
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>
2006-09-26 12:30:32 -03:00
Patrick Boettcher
c6d74c2ce8 V4L/DVB (4481): Make the dibx000-common-module GPL
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>
2006-09-26 12:30:31 -03:00
Yeasah Pell
ef76856d26 V4L/DVB (4479): LNB voltage control was inverted for the benefit of geniatech cards on Kworld
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>
2006-09-26 12:30:14 -03:00
Mauro Carvalho Chehab
d93f8860cc V4L/DVB (4477): Improve hardware algorithm by setting the appropriate registers
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>
2006-09-26 11:53:51 -03:00
Patrick Boettcher
a202a5bfb6 V4L/DVB (4472): Remove debug-print from dib3000mc
Removed and commented a small debug function.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-09-26 11:53:49 -03:00
matthieu castet
294d83d7fe V4L/DVB (4470): MT2060: turn on the VGA
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>
2006-09-26 11:53:48 -03:00
Patrick Boettcher
4e66c97c92 V4L/DVB: DiB3000MC: set FE to NULL after being freed
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>
2006-09-26 11:53:48 -03:00
Patrick Boettcher
42afd06170 V4L/DVB (4461): Added missing dibx000-common code and headers
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>
2006-09-26 11:53:46 -03:00