Including the following commits:
commit 1d16c8cb07cc28a1dae1a1538e6918879f623eb5
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Jan 1 15:10:43 2013 +0200
media: dvb: mpq: Enhance debugfs counters for decoder output
Add counter for number of decoder packets with transport error
indication. Reset all decoder counters exposed in debugfs when
video is started.
Change-Id: Iffb9cc3e79365efd14e1c50e6930a50a532d756d
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 3588a62c49a500291bbd53705d2824b8e96ca465
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Thu Dec 27 14:03:24 2012 +0200
media: dvb: mpq: Improve handling of PCR packets
PCR packets with error indication is dropped to filter-out
invalid PCR values and flags that might cause errors
in clock recovery mechanism. In addition PCR is reported
also when playing from memory with 0 STC if the packet is
not in 192-tail format.
Change-Id: I3a42dafe7aa92bbafbd1d0329efe99049e1a42d7
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit d45e28deb4e4044de4ba61ed2cb155c1f3de5cf1
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Thu Dec 27 11:49:58 2012 +0200
dvb: mpq: Add option to allocate video buffer from IOMMU heap
Video buffer is allocated from CP-MM heap for both secure and non-secure
buffers. Some targets may restrict not to allocate non-secure buffer from
CP-MM heap, in such case need to make the allocation from IOMMU heap.
Change-Id: Iadbc3fe372eb8c30792b8115f2055841195edba1
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 9c4af4f1cdfe0a9a8822bc4d9638d9b295b5eff6
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Dec 25 15:51:00 2012 +0200
dvb: mpq: Add sharing of video buffer with dvb-video
When video data is tunneled internally between demux and dvb-video,
the ION buffer holding the video data needs to be shared with
dvb-video driver.
Change-Id: Ia6517bd9cbf284e1314d5275eccc6813dc8d3096
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 3ab10078fbd8a142be13de70e1c6114af196a172
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Dec 25 13:34:38 2012 +0200
dvb: mpq: Fix initialization of video stream-buffer
Video stream buffer should be first initialized and then
registered to the adapter, otherwise, if registered
before initialization the video consumer may get uninitialized
stream-buffer.
Change-Id: I087a35e21b4a6df2309d516596e45b9b7ae88f20
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 9a433d1f05f566733b3be74b8944c20d4acb855f
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Dec 25 15:30:40 2012 +0200
media: dvb: mpq: Enhance information exposed in debug-fs
Added the following files to existing demux directory in debug-fs:
1. decoder_out_count: Counts number of frames output to decoder.
2. decoder_out_interval_sum: Sum of time intervals between
frames outputs.
3. decoder_out_interval_average: Average of time intervals between
frames outputs.
4. decoder_out_interval_max: Maximum time interval between
frames outputs.
All counters can read and reset by writing to the respective file.
demux device output in debug-fs was adjusted for better visibility.
Change-Id: Ib8899df356c0924993d816f346fd120de47d981c
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 9c328a564fdc16c85dcc6bcb0f8323807151685e
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Dec 25 13:22:06 2012 +0200
media: dvb: mpq: Fix contiguous allocation of TSPP output buffer
TSPP output buffer when allocated as physically contiguous to serve
as input to TrustZone should be allocated from QSEECOM heap and not
CP_MM heap since the latter may be locked in secure playback.
Added a module parameter for the heap to allocate the buffer from,
default is QSEECOM. In addition, the existing implementation allocated
TSPP output buffer once for each demux device though is it not one per
demux device but rather one per TSIF, the allocation was moved to be
done once an output channel from specific TSIF is opened.
Change-Id: I34080e7b3041576d435ee8537f624ec46173f7e9
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 881d7a23246a2333ed04cd046f837434ced6d817
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Dec 25 13:15:56 2012 +0200
media: dvb: mpq: Unify PES and section pipes
For each TSIF two pipes were allocated, one for section output
and one for PES output. The two pipes were unified into a single
pipe as the pipes were configured with the same parameters and there's
no real need for separating them. A unified pipe allows recording of
section packets along with non-section packets while maintaining the
order of the packets in the output to be the same as they
appear in the input.
Change-Id: I7ad02cb0f3f8f72b68b4e84e21b1f25801028ff5
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 4e0f5529cc2d9f8de23e3b60250cac4d1b32f041
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Wed Dec 26 08:28:09 2012 +0200
media: dvb: mpq: Fix notification of first video PTS
demux reported the first video PTS using the PTS value within the
first video PES after playback starts. When playbak starts demux
drops all PES data until reaching sequence-header, the PTS of the
first PES holding a video frame after reaching the sequence header
should be used and not the one in the first PES before data is dropped.
Change-Id: If22ca2ea5d40de06f509f04660f2633b5f87c421
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 41543b75091409cfcf324cdb3722040330139aac
Author: Liron Kuch <lkuch@codeaurora.org>
Date: Mon Nov 26 13:27:22 2012 +0200
media: dvb: mpq: Support new elementary stream data events
Video elemenatry stream data is usually passed from demux to a video
consumer (e.g. video decoder) in kernel-space via tunneling. However
there are cases when the video consumer is a user-space application
controlled by the middleware. This change adds support for notifying
user-space about newly available elementary stream data and
associated meta-data, using the existing events queue mechanism.
Change-Id: I6d104c6ad7ccc791b29b75e7bf376c985416585e
Signed-off-by: Liron Kuch <lkuch@codeaurora.org>
commit d6036112586215125afc79f89bf577449701e9b2
Author: Gilad Broner <gbroner@codeaurora.org>
Date: Sun Dec 16 15:16:15 2012 +0200
drivers: media: dvb: mpq: Fix framing for external decoder buffers
Framing used to rely on underlying decoder buffer being managed as
ring buffer, and used absolute addresses to derive frame length.
This fix changes this and framing is now agnostic to the number
of decoder buffers, and whether they are managed as a ring-buffer
or as a group of linear buffers.
In addition, instead of reporting each pattern, framing now only
notifies video consumer on video frame patterns. Previous non-video
frame patterns are still included in the output data.
Change-Id: Ia26be668319f10f9aa4cd05f8ccf11bc40f02866
Signed-off-by: Gilad Broner <gbroner@codeaurora.org>
commit 526e57e46f92de5b262452d7874bb3163b12230c
Author: Gilad Broner <gbroner@codeaurora.org>
Date: Mon Dec 3 15:57:44 2012 +0200
media: dvb: External buffers support for decoder filters
Extend Demux user-space API to set decoder buffers allocated externally
by user, supporting multiple linear buffers or a single cyclic buffer.
Internal decoder buffer allocation is still supported.
Change-Id: I98c63fffa14b597945dff8b4ac2fde05d9719e1b
Signed-off-by: Gilad Broner <gbroner@codeaurora.org>
commit 4b94ca3109d6ab98f681c3f635342227fc3dc471
Author: Liron Kuch <lkuch@codeaurora.org>
Date: Thu Dec 6 21:14:36 2012 +0200
media: dvb: mpq: Improve PTS/DTS information reporting
PTS/DTS information may exist in the PES headers in the video
transport stream. PTS/DTS information must be reported for video frames
only if it hasn't been reported already. PTS/DTS information must be
reported according to the information available in the PES header
relevant for the video frame currently handled.
This commit updates the algorithm used to report PTS/DTS information
to comply with the above requirements.
Change-Id: I15742de5950d86ec0b71629d26707b61cf0401c3
Signed-off-by: Liron Kuch <lkuch@codeaurora.org>
commit 84b4febace0f45e610f60809fd6e1ade281fea37
Author: Gilad Broner <gbroner@codeaurora.org>
Date: Mon Nov 19 15:06:52 2012 +0200
media: dvb: mpq: mpq_streambuffer linear buffer support
Add linear buffer group management to mpq_streambuffer.
This change enables better support of video data consumers
that are required to use linear buffers scheme by eliminating
the need to copy data between buffers and may result in better
performance.
Change-Id: Ie51ef6aea58562db152afc2fd33081a795fa522f
Signed-off-by: Gilad Broner <gbroner@codeaurora.org>
commit 81cee0596e3cdf8102bf8c8ef45e5f3a07fc8a4d
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Thu Nov 29 14:15:57 2012 +0200
tspp: Improve data-path handling
Existing driver allocated BAM descriptor at fixed sizes each
with interrupt flag set. Notification on data was received when
the descriptor is fully consumed by the HW. The descriptor size
on one hand need to be big enough so that we don't receive too much
interrupts for high-bitrate streams, and on other hand needs
to be small enough so that for low-bitrate stream we are not starved
waiting for data for a long period of time.
The change adds support of allocating small descriptors and set
interrupt flags on part of descriptors. In addition, expiration
timer is used so that if interrupt is not received after long period
of time the timer handler reports back descriptors are already ready
to be consumed. This allows low-rate of interrupts and
handling of low-bitrate streams.
As descriptors are smaller now (size of single TS packet), exposed
API within SW demux that handles a single packet to save the function
call to the API that handles multiple packets for efficiency. Information
regarding the new buffer allocation was added to debugfs.
CRs-Fixed: 420818
Change-Id: I4bb05177774ab0e0bad0737ca1106a0c33f843ae
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 79de9e3a758d48d75b71ace86128e6450284c395
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Nov 27 17:51:01 2012 +0200
media: dvb: mpq: Use kthread instead of workqueue
demux used single-threaded workqueue to process TS packets
notified from the HW. Workqueue implementation was changed
so that all work scheduled to workqueues are submitted
to same kworker threads, this result on having TS packet
processing not to be done on demux own thread and compete
with other work scheduled by other drivers. Moved to separate
thread dedicated only for demux.
Change-Id: I37bcfacc54ec998d3fb7daa9768bc1966574aa7a
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 4b5b730c9745f930ae76c518d45c1aad34af24ff
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Thu Nov 15 09:01:41 2012 +0200
media: dvb: Add information on active filters in debugfs
Expose demux filters settings and status on debugfs to
improve debugging of demux devices.
Change-Id: Ibc38539a8bd932fc92fb4501f4fb64d8c2b5da54
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit e7887070eadbf5ee3775ef30b572571a85471b65
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Nov 6 12:20:20 2012 +0200
media: dvb: mpq: Set smaller descriptor size for section pipe
Section and PES/recording pipes had same descriptor sizes,
notification rate from BAM for both types was the same. Since
sections are lower-bitrate than PES/recording data, the descriptor
size for sections pipe was reduced to allow better responsiveness
to this kind of data.
Change-Id: I9ddbf0c01ce0c6f0c4a8f5113a18a671f0e7b497
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 72b785570b265c6fcb4cb907c0c3a3a4b311f1f1
Author: Liron Kuch <lkuch@codeaurora.org>
Date: Tue Oct 30 17:47:50 2012 +0200
media: dvb: mpq: TSPP output buffer allocation by demux plugin
The TSPP driver can allocate its output buffers internally or
externally. External buffer allocation is required when Demux wishes
to use the ION driver to allocate a physically contiguous buffer
(e.g. to pass to TZ).
This commit improves the TSPP driver support for external buffer
allocation and implements the external memory allocation and free
functions in the Demux driver.
Change-Id: I71da4f18c090ef224c4fc7b23f55b9b3636be996
Signed-off-by: Liron Kuch <lkuch@codeaurora.org>
commit 73e2772fdaac99c285ff9d82c9eaee85596c9976
Author: Ananda Kishore <kananda@codeaurora.org>
Date: Tue Oct 23 16:19:44 2012 +0530
media: dvb: mpq: Add Support to use Deinterlacer
Changes to use MDP Deinterlacer for Interlaced DVB Video
content.
Change-Id: I25d93b543aa987dcaa25fa9ff420da5e48d63b7b
Signed-off-by: Ananda Kishore <kananda@codeaurora.org>
commit e2dbcbd5db24c6ed429497f62dc983c14e2d5404
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Thu Oct 25 11:39:54 2012 +0200
media: dvb: mpq: Extended and unified parameters of demux module
Demux parameters were unified to have same semantics across
different demux plugins. Extended the parameters to add option
to invert the tsif clock signal.
Change-Id: I124d6ae8d84cd37c13fe99d11b4fbc4b5a69cd92
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit b791ac7ea114dde9020a2cf1dabaec5f21d7c385
Author: Rohit Vaswani <rvaswani@codeaurora.org>
Date: Wed Oct 24 12:30:13 2012 -0700
media: dvb: mpq: Fix compilation warning with gcc 4.5.2
Fixed uninitialized variable warning.
Change-Id: Ied65f874690df8673531e2fc67fcf87d6ebf70f1
Acked-by: Kaushik Sikdar <ksikdar@qti.qualcomm.com>
Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>
commit 92705b3eb380826abf8ddefc25a8d210ffa64ff5
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Oct 23 14:15:41 2012 +0200
tspp: Add option to inverse tsif signals
TSIF signals (clock, data, enable and sync) may be configured
to be inversed at TSPP unit input. This is useful in case
TSIF signals from external units need to be inversed.
Change-Id: Idd21948baccedc7499b31ed1d4df0f737538c870
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit e67e263c7ec49ada34d93b613b2570c3764bc528
Author: Ananda Kishore <kananda@codeaurora.org>
Date: Fri Oct 19 12:12:20 2012 +0530
media: dvb: mpq: Add ioctl to set output buffer count
Video decoder Output Buffer count can be controlled by
ioctl from userspace instead of using a pre-defined
count value.
Change-Id: Ia83e6adc936ef079d87fa5a4db5332763dab1cae
Signed-off-by: Ananda Kishore <kananda@codeaurora.org>
commit 388de165b0c435efaf3d3c9493b408bf5673d4bd
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Oct 2 08:08:27 2012 +0200
media: dvb: mpq: Update calls to ION API
ION API was changed and the calls from dvb demux
needs to be updated accordingly
Change-Id: I4ee845eec9363e5df1f9e66dc189dfcc00ee2a21
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 76b9b4d881b32c13356c736a07b2ee363d5ddd9b
Author: Mitchel Humpherys <mitchelh@codeaurora.org>
Date: Mon Sep 17 14:33:22 2012 -0700
ion: remove obsolete ion flags
The symbols CACHED and UNCACHED have been replaced by ION_FLAG_CACHED
upstream. This removes them from the kernel.
Change-Id: I565dcc4595298ce6a0e81dd8cb98b86a1b38fdb2
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
commit 911b4b702a63fbd241863966cad45909e40e4665
Author: Mitchel Humpherys <mitchelh@codeaurora.org>
Date: Wed Sep 12 14:42:50 2012 -0700
ion: change ion kernel map function to not take flags argument
Buffer flags are going to be specified at allocation time rather than
map time. This removes the flags argument from the ion kernel map
function.
Change-Id: I91589ca7b1ab142bb5ac8e6b0f4c06fa1305f23a
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
commit 7d72bad55a0e03392d81eee77a9a8c9df6b73a9a
Author: Hanumant Singh <hanumant@codeaurora.org>
Date: Wed Aug 29 18:39:44 2012 -0700
ion: Port heap mask change to ion
Heap mask field passes as argument at allocation time to specify ion
heap.
Change-Id: I8881dfc491dc0f8f70581ad97b35756a6a33dd6d
Signed-off-by: Hanumant Singh <hanumant@codeaurora.org>
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
commit a5b36a64ad4a15ea950dafcd048f7656d8b4ddc1
Author: Ananda Kishore <kananda@codeaurora.org>
Date: Thu Sep 20 15:40:25 2012 +0530
media: dvb: mpq: Decreased YUV buffers to 12
Decreased the number of YUV buffers for video decoder from 15 to 12.
Video Decoding Failed as ION memory is not available for 15 Buffers
during dvb end to end verification.
Change-Id: I91f90d6be9548e624bf8a1d5c33c51ebe0f1fd3b
Signed-off-by: Ananda Kishore <kananda@codeaurora.org>
commit ec6202da1e8c1734652b3fed227a0267b0ff1c46
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Thu Sep 20 07:58:57 2012 +0300
media: dvb: Add support for external demux buffer allocation
demux input/output buffers were allocated internally by the driver,
for MPQ use-cases there's a need for user-space MPQ player to
allocate the buffers through ION driver and set them to demux
similar to the way other kinds of buffers are managed
in android multimedia stack for video
Change-Id: I072185147ccef08f795c7bcf7c784156f0cd1781
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 281ba4113e4c2e8ebe87e92cb1853c9b7cb0b1e6
Author: Bamidi RaviKiran <bamidir@codeaurora.org>
Date: Tue Sep 18 10:43:05 2012 +0530
media: dvb: mpq: Increased YUV buffers to 15
Increased the number of YUV buffers for video decoder from 10 to 15.
This is required as display holds 2-3 buffers and decoder needs
10 reference buffers.
Change-Id: Ib41bf72b5d416ff4e682ec29a4c348539898c194
Signed-off-by: Bamidi RaviKiran <bamidir@codeaurora.org>
commit 18f4fdf6b92eec515d8496c31d23048bdebb50c6
Author: Bamidi RaviKiran <bamidir@codeaurora.org>
Date: Wed Sep 5 11:23:18 2012 +0530
media: dvb: mpq: Removed unnecessary mutex locks
Removed unnecessary mutex lock in the function mpq_get_dev_frm_client.
The global structure is written only at the time of open and close and
hence no mutex protection is required for reading.
Change-Id: I9b5190bfbdf952d35935f5fbd7157d9e3d23ed3a
Signed-off-by: Bamidi RaviKiran <bamidir@codeaurora.org>
commit 239af2e29a6f2f99c30379a43d4b25630d062deb
Author: Mitchel Humpherys <mitchelh@codeaurora.org>
Date: Thu Sep 6 12:10:59 2012 -0700
media: dvb: mpq: include msm-specific ion header
All msm_ion clients need to use <linux/msm_ion.h> instead of
<linux/ion.h>
Change-Id: I8f76b1c78d2a435de337a88d00d4369a88dcbc99
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
commit 9d84f1d6c23f96bbbc2dd53b1528a376e2e87723
Author: Ananda Kishore <kananda@codeaurora.org>
Date: Wed Jun 13 14:34:49 2012 +0530
media: dvb: mpq: Add support for dvb/video
Support for dvb/video interface for Qualcomm 8960 platform.
This code provides standard DVB Video API and
its extensions for broadcast scenario.
Refer http://linuxtv.org/ for complete API specification.
Change-Id: Ie60aa0719c6c7d9ab5d473382e3ef229c8b02be2
Signed-off-by: Ananda Kishore <kananda@codeaurora.org>
commit 0b50fde1b648e5abb13b1f0934f152c3913ef697
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue Aug 14 12:58:23 2012 +0300
media: dvb: mpq: Add setting of TSIF mode
TSIF interface can work in different modes, added default
setting of the mode and option to set different
modes through module parameters
Change-Id: Iaa8250d4fdcc6aaf219b268da4446d11a8f6fddc
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit c0d4ea40ee2de10190d2f857c840f80e877f444d
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Mon Aug 13 11:45:06 2012 +0300
media: dvb: mpq: Fine-tune TSIF and TSPP buffers sizes
Maximum allowed size of BAM descriptor is 32K-1, the size
allocated by demux was changed accordingly. Notifications
from TSPP driver is set based on number of descriptors and
not on number of bytes.
TSIF buffer was enlarged to cope with 80Mbit/sec streams
Change-Id: Ic9a9f0a5144293ac30e5548bbbb4d284d72c3a9e
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit fd37d4fc7c3f86e9bf7e5c41eeea5aec95e007fd
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Wed Jul 18 17:05:52 2012 +0300
media: dvb: mpq: Use cached buffer for video-data in common plug-in
Buffer holding video from demux goes to dvb/video which
accesses the data in SW without sending it to HW units,
the buffer can be allocated as cached to improve performance.
Change-Id: I7795f901057c219198d02f340f65e81a2839edfb
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 4f87794d8726b0ea9d89e4d6a20ee3040dd473d9
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Sun Jul 15 15:06:01 2012 +0300
media: dvb: Add events API for demux
user-space programs using demux require to be notified
on several kinds of events such new PES event,
new section event, new recording-chunk event and
other error events. demux API was extended to meet
this requirement
Change-Id: I768b6acde346139e194a3e6637b6fc0fc9648446
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit c9388984bf1fbc567cf7d23ecefe76f6b2ea3b35
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Thu Jul 12 11:27:37 2012 +0300
media: dvb: mpq: Fix stream-buffer read operation
Data should be read from the buffer according to the size
requested from the user or the actual amount of data
available, whichever is smaller
Change-Id: I81e6a2c538644417caeba9c19060f58810c1fdc3
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit b86f10b5f7bd8ce2521074dece59e63e8bade687
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Wed Jun 6 12:02:54 2012 +0300
media: dvb: mpq: Support getting decoder's buffer status
Provide dvb-core with getter function that returns the
decoder's buffer status so that applications can
query this information
Change-Id: I3e0b6ba2b7aaa44bc3ea02e02286f21342a985cb
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit bba863b721eeb87b425ad8f3b8f1b8064b618c8a
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Tue May 29 15:37:16 2012 +0300
media: dvb: mpq: Support get-capabilities API
Provide dvb-core with implementation of get-capabilities
API so that applications can query actual demux
capabilities based on the underlying HW
Change-Id: Ic05f496bdb87909c898c8cf1bbf372dc78ddbf71
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
commit 30492cf37f30769be2e6ef436491ddf21370169b
Author: Liron Kuch <lkuch@codeaurora.org>
Date: Thu May 17 18:03:46 2012 +0300
media: dvb: mpq: Add support for video framing
MPQ uses dvb/demux for broadcast feature. When the video
decoder does not handle video framing, demux performs
the framing and passes the information to dvb/video
via the meta-data ring buffer.
Change-Id: I6b5b0e8d836f82d481ce42ff601a55d84a1f1317
Signed-off-by: Liron Kuch <lkuch@codeaurora.org>
commit 2c2be149d6fe49db4840702d0c522a6a9e11b13c
Author: Hamad Kadmany <hkadmany@codeaurora.org>
Date: Thu May 10 08:54:24 2012 +0300
media: dvb: Support dvb devices for MPQ
MPQ requires dvb/demux devices for broadcast
feature. Linux dvb-core was extended to support
MPQ demux devices
Change-Id: I983bf71c5b826610d9283e8e4f359df0535f518f
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
Signed-off-by: David Brown <davidb@codeaurora.org>
drivers/ieee1394/ has been removed in Linux 2.6.37. The corresponding
backend code in firedtv is no longer built in now and can be deleted.
Firedtv continues to work with drivers/firewire/.
Also, fix a Kconfig menu comment: Removal of CONFIG_IEEE1394 made the
"Supported FireWire (IEEE 1394) Adapters" comment disappear; bring it back
with corrected dependency.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Reviewed-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Add a driver for Earthsoft PT1
Eearthsoft PT1 is a PCI card for Japanese broadcasting with two ISDB-S
and ISDB-T demodulators.
This card has neither MPEG decoder nor conditional access module
onboard. It transmits only compressed and possibly encrypted MPEG data
over the PCI bus, so you need an external software decoder and a
decrypter to watch TV on your computer.
This driver is originally developed by Tomoaki Ishikawa
<tomy@users.sourceforge.jp> by reverse engineering.
[mchehab@redhat.com: renamed isdb_ts to isdbs_ts to use the current standard]
Signed-off-by: HIRANO Takahito <hiranotaka@zng.info>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
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.
Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Combination of the following changes:
Mon, 23 Feb 2009 14:21:10 +0100 (CET)
firedtv: reinstate debug logging option
Henrik Kurelid tells me that FCP debug logging (which I removed during
cleanups) is still useful when working on driver issues together with
end users. So bring it back in an updated form with only 60% of the
original code footprint.
Logging can be enabled with
# echo -1 > /sys/module/firedtv/parameters/debug
1 instead of -1 enables only FCP header logging,
2 instead of -1 enables only hexdumps of the entire FCP frames.
0 switches logging off again.
Fri, 20 Feb 2009 20:54:27 +0100 (CET)
firedtv: build fix for INPUT=m and DVB_FIREDTV=y
Thu, 19 Feb 2009 20:40:39 +0100
firedtv: use msecs_to_jiffies
Pointed out by Mauro Carvalho Chehab.
Sun Feb 15 20:50:46 CET 2009
firedtv: some more housekeeping
Fix an old checkpatch warning and a new compiler warning.
Sun Feb 15 15:33:17 CET 2009
firedtv: rename a file once more
At the moment, about a third of avc.c is specific to FireDTVs rather
than generic AV/C code. Rename it to firedtv-avc.c.
Sun Feb 15 15:33:17 CET 2009
firedtv: dvb demux: more compact channels backing store
Replace struct firedtv_channel { bool active; int pid; } channel[16];
by unsigned long channel_active; u16 channel_pid[16];.
Sun Feb 15 15:33:17 CET 2009
firedtv: dvb demux: some simplifications
c->active was unnecessarily cleared twice.
Also, by marking the channel inactive before the for loop,
the loop becomes identical with fdtv_channel_collect().
Sun Feb 15 15:33:17 CET 2009
firedtv: dvb demux: remove a bogus loop
This loop is unnecessary because
- only active channel[].pid's will be sent to the device,
- when a channel is activated, its pid is set to dvbdmxfeed->pid.
Perhaps the original code was there because it was initially not fully
covered by the fdtv->demux_mutex.
Sun Feb 15 15:33:17 CET 2009
firedtv: dvb demux: fix mutex protection
fdtv_start_feed() accessed the channel list unsafely.
Fully serialize it with itself and fdtv_stop_feed().
Sun Feb 15 15:33:17 CET 2009
firedtv: dvb demux: fix missing braces
Original code was:
...
case DMX_TS_PES_OTHER:
//Dirty fix to keep firesat->channel pid-list up to date
for(k=0;k<16;k++){
if(firesat->channel[k].active == 0)
firesat->channel[k].pid =
dvbdmxfeed->pid;
break;
}
channel = firesat_channel_allocate(firesat);
break;
default:
...
Looks bogus in several respects. For now let's just add braces to the if
because that seems to be what the author meant.
Sun Feb 15 15:33:17 CET 2009
firedtv: allow build without input subsystem
!CONFIG_INPUT is very unlikely on systems on which firedtv is of
interest. But we can easily support it.
Sun Feb 15 15:33:17 CET 2009
firedtv: replace EXTRA_CFLAGS by ccflags
The former are deprecated.
The latter can depend on Kconfig variables.
Sun Feb 15 15:33:17 CET 2009
firedtv: concentrate ieee1394 dependencies
Move the entire interface with drivers/ieee1394 to firedtv-1394.c.
Move 1394-independent module initialization code to firedtv-dvb.c.
This prepares interfacing with drivers/firewire.
Sun Feb 15 15:33:17 CET 2009
firedtv: amend Kconfig menu prompt
Sun Feb 15 15:33:17 CET 2009
firedtv: remove kernel version compatibility macro
Sun Feb 15 15:33:17 CET 2009
firedtv: combine header files
avc.h and firedtv-*.h are small and currently not shared with other
drivers, hence concatenate them all into firedtv.h.
Sun Feb 15 15:33:17 CET 2009
firedtv: misc style touch-ups
Standardize on lower-case hexadecimal constants. Adjust whitespace.
Omit unnecessary pointer type casts and an unnecessary list head
initialization. Use dev_printk.
Wed Feb 11 21:21:04 CET 2009
firedtv: avc, ci: remove unused constants
Wed Feb 11 21:21:04 CET 2009
firedtv: avc: remove bitfields from read descriptor response operands
Don't use bitfields in struct types of on-the-wire data.
Wed Feb 11 21:21:04 CET 2009
firedtv: avc: remove bitfields from DSD command operands
Don't use bitfields in struct types of on-the-wire data.
Wed Feb 11 21:21:04 CET 2009
firedtv: avc: header file cleanup
Remove unused constants and declarations.
Move privately used constants into .c files.
Wed Feb 11 21:21:04 CET 2009
firedtv: avc: remove bitfields from FCP frame types
Don't use bitfields in struct types of on-the-wire data.
Also move many privately used constants from avc.h to avc.c
and remove some unused constants.
Sun, 18 Jan 2009 16:30:00 +0100 (CET)
firedtv: avc: fix offset in avc_tuner_get_ts
The parentheses were wrong. It didn't matter though because this code
only writes a 0 into an area which is already initialized to 0.
Sun, 18 Jan 2009 16:30:00 +0100 (CET)
firedtv: avc: reduce stack usage, remove two typedefs
It is safe to share a memory buffer for command frame and response frame
because the response data come in after the command frame was last used.
Even less stack would be required if only the actual required frame size
instead of the entire FCP register size was allocated.
Also, rename the defined types AVCCmdFrm and AVCRspFrm to
struct avc_command_frame and struct avc_response_frame.
TODO: Remove the bitfields in these types.
Sun, 18 Jan 2009 16:30:00 +0100 (CET)
firedtv: cmp: move code to avc
Sun, 18 Jan 2009 16:30:00 +0100 (CET)
firedtv: iso: move code to firedtv-1394
Sun, 18 Jan 2009 16:30:00 +0100 (CET)
firedtv: iso: remove unnecessary struct type definitions
Sun, 18 Jan 2009 16:30:00 +0100 (CET)
firedtv: iso: style changes and fixlets
Add cleanup after failure in setup_iso_channel.
Replace printk() by dv_err().
Decrease indentation level in rawiso_activity_cb().
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Combination of the following changes:
Sat, 17 Jan 2009 14:47:34 +0100
firedtv: rename variables and functions from firesat to firedtv
Signed-off-by: Rambaldi <Rambaldi@xs4all.nl>
Additional changes by Stefan Richter:
Renamed struct firedtv *firedtv to struct firedtv *fdtv and
firedtv_foo_bar() to fdtv_foo_bar() for brevity.
Sat, 17 Jan 2009 13:07:44 +0100
firedtv: rename files from firesat to firedtv
Signed-off-by: Rambaldi <Rambaldi@xs4all.nl>
Additional changes by Stefan Richter:
Name the directory "firewire" instead of "firedtv".
Standardize on "-" instead of "_" in file names, because that's what
drivers/firewire/ and drivers/media/dvb/dvb-usb/ use too.
Build fix.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Original code written by Christian Dolzer <c.dolzer@digital-everywhere.com>
Cleaned up by Greg.
Major cleanup and reorg by Manu Abraham <manu@linuxtv.org>
Additions also by Ben Backx <ben@bbackx.com>
Cc: Christian Dolzer <c.dolzer@digital-everywhere.com>
Cc: Andreas Monitzer <andy@monitzer.com>
Cc: Manu Abraham <manu@linuxtv.org>
Cc: Fabio De Lorenzo <delorenzo.fabio@gmail.com>
Cc: Robert Berger <robert.berger@reliableembeddedsystems.com>
Signed-off-by: Ben Backx <ben@bbackx.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Added missing dependency to dvb/firesat/Kconfig,
Reported-by: Randy Dunlap <randy.dunlap@oracle.com>
Tweaked dvb/Makefile.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
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>
Alternative version of the Terratec Cinergy T2 driver that uses the dvb framework.
Signed-off-by: Tomi Orava <tomimo@ncircle.nullnet.fi>
Signed-off-by: Thierry MERLE <thierry.merle@free.fr>
[mchehab@redhat.com: fix dvb Makefile]
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Add support for DvbWorld 2004 DVB-S2 PCI adapter.
The card contains dm1105 PCI chip and cx24116 demodulator
Signed-off-by: Igor M. Liplianin <liplianin@me.by>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Add support for SDMC DM1105 PCI chip. There is a lot of
cards based on it, like DvbWorld 2002 DVB-S , 2004 DVB-S2
Signed-off-by: Igor M. Liplianin <liplianin@me.by>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
There were several issues in the past, caused by the hybrid tuner design, since
now, the same tuner can be used by drivers/media/dvb and drivers/media/video.
Kconfig items were rearranged, to split V4L/DVB core from their drivers.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
If one has a dependency chain (tristate)FOO depends on (bool)BAR depends on
(tristate)BAZ, build problems will result. If BAZ=m, then BAR can be set
y, which allows FOO=y. It's possible to have FOO=y && BAZ=m, which
wouldn't be allowed if FOO depended directly on BAZ. In effect, the bool
promotes the tristate from m to y.
This ends up causing a problem with several menuconfigs that look like:
menuconfig BAR
bool
depends on BAZ [tristate]
if BAR
config FOO
tristate
endif
The solution used here is to add the dependencies of BAR to the if
statement, so that items in the if block will gain a direct
non-bool-promoted dependency on BAZ. This is how it would work if a menu
was used instead of an if block.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Acked-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Cc: "David S. Miller" <davem@davemloft.net>
Acked-by: Jeff Garzik <jeff@garzik.org>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Cc: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Change Kconfig objects from "menu, config" into "menuconfig" so
that the user can disable the whole feature without having to
enter the menu first.
Also remove one indirection (CONFIG_DVB) that does not seem to
be really used inside the kernel.
Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Add driver for the Satelco Easywatch Mobile DVB-T card (based on Pluto2 chip).
Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Add generalized dvb-usb driver which supports a wide variety of devices.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Remove the dibusb driver which has been obsoleted by the generalized dvb-usb
driver.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
b2c2/flexcop driver refactoring to support PCI and USB based cards part 2: add
modular Flexcop driver
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.
Let it rip!