Age | Commit message (Collapse) | Author |
|
From: Michael Krufky <mkrufky@linuxtv.org>
Add module options to tuner-simple, called "atv_input" and "dtv_input"
to specify which rf input to use on devices with multiple rf inputs.
If the module option is not specified, then the driver will autoselect
the rf input, as per previous behavior.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
TUNER_PHILIPS_ATSC is an ambiguous name for a tuner. Rename it to
TUNER_PHILIPS_FCV1236D to be more descriptive.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
simple_dvb_configure returns the actual tuned frequency to its caller, so
it must be declared as a u32 rather than an int. As a result, we will
return 0 to indicate a failure.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Enable digital tuning support within tuner-simple. This will allow for a
single tuner module to manage the hardware, without having dvb-pll loaded.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Enable digital tuning support within tuner-simple. This will allow for a
single tuner module to manage the hardware, without having dvb-pll loaded.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
taken from dvb-pll
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
if (priv->i2c_props.adap == NULL) then exit any function that would
send commands over the i2c bus. We allow drivers to attach without an
i2c adapter for cases where the dvb demod accesses the tuner directly
via calc_regs.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Add entry points used for digital tuning via the dvb_frontend.
Share state data between multiple instances of the driver for hybrid
tuners.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
simple_set_tv() creates a buffer with 4 elements, and calls
simple_std_setup(), passing &buffer[1]. This makes the 5th element of buffer to
be initialized to 0, overriding some area outside the buffer.
Also, simple_std_setup() receives a buffer as parameter, but the buffer is
just overriden after the call, so, it doesn't make much sense to pass it as a
parameter.
This patch removes buffer[] from the function call, creating, instead, a local
var to be used internally.
Thanks to Axel Rometsch <axel.rometsch@freenet.de> for pointing the issue.
Reviewed-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Store a pointer to the device name in the name field of
struct tuner_i2c_props, so that we can remove the
printk macros defined in tuner-i2c.h
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Move the switch..case blocks with device-specific code from functions
simple_set_tv_freq and simple_set_radio_freq
...into three new functions:
simple_std_setup, simple_post_tune and simple_radio_bandswitch
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
This patch fully removes the dependency of tuner-core on
tuner-types.
There is no longer any need to pass struct tunertype in attach-time
config structure - instead pass the tuner type ID.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Move tuner type ID check from tuner-core::set_type to simple_tuner_attach.
Since tuner-core forwards all attach requests to tuner-simple as the
default case, unless a specific attach function is specified in
set_type, this change is an appropriate cleanup.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
fix debug in simple_config_lookup to display frequency in MHz
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Move some reuseable code out of simple_set_tv_freq into separate functions.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Currently, the only tuner-specific device that allows special
configurations is tda9887. However, tea5767 also may require some
special configurations (for example, to specify a different Xtal freq).
This patch replaces TDA9887_SET_CONFIG by a more generic internal ioctl
(TUNER_SET_CONFIG). The newer one allows specifying what tuner is
appliable to a configuration set, and allows an arbitrary configuration
struct.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Acked-by: Hans Verkuil <hverkuil@xs4all.nl>
Acked-by: Mike Isely <isely@pobox.com>
Acked-by: Steven Toth <stoth@hauppauge.com>
Acked-by: Patrick Boettcher <pb@linuxtv.org>
Acked-by: Jarod Wilson <jwilson@redhat.com>
Acked-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
To ease the conversion of the analog tuner sub-drivers into dvb_frontend
style tuner modules, we must remove the i2c_client interface.
dvb_frontend style tuner modules use i2c_transfer directly on the i2c_adapter.
This change only alters the interface between tuner.ko and the tuner
sub-drivers. The v4l2 / i2c_client interface to tuner.ko remains intact.
This patch adds inline functions tuner_i2c_xfer_send, and tuner_i2c_xfer_recv,
to replace i2c_master_send and i2c_master_recv inside the tuner sub-drivers.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Acked-by: Hans Verkuil <hverkuil@xs4all.nl>
Acked-by: Mike Isely <isely@pobox.com>
Acked-by: Steven Toth <stoth@hauppauge.com>
Acked-by: Patrick Boettcher <pb@linuxtv.org>
Acked-by: Jarod Wilson <jwilson@redhat.com>
Acked-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Since at least kernel 2.6.12-rc2, module.h includes moduleparm.h. This
patch removes all occurences of moduleparm.h from drivers/media files.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
kernel headers go above subsystem headers
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
tuner-simple is the only sub-driver that uses last_div, so we can free up
two bytes of memory for all other tuners, by moving this into tuner-simple's
private data area.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Add radio support for the Thomson DTT7612 tuner.
This tuner uses a different 1st intermediate frequency than the other radio
tuners supported (a lot of NTSC radio tuners probably need this change too).
Add a new tuner-simple parameter, radio_if. It selects the 1st IF used for
radio reception. The radio frequency setting code in tuner-simple now uses
this field, instead of a special case select() block for each tuner with radio
support.
The tuner parameters for tuners that used a 33.3 MHz RIF now set radio_if to 1
in tuner-types.c.
The Thomson DTT7612 gets radio_if = 2, also add has_tda9887 = 1 and
fm_gain_normal = 1.
Add some defines for tda9887 bits that control IF setting in radio mode.
Add a new tda9887 config option, TDA9887_RIF_41_3, that selects a 41.3 MHz
radio IF.
Fix the way tda9887 radio options work. The driver was modifying the default
radio mode config templates based on the TDA9887_XXXX flags. This means that
_all_ tuners would get the same settings. If you had a one tuner than used
TDA9887_GAIN_NORMAL and one that didn't, both would get the setting. Now the
tda9987 driver just checks if tuner mode is radio and then applies the config
settings directly to the data being sent, just like how all the TV mode
settings already work.
The PLL setting math is made a little more accurate.
And a grammar error in a printk is fixed.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Move internal structures and debug macros to drivers/media/video/tuner-driver.h
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Create static struct tuner_operations simple_tuner_ops
for tuner-simple tuning function callback pointers
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Move tuner callback function pointers out of struct tuner, into
struct tuner_operations.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Some macros were using very weird names, like PAL/L (this std doesn't
exist). Fixing it.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: matthieu castet <castet.matthieu@free.fr>
allow to use SECAM-BG with the FI1216MF tuner.
The selection is done with the secam=B module argument.
The default behaviour should be the same as before.
Signed-off-by: Matthieu CASTET <castet.matthieu@free.fr>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Hartmut Hackmann <hartmut.hackmann@t-online.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Some tuners require using cGainNormal instead of cGainLow for
high sensibility on FM reception.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
The TUNER_LG_NTSC_TAPE is identical in all respects to the
TUNER_PHILIPS_FM1236_MK3. So use the params struct for the Philips tuner.
Also add this LG_NTSC_TAPE tuner to the switches where radio specific
parameters are set so it behaves like a TUNER_PHILIPS_FM1236_MK3. This
change fixes the radio support for this tuner (the wrong bandswitch byte
was used).
Thanks to Andy Walls <cwalls@radix.net> for finding this bug.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Add a tuner config parameter for TDA9887, default_pll_gating_18, that
changes the L standard PLL gating value from 36% to 0% (datasheet says
0%, tda9887 code says 18%).
Turn this on for Microtune 4049FM5, as recomended by tuner datasheet.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: 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>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
A buffer was set just before an if block, and then again in both branches
of the if. Obvious coding error.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
With the LG H06xF tuners, an auxiliary byte must be sent after the
standard four-byte i2c sequence. The code that does this is currently in
the wrong place, causing random bytes to be written to the tuner over
i2c in the set_type function.
This patch moves this code from set_type to default_set_tv_freq.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Many tda9887 settings depend on the chosen tuner. Expand the tuner parameters
to include these tda9887 settings.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
With tuner_debug enabled, if a tuner tries to use a video standard that doesn't
have a matching tuner_params defined, the IFPCoff value and tuner number will
be displayed, and the default tuner_params entry will be used.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
If a given tuner definition contains more than one tuner_params array members,
it will try to select the appropriate tuner_params based on the video standard
in use. If there is no tuner_params defined for the current video standard, it
will select the default, tuner_params[0]
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Right now, all tuners are using the first tuner_params[]
array element for analog mode. We are now ready to begin merging
similar tuner definitions together, such that each tuner definition
will have a tuner_params struct for each available video standard.
The tuner_params[] array element will be chosen based on the video
standard in use.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
- tuner_dbg will show tuner param and range selected
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
- allow multiple tuner params in each tuner definition.
- the correct tuner_params element will be chosen based on
current video standard.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
- move video std detection to top of set_tv_freq function
- we must detect video std first, so that we can choose the correct tuner_params
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
- move config byte from tuner_params to tuner_range struct.
- dvb tuners must be able to set different config byte for each range.
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
|
|
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
|