Age | Commit message (Collapse) | Author |
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
As pointed by Marcin Slusarz <marcin.slusarz@gmail.com>, the warns happens
because CONFIG_DVB_MAX_ADAPTERS depends on CONFIG_DVB_CORE, and there are
valid configs where DVB_CORE is not selected.
This causes such warnings, for every V4L and common drivers that may or
may not be compiled with DVB support:
drivers/media/dvb/dvb-core/dvbdev.h:36:2: warning: #warning invalid CONFIG_DVB_MAX_ADAPTERS value
We can safely remove the warning.
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: HIRANO Takahito <hiranotaka@zng.info>
In ISDB-S, time-devision duplex is used to multiplexing several waves
in the same frequency. Each wave is identified by its own transport
stream ID, or TS ID. We need to provide some way to specify this ID
from user applications to handle ISDB-S frontends.
This code has been tested with the Earthsoft PT1 driver.
Priority: normal
[mchehab@infradead.org: Fix merge conflicts with isdbt and rename the new parameter to DTV_ISDBS_TS_ID]
Signed-off-by: HIRANO Takahito <hiranotaka@zng.info>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
kernel-sync:
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
kernel-sync:
Author: Kay Sievers <kay.sievers@vrfy.org>
Date: Thu Apr 30 15:23:42 2009 +0200
Driver Core: dvb: add nodename for dvb drivers
This adds support to the dvb core to report the proper device name to
userspace for their devices.
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Janne Grunau <j@jannau.net>
Check the modulation in dvb_frontend_check_parameters against
frontend's capabilties for FE_QAM devices.
Priority: normal
Signed-off-by: Janne Grunau <j@jannau.net>
|
|
From: Janne Grunau <j@jannau.net>
Various frontend driver have parameter checks in their set_frontend
functions and return an error if the parameters are not supported,
tda10021 and cx24116 to name two.
The tuning ioctls FE_SET_FRONTEND/FE_SET_PROPERTY only change values
in the property cache and return before set_frontend is called. If a
set_frontend call in software zigzag algorithm fails and the card was
previously locked it will report a lock and the new parameters but is
still tuned to the old transport. This is not detectable from
userspace.
This change checks the return values of fe->ops.set_frontend and
changes the state to the added FESTATE_ERROR for software zigzag.
No lock will be reported to userspace if the State is FESTATE_ERROR.
Priority: normal
Signed-off-by: Janne Grunau <j@jannau.net>
|
|
From: Janne Grunau <j@jannau.net>
Support for more than 8 DVB devices is requested regularly so make it
a kconfig variable instead of a header define. Values in the range 4-32
are tested.
Priority: normal
Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
|
|
kernel-sync:
Author: Alexey Dobriyan <adobriyan@gmail.com>
Date: Sat Jul 11 22:08:37 2009 +0400
headers: smp_lock.h redux
* Remove smp_lock.h from files which don't need it (including some headers!)
* Add smp_lock.h to files which do need it
* Make smp_lock.h include conditional in hardirq.h
It's needed only for one kernel_locked() usage which is under CONFIG_PREEMPT
This will make hardirq.h inclusion cheaper for every PREEMPT=n config
(which includes allmodconfig/allyesconfig, BTW)
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Andreas Oberritter <obi@linuxtv.org>
Values for 'pid' range from 0 to 0x1fff. Therefore 'feed->pid' can never
be equal to both 'pid' and 0x2000. This makes the continue statement have
no effect.
Priority: normal
Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
|
|
From: Andreas Oberritter <obi@linuxtv.org>
DMX_ADD_PID allows to add multiple PIDs to a transport stream filter
previously set up with DMX_SET_PES_FILTER and output=DMX_OUT_TSDEMUX_TAP.
DMX_REMOVE_PID is used to drop a PID from a filter.
These ioctls are to be used by readers of /dev/dvb/adapterX/demuxY. They
may be called at any time, i.e. before or after the first filter on the
shared file descriptor was started.
They make it possible to record multiple services without the need to de-
or re-multiplex TS packets.
To accomplish this, dmxdev_filter->feed.ts has been converted to a list
of struct dmxdev_feeds, each containing a PID value and a pointer to a
struct dmx_ts_feed.
Priority: normal
Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
kernel-sync:
commit fb875333c80942455551f690f306a899ceeee5df
Author: Stephen Hemminger <shemminger@vyatta.com>
Date: Wed Jan 7 18:02:53 2009 -0800
dvb: update network device to current API
Use internal network_device_stats that exist in network device and
net_device_ops. Compile tested only.
commit 0eade1f930fa3ba6461b34baf3ed8fa7c4abc40f
Author: Wang Chen <wangchen@cn.fujitsu.com>
Date: Wed Dec 3 21:13:13 2008 -0800
dvb: Kill directly reference of netdev->priv
Simply replace netdev->priv with netdev_priv().
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
flag detected in header
Signed-off-by: Abylay Ospan <aospan@netup.ru>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
The fact that we now explicitly set fepriv->exit = 1 when the thread is
shutting down exposed an edge case where it was not being reset back to zero
once the thread went away in some cases. This resulted in failures in cases
where the frontend was closed, and then opened O_RDONLY, since in that case
the thread is not being restarted but it was checking the fepriv->exit flag.
Thanks to Thierry Lelegard, who and encountered and debugged a large portion
of the issue in the same twelve hours that I did (as well as testing my patch).
Priority: high
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Cc: Thierry Lelegard <thierry.lelegard@tv-numeric.com>
|
|
From: Simon Arlott <simon@fire.lp0.eu>
dvb_dvr_read may unlock the dmxdev mutex and return -ENODEV, except this
function is a file op and will never be called with the mutex held.
There's existing mutex_lock and mutex_unlock around the actual read but
it's commented out. These should probably be uncommented but the read
blocks and this could block another non-blocking reader on the mutex
instead.
This change comments out the extra mutex_unlock.
[akpm@linux-foundation.org: cleanups, simplification]
Signed-off-by: Simon Arlott <simon@fire.lp0.eu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
A race condition was detected in the case that putting the tuner to sleep takes
an unusually long period of time, combined with applications that quickly
close/open the dvb frontend.
The kaffeine channel scanner closes and reopens the dvb frontend between each
tuning attempt. If it takes an unusually longer period of time to put the
tuner to sleep (for example, the Pinnacle 801e takes 660 ms), the dvb_frontend
thread will still be in a running state (and hence fepriv->thread is still set)
but the fepriv->exit field will still be zero. As a result, if a
dvb_frontend_start() call arrives while the frontend thread is in the process
of terminating, the call will return 0 without actually starting a new thread.
This results in the tuning request being dropped.
To address this, mark fepriv->exit as soon as we know the thread is going to
be terminated, so that dvb_frontend_start() knows to start a new instance.
Problem encountered with Kaffeine 0.8.7 doing ATSC scanning against the
Pinnacle 801e tuner, in conjunction with new code to power down the xc5000
when not in use.
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
after insmod.
From: Igor M. Liplianin <liplianin@me.by>
For legacy applications stv0899 performs search only first time after insmod
due to not set DVBFE_ALGO_SEARCH_AGAIN bit
Signed-off-by: Igor M. Liplianin <liplianin@me.by>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Author: Laurent Pinchart <laurent.pinchart@skynet.be>
Check fops_get() return value
Several subsystem open handlers dereference the fops_get() return value
without checking it for nullness. This opens a race condition between the
open handler and module unloading.
A module can be marked as being unloaded (MODULE_STATE_GOING) before its
exit function is called and gets the chance to unregister the driver.
During that window open handlers can still be called, and fops_get() will
fail in try_module_get() and return a NULL pointer.
This change checks the fops_get() return value and returns -ENODEV if NULL.
kernel-sync:
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
/home/v4l/master/v4l/dvb_frontend.c:838:19: warning: symbol 'dtv_cmds' was not declared. Should it be static?
/home/v4l/master/v4l/dvb_frontend.c:1035:6: warning: symbol 'dtv_property_dump' was not declared. Should it be static?
/home/v4l/master/v4l/dvb_frontend.c:1066:5: warning: symbol 'is_legacy_delivery_system' was not declared. Should it be static?
/home/v4l/master/v4l/dvb_frontend.c:1080:6: warning: symbol 'dtv_property_cache_sync' was not declared. Should it be static?
/home/v4l/master/v4l/dvb_frontend.c:1132:6: warning: symbol 'dtv_property_legacy_params_sync' was not declared. Should it be static?
/home/v4l/master/v4l/dvb_frontend.c:1187:6: warning: symbol 'dtv_property_adv_params_sync' was not declared. Should it be static?
/home/v4l/master/v4l/dvb_frontend.c:1222:6: warning: symbol 'dtv_property_cache_submit' was not declared. Should it be static?
/home/v4l/master/v4l/dvb_frontend.c:1253:5: warning: symbol 'dtv_property_process_get' was not declared. Should it be static?
/home/v4l/master/v4l/dvb_frontend.c:1362:5: warning: symbol 'dtv_property_process_set' was not declared. Should it be static?
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Author: Wang Chen <wangchen@cn.fujitsu.com>
dvb: Kill directly reference of netdev->priv
Simply replace netdev->priv with netdev_priv().
kernel-sync:
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Darron Broad <darron@kewl.org>
It has been noticed that in HW tuning mode in cx24123.c that
a check is made to not alter the status var when in one shot
mode, a simpler solution is to not update here for all cards.
Priority: normal
Signed-off-by: Darron Broad <darron@kewl.org>
CC: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Devin Heitmueller <devin.heitmueller@gmail.com>
It is not safe to assume that the i2c gate will be open before issuing the
command to power down the tuner. In fact, many demods only open the gate
long enough to issue the tuning command.
This fix allows power management to work properly for those tuners behind an
i2c gate (in my case the problem was with the HVR-950Q)
Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Devin Heitmueller <devin.heitmueller@gmail.com>
ATSC should be considered a legacy delivery system, or else fields such as
p->u.vsb.modulation do not get populated (resulting in set_frontend failures)
CC: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Stephen Rothwell <sfr@canb.auug.org.au>
Today's linux-next build (x86_64 allmodconfig) failed like this:
drivers/media/dvb/dvb-core/dvbdev.c: In function 'dvb_register_device':
drivers/media/dvb/dvb-core/dvbdev.c:254: error: implicit declaration of function 'nums2minor'
Caused by commit f3d9182030d9655d9ffff33dfceb45b4a127b6ec ("V4L/DVB
(9361): Dynamic DVB minor allocation") which clearly has not even been
built with CONFIG_DVB_DYNAMIC_MINORS=y.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
Issue: Currently, the DVBFE_ALGO_CUSTOM is called only at the first tuning.
After the first call, the status is never set to force a new tuning.
From: Marco Schluessler <marco@lordzodiac.de>
Signed-off-by: Marco Schluessler <marco@lordzodiac.de>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
|
|
From: Manu Abraham <abraham.manu@gmail.com>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
|
|
From: Matthias Schwarzott <zzam@gentoo.org>
Signed-off-by: Matthias Schwarzott <zzam@gentoo.org>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
|
|
From: Kay Sievers <kay.sievers@vrfy.org>
This allows udev to create proper device nodes without any
hacky shell scripts/programs to call, which guess these numbers
from the kernel device names.
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Andreas Oberritter <obi@linuxtv.org>
This is a multi-part message in MIME format.
Implement dynamic minor allocation for DVB, to allow more than four
devices of the same type per adapter, based on drivers/usb/core/file.c.
Add a new config option, DVB_DYNAMIC_MINORS, to make use of this
feature, which defaults to no for backwards compatibility.
Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
rather than implementing different ways leading to confusion.
This allows multiple gate_enable/disable's in the tuner_read/write
functions, thereby lesser number of I/O operations throughout,
eventually leading to better results. As a side effect demods that
detect the STOP bit for auto closing of the gate can be avoided, thereby
a very minimal gain in disabling the auto detect feature as well.
Improves readability on the device control.
From: Manu Abraham <abraham.manu@gmail.com>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
|
|
From: Arvo Jarve <arvo@softshark.ee>
Signed-off-by: Arvo Jarve <arvo@softshark.ee>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
|
|
From: Manu Abraham <abraham.manu@gmail.com>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
|
|
From: Steven Toth <stoth@linuxtv.org>
Remove spurious messages and turn into debug.
Priority: normal
Signed-off-by: Steven Toth <stoth@linuxtv.org>
|
|
From: Darron Broad <darron@kewl.org>
When moving from one frontend to another
an application could spawn multiple threads opening
the same new frontend and in some circumstances all of
these could become delayed waiting for the previous
frontend readers or previous frontend writer thread to
complete.
In this scenario the first thread will succeed on open
to bring the new frontend online but any others will return
EBUSY. This is a fault. If the first succeeds and all others
are on the same frontend then they should succeed also.
Priority: normal
Signed-off-by: Darron Broad <darron@kewl.org>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Manu Abraham <abraham.manu@gmail.com>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
|
|
From: Darron Broad <darron@kewl.org>
This add frontend R/W mutual exclusion.
Prior to this point in time it was possible to open both
frontends simultaneously which an MFE card cannot support.
In order to stop this, a delayed open is performed which
has the following function:
Return EBUSY after a configurable amount of time
if a frontend is unavailable due to the other being
in use.
Only allow opening of a frontend if the kernel thread
of the other has stopped.
This solution was chosen to allow switching between
frontends to work as seamlessly as possible. When both
frontends are actually opened simultaneously then one
will only open, but if quick switching is performed
between one of many then the new open will succeed in
a clean fashion rather than interrupting a kernel
thread.
Priority: normal
Signed-off-by: Darron Broad <darron@kewl.org>
|
|
From: Steven Toth <stoth@linuxtv.org>
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.
Priority: normal
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Darron Broad <darron@kewl.org>
|
|
From: Steven Toth <stoth@linuxtv.org>
S2API: Return error of the caller provides 0 commands.
Priority: normal
Signed-off-by: Steven Toth <stoth@linuxtv.org>
|
|
From: Steven Toth <stoth@linuxtv.org>
A user tuning DVB-T via the S2API reports that this was not implemented,
and his tuning was failing.
Priority: normal
Signed-off-by: Steven Toth <stoth@linuxtv.org>
|
|
From: Steven Toth <stoth@linuxtv.org>
Tuning DVB-T via the S2API was failing, missing some essential items.
Priority: normal
Signed-off-by: Steven Toth <stoth@linuxtv.org>
|
|
From: Steven Toth <stoth@linuxtv.org>
Reports from users that using the new API for tuning DTV was failing,
and the cache was missing some essential items.
Priority: normal
Signed-off-by: Steven Toth <stoth@linuxtv.org>
|
|
From: Steven Toth <stoth@linuxtv.org>
... and cleanup any drivers using them.
I've also removed NBC_QPSK and modified the cx24116 driver to check
the delivery_type also, removing some excess namespace baggage.
Priority: normal
Signed-off-by: Steven Toth <stoth@linuxtv.org>
|
|
From: Steven Toth <stoth@linuxtv.org>
This means that when developers add new commands then they'll be see
the DTV_MAX_COMMAND define and will be more likely to modify it, without
having to modify the command validation code.
Priority: normal
Signed-off-by: Steven Toth <stoth@linuxtv.org>
|