26 Jan, 2017
1 commit
-
commit c0026c7bfb95c250c3e34fde59f96ad72fd730d6 upstream.
Clock control indirectly requires access to MFC device, so call it only
if we are sure that the device exists in s5p_mfc_release function.
s5p_mfc_remove() calls s5p_mfc_final_pm(), which releases all PM related
resources, including clocks, so any call to clocks related functions
is not valid after s5p_mfc_final_pm().Fixes: d695c12 ("[media] media: s5p-mfc fix invalid memory access from
s5p_mfc_release()")Signed-off-by: Marek Szyprowski
Signed-off-by: Sylwester Nawrocki
Signed-off-by: Mauro Carvalho Chehab
Signed-off-by: Greg Kroah-Hartman
09 Jan, 2017
1 commit
-
commit 3467c9a7e7f9209a9ecd8f9db65b04a323a13932 upstream.
s5p_mfc_alloc_memdev() function lacks proper releasing
of allocated device in case of reserved memory initialization
failure. This results in NULL pointer dereference:[ 2.828457] Unable to handle kernel NULL pointer dereference at virtual address 00000001
[ 2.835089] pgd = c0004000
[ 2.837752] [00000001] *pgd=00000000
[ 2.844696] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
[ 2.848680] Modules linked in:
[ 2.851722] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.8.0-rc6-00002-gafa1b97 #878
[ 2.859357] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 2.865433] task: ef080000 task.stack: ef06c000
[ 2.869952] PC is at strcmp+0x0/0x30
[ 2.873508] LR is at platform_match+0x84/0xac
[ 2.877847] pc : [] lr : [] psr: 20000013
[ 2.877847] sp : ef06dea0 ip : 00000000 fp : 00000000
[ 2.889303] r10: 00000000 r9 : c0b34848 r8 : c0b1e968
[ 2.894511] r7 : 00000000 r6 : 00000001 r5 : c086e7fc r4 : eeb8e010
[ 2.901021] r3 : 0000006d r2 : 00000000 r1 : c086e7fc r0 : 00000001
[ 2.907533] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none
[ 2.914649] Control: 10c5387d Table: 4000404a DAC: 00000051
[ 2.920378] Process swapper/0 (pid: 1, stack limit = 0xef06c210)
[ 2.926367] Stack: (0xef06dea0 to 0xef06e000)
[ 2.930711] dea0: eeb8e010 c0c2d91c c03f4a6c c03f4a8c 00000000 c0c2d91c c03f4a6c c03f2fc8
[ 2.938870] dec0: ef003274 ef10c4c0 c0c2d91c ef10cc80 c0c21270 c03f3fa4 c09c1be8 c0c2d91c
[ 2.947028] dee0: 00000006 c0c2d91c 00000006 c0b3483c c0c47000 c03f5314 c0c2d908 c0b5fed8
[ 2.955188] df00: 00000006 c010178c 60000013 c0a4ef14 00000000 c06feaa0 ef080000 60000013
[ 2.963347] df20: 00000000 c0c095c8 efffca76 c0816b8c 000000d5 c0134098 c0b34848 c09d6cdc
[ 2.971506] df40: c0a4de70 00000000 00000006 00000006 c0c09568 efffca40 c0b5fed8 00000006
[ 2.979665] df60: c0b3483c c0c47000 000000d5 c0b34848 c0b005a4 c0b00d84 00000006 00000006
[ 2.987824] df80: 00000000 c0b005a4 00000000 c06fb4d8 00000000 00000000 00000000 00000000
[ 2.995983] dfa0: 00000000 c06fb4e0 00000000 c01079b8 00000000 00000000 00000000 00000000
[ 3.004142] dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 3.012302] dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 ffffffff ffffffff
[ 3.020469] [] (strcmp) from [] (platform_match+0x84/0xac)
[ 3.027672] [] (platform_match) from [] (__driver_attach+0x20/0xb0)
[ 3.035654] [] (__driver_attach) from [] (bus_for_each_dev+0x54/0x88)
[ 3.043812] [] (bus_for_each_dev) from [] (bus_add_driver+0xe8/0x1f4)
[ 3.051971] [] (bus_add_driver) from [] (driver_register+0x78/0xf4)
[ 3.059958] [] (driver_register) from [] (do_one_initcall+0x3c/0x16c)
[ 3.068123] [] (do_one_initcall) from [] (kernel_init_freeable+0x120/0x1ec)
[ 3.076802] [] (kernel_init_freeable) from [] (kernel_init+0x8/0x118)
[ 3.084958] [] (kernel_init) from [] (ret_from_fork+0x14/0x3c)
[ 3.092506] Code: 1afffffb e12fff1e e1a03000 eafffff7 (e4d03001)
[ 3.098618] ---[ end trace 511bf9d750810709 ]---
[ 3.103207] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000bThis patch fixes this issue.
Fixes: c79667dd93b084fe412bcfe7fbf0ba43f7dec520 ("media: s5p-mfc: replace custom
reserved memory handling code with generic one")Signed-off-by: Marek Szyprowski
Signed-off-by: Sylwester Nawrocki
Signed-off-by: Mauro Carvalho Chehab
Signed-off-by: Greg Kroah-Hartman
25 Aug, 2016
5 commits
-
alloc_workqueue replaces deprecated create_singlethread_workqueue().
The MFC device driver is a v4l2 driver which can encode/decode video
raw/elementary streams and has support for all popular video codecs.The driver's watchdog_workqueue has been replaced with system_wq since
it queues a single work item, &dev->watchdog_work, which calls for no
ordering requirement. The work item is involved in running the watchdog
timer and is not being used on a memory reclaim path.Work item has been flushed in s5p_mfc_remove() to ensure
that there are no pending tasks while disconnecting the driver.Signed-off-by: Bhaktipriya Shridhar
Acked-by: Tejun Heo
Signed-off-by: Sylwester Nawrocki
Signed-off-by: Mauro Carvalho Chehab -
Removed unnecessary error message as appropriate error code is returned.
Changed error message into a debug.Signed-off-by: Shuah Khan
Reviewed-by: Javier Martinez Canillas
Signed-off-by: Sylwester Nawrocki
Signed-off-by: Mauro Carvalho Chehab -
Remove unneeded error handling on the result of a call
to platform_get_resource() when the value is passed to
devm_ioremap_resource().Signed-off-by: Wei Yongjun
Signed-off-by: Sylwester Nawrocki
Signed-off-by: Mauro Carvalho Chehab -
Remove void function return statement
Signed-off-by: Shuah Khan
Reviewed-by: Javier Martinez Canillas
Signed-off-by: Sylwester Nawrocki
Signed-off-by: Mauro Carvalho Chehab -
If s5p_mfc_release() runs after s5p_mfc_remove(), the former will access
invalid s5p_mfc_dev pointer saved in the s5p_mfc_ctx and runs into kernel
paging request errors.Clear ctx dev pointer in s5p_mfc_remove() and change s5p_mfc_release() to
avoid work that requires ctx->dev.odroid kernel: Unable to handle kernel paging request at virtual address
f17c1104
odroid kernel: pgd = ebca4000
odroid kernel: [f17c1104] *pgd=6e23d811, *pte=00000000, *ppte=00000000
odroid kernel: Internal error: Oops: 807 [#1] PREEMPT SMP ARM
odroid kernel: Modules linked in: cpufreq_userspace cpufreq_powersave
cpufreq_conservative s5p_mfc s5p_jpeg v4l2_mem2mem
videobuf2_dma_contig videobuf2_memops videobuf2_v4l2 videobuf2_core
v4l2_common videodev media
odroid kernel: Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
odroid kernel: task: c2241400 ti: e7018000 task.ti: e7018000
odroid kernel: PC is at s5p_mfc_reset+0x40/0x28c [s5p_mfc]
odroid kernel: LR is at s5p_mfc_reset+0x34/0x28c [s5p_mfc]
odroid kernel: pc : [] lr : [] psr: 60010013
odroid kernel: [] (s5p_mfc_reset [s5p_mfc]) from []
(s5p_mfc_deinit_hw+0x14/0x3c [s5p_mfc])
odroid kernel: [] (s5p_mfc_deinit_hw [s5p_mfc]) from []
(s5p_mfc_release+0xac/0x1c4 [s5p_mfc])
odroid kernel: [] (s5p_mfc_release [s5p_mfc]) from []
(v4l2_release+0x38/0x74 [videodev])
odroid kernel: [] (v4l2_release [videodev]) from []
(__fput+0x80/0x1c8)
odroid kernel: [] (__fput) from []
(task_work_run+0x94/0xc8)
odroid kernel: [] (task_work_run) from []
(do_work_pending+0x7c/0xa4)
odroid kernel: [] (do_work_pending) from []
(slow_work_pending+0xc/0x20)
odroid kernel: Code: eb3edacc e5953078 e3a06000 e2833c11 (e5836004)Signed-off-by: Shuah Khan
Tested-by: Luis de Bethencourt
Signed-off-by: Sylwester Nawrocki
Signed-off-by: Mauro Carvalho Chehab
09 Jul, 2016
5 commits
-
Stop using alloc_ctx and just fill in the device pointer.
Signed-off-by: Hans Verkuil
Cc: Kyungmin Park
Cc: Sylwester Nawrocki
Signed-off-by: Mauro Carvalho Chehab -
According to the V4L2 documentation the driver and card fields should be
used to identify the driver and the device but the s5p-mfc driver fills
those field using the platform device name, which in turn is the name of
the device DT node.So not only the filled information isn't correct but also the same values
are used in all the fields for both the encoder and decoder video devices.Before this patch:
Driver Info (not using libv4l2):
Driver name : 11000000.codec
Card type : 11000000.codec
Bus info : platform:11000000.codec
Driver version: 4.7.0Driver Info (not using libv4l2):
Driver name : 11000000.codec
Card type : 11000000.codec
Bus info : platform:11000000.codec
Driver version: 4.7.0After this patch:
Driver Info (not using libv4l2):
Driver name : s5p-mfc
Card type : s5p-mfc-dec
Bus info : platform:11000000.codec
Driver version: 4.7.0Driver Info (not using libv4l2):
Driver name : s5p-mfc
Card type : s5p-mfc-enc
Bus info : platform:11000000.codec
Driver version: 4.7.0Signed-off-by: Javier Martinez Canillas
Acked-by: Hans Verkuil
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab -
This patch fixes the error path in the driver probe, so in case of
any failure, the resources are not leaked.Reported-by: Liviu Dudau
Signed-off-by: Marek Szyprowski
Acked-by: Liviu Dudau
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab -
s5p_mfc_remove() fails to release encoder and decoder video devices.
Signed-off-by: Shuah Khan
Reviewed-by: Javier Martinez Canillas
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab -
Fix Decoder and encoder video device double release in probe error path.
video_device_release(dev->vfd_dec) get called twice if decoder register
fails. Also, video_device_release(dev->vfd_enc) get called twice if encoder
register fails.Signed-off-by: Shuah Khan
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab
03 Jun, 2016
6 commits
-
This patch adds support for IOMMU to s5p-mfc device driver. MFC firmware
is limited and it cannot use the default configuration. If IOMMU is
available, the patch disables the default DMA address space
configuration and creates a new address space of size limited to 256M
and base address set to 0x20000000.For now the same address space is shared by both 'left' and 'right'
memory channels, because the DMA/IOMMU frameworks do not support
configuring them separately. This is not optimal, but besides limiting
total address space available has no other drawbacks (MFC firmware
supports 256M of address space per each channel).Signed-off-by: Marek Szyprowski
Reviewed-by: Javier Martinez Canillas
Tested-by: Javier Martinez Canillas
Signed-off-by: Sylwester Nawrocki -
This patch removes custom code for initialization and handling of
reserved memory regions in s5p-mfc driver and replaces it with generic
reserved memory regions api.s5p-mfc driver now handles two reserved memory regions defined by
generic reserved memory bindings. Support for non-dt platform has been
removed, because all supported platforms have been already converted to
device tree.Signed-off-by: Marek Szyprowski
Reviewed-by: Javier Martinez Canillas
Tested-by: Javier Martinez Canillas
Signed-off-by: Sylwester Nawrocki -
All multimedia devices found on Exynos SoCs support only contiguous
buffers, so set DMA max segment size to DMA_BIT_MASK(32) to let memory
allocator to correctly create contiguous memory mappings.Signed-off-by: Marek Szyprowski
Signed-off-by: Sylwester Nawrocki -
The s5p_mfc_probe() function registers the video devices before all the
resources needed by s5p_mfc_open() are correctly initalized.So if s5p_mfc_open() function is called before s5p_mfc_probe() finishes
(since the video dev is already registered), a NULL pointer dereference
will happen due s5p_mfc_open() accessing uninitialized vars such as the
struct s5p_mfc_dev .watchdog_timer and .mfc_ops fields.An example is following BUG caused by add_timer() getting a NULL pointer:
[ 45.765374] kernel BUG at kernel/time/timer.c:790!
[ 45.765381] Internal error: Oops - BUG: 0 [#1] PREEMPT SMP ARM
...
[ 45.766149] [] (mod_timer) from [] (s5p_mfc_open+0x274/0x4d4 [s5p_mfc])
[ 45.766416] [] (s5p_mfc_open [s5p_mfc]) from [] (v4l2_open+0x9c/0x100 [videodev])
[ 45.766547] [] (v4l2_open [videodev]) from [] (chrdev_open+0x9c/0x178)
[ 45.766575] [] (chrdev_open) from [] (do_dentry_open+0x1e0/0x300)
[ 45.766595] [] (do_dentry_open) from [] (path_openat+0x800/0x10d4)
[ 45.766610] [] (path_openat) from [] (do_filp_open+0x5c/0xc0)
[ 45.766624] [] (do_filp_open) from [] (do_sys_open+0x10c/0x1bc)
[ 45.766642] [] (do_sys_open) from [] (ret_fast_syscall+0x0/0x3c)
[ 45.766655] Code: eaffffe3 e3a00001 e28dd008 e8bd81f0 (e7f001f2)Fix it by registering the video devs as the last step in s5p_mfc_probe().
Signed-off-by: Javier Martinez Canillas
Tested-by: Marek Szyprowski
Signed-off-by: Sylwester Nawrocki -
When s5p_mfc_remove() calls put_device() for the reserved memory region
devs, the driver core warns that the dev doesn't have a release callback:WARNING: CPU: 0 PID: 591 at drivers/base/core.c:251 device_release+0x8c/0x90
Device 's5p-mfc-l' does not have a release() function, it is broken and must be fixed.Also, the declared DMA memory using dma_declare_coherent_memory() isn't
relased so add a dev .release that calls dma_release_declared_memory().Cc:
Fixes: 6e83e6e25eb4 ("[media] s5p-mfc: Fix kernel warning on memory init")
Signed-off-by: Javier Martinez Canillas
Tested-by: Marek Szyprowski
Signed-off-by: Sylwester Nawrocki -
The devices don't have a name set, so makes dev_name() returns NULL which
makes harder to identify the devices that are causing issues, for example:WARNING: CPU: 2 PID: 616 at drivers/base/core.c:251 device_release+0x8c/0x90
Device '(null)' does not have a release() function, it is broken and must be fixed.And after setting the device name:
WARNING: CPU: 0 PID: 591 at drivers/base/core.c:251 device_release+0x8c/0x90
Device 's5p-mfc-l' does not have a release() function, it is broken and must be fixed.Cc:
Fixes: 6e83e6e25eb4 ("[media] s5p-mfc: Fix kernel warning on memory init")
Signed-off-by: Javier Martinez Canillas
Tested-by: Marek Szyprowski
Signed-off-by: Sylwester Nawrocki
14 Apr, 2016
1 commit
-
Exynos and Samsung S5P platforms has been fully converted to device
tree, so old platform device based init data can be now removed.Signed-off-by: Marek Szyprowski
Signed-off-by: Sylwester Nawrocki
Signed-off-by: Mauro Carvalho Chehab
23 Dec, 2015
4 commits
-
Both macros can be merged into one.
Signed-off-by: Andrzej Hajda
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab -
MFC driver uses dev->irqlock spinlock to protect queues only, but many context
fields require protection also - they can be accessed concurrently
from IOCTLs and IRQ handler. The patch increases protection range of irqlock
to those fields also.Signed-off-by: Andrzej Hajda
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab -
Code for queue cleanup has nothing specific to hardware version.
Signed-off-by: Andrzej Hajda
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab -
Both version of MFC driver use functions with the same body and name.
The patch moves them to common location. It also simplifies it.Signed-off-by: Andrzej Hajda
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab
18 Dec, 2015
1 commit
-
Move timestamp from struct vb2_v4l2_buffer to struct vb2_buffer
for common use, and change its type to u64 in order to handling
y2038 problem. This patch also includes all device drivers' changes related to
this restructuring.Signed-off-by: Junghak Sung
Signed-off-by: Geunyoung Kim
Acked-by: Seung-Woo Kim
Acked-by: Inki Dae
Signed-off-by: Hans Verkuil
Signed-off-by: Mauro Carvalho Chehab
21 Oct, 2015
2 commits
-
MFC driver never delivered EOS event to apps feeding constantly its capture
buffer with fresh buffers. The patch fixes it by marking last buffers
returned by MFC with MFC_BUF_FLAG_EOS flag and firing EOS event on
de-queuing such buffers.Signed-off-by: Andrzej Hajda
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab -
MFC encoder supports end-of-stream handling for encoder
in version 5 of hardware. This patch adds it also for newer version.
It was successfully tested on MFC-v8.Signed-off-by: Andrzej Hajda
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab
01 Oct, 2015
2 commits
-
Remove v4l2 stuff - v4l2_buf, v4l2_plane - from struct vb2_buffer.
Add new member variables - bytesused, length, offset, userptr, fd,
data_offset - to struct vb2_plane in order to cover all information
of v4l2_plane.
struct vb2_plane {
unsigned int bytesused;
unsigned int length;
union {
unsigned int offset;
unsigned long userptr;
int fd;
} m;
unsigned int data_offset;
}Replace v4l2_buf with new member variables - index, type, memory - which
are common fields for buffer management.
struct vb2_buffer {
unsigned int index;
unsigned int type;
unsigned int memory;
unsigned int num_planes;
struct vb2_plane planes[VIDEO_MAX_PLANES];
};v4l2 specific fields - flags, field, timestamp, timecode,
sequence - are moved to vb2_v4l2_buffer in videobuf2-v4l2.c
struct vb2_v4l2_buffer {
struct vb2_buffer vb2_buf;__u32 flags;
__u32 field;
struct timeval timestamp;
struct v4l2_timecode timecode;
__u32 sequence;
};Signed-off-by: Junghak Sung
Signed-off-by: Geunyoung Kim
Acked-by: Seung-Woo Kim
Acked-by: Inki Dae
Signed-off-by: Hans Verkuil
Signed-off-by: Mauro Carvalho Chehab -
Make videobuf2-v4l2 as a wrapper of videobuf2-core for v4l2-use.
And replace videobuf2-core.h with videobuf2-v4l2.h.
This renaming change should be accompanied by the modifications
of all device drivers that include videobuf2-core.h.
It can be done with just running this shell script.replace()
{
str1=$1
str2=$2
dir=$3
for file in $(find $dir -name *.h -o -name *.c -o -name Makefile)
do
echo $file
sed "s/$str1/$str2/g" $file > $file.out
mv $file.out $file
done
}replace "videobuf2-core" "videobuf2-v4l2" "include/media/"
replace "videobuf2-core" "videobuf2-v4l2" "drivers/media/"
replace "videobuf2-core" "videobuf2-v4l2" "drivers/usb/gadget/"
replace "videobuf2-core" "videobuf2-v4l2" "drivers/staging/media/"Signed-off-by: Junghak Sung
Signed-off-by: Geunyoung Kim
Acked-by: Seung-Woo Kim
Acked-by: Inki Dae
Signed-off-by: Hans Verkuil
Signed-off-by: Mauro Carvalho Chehab
12 May, 2015
2 commits
-
Setting the last buffer flag causes the videobuf2 core to return -EPIPE from
DQBUF calls on the capture queue after the last buffer is dequeued.Signed-off-by: Philipp Zabel
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab -
The platform_device_id is not modified by the driver and core uses it as
const.Signed-off-by: Krzysztof Kozlowski
[k.debski@samsung.com: Fix misspelling in title (s/sp5/s5p/)]
Signed-off-by: Kamil DebskiSigned-off-by: Mauro Carvalho Chehab
01 May, 2015
1 commit
-
As reported by smatch:
drivers/media/platform/s5p-mfc/s5p_mfc.c:1340 s5p_mfc_runtime_resume() warn: this array is probably non-NULL. 'm_dev->alloc_ctx'alloc_ctx can never be NULL, as it is embeeded inside the struct
s5p_mfc_dev.Signed-off-by: Mauro Carvalho Chehab
21 Apr, 2015
1 commit
-
* patchwork: (404 commits)
[media] uvcvideo: add support for VIDIOC_QUERY_EXT_CTRL
[media] uvcvideo: fix cropcap v4l2-compliance failure
[media] media: omap3isp: remove unused clkdev
[media] coda: Add tracing support
[media] coda: drop dma_sync_single_for_device in coda_bitstream_queue
[media] coda: fix fill bitstream errors in nonstreaming case
[media] coda: call SEQ_END when the first queue is stopped
[media] coda: fail to start streaming if userspace set invalid formats
[media] coda: remove duplicate error messages for buffer allocations
[media] coda: move parameter buffer in together with context buffer allocation
[media] coda: allocate bitstream buffer from REQBUFS, size depends on the format
[media] coda: allocate per-context buffers from REQBUFS
[media] coda: use strlcpy instead of snprintf
[media] coda: bitstream payload is unsigned
[media] coda: fix double call to debugfs_remove
[media] coda: check kasprintf return value in coda_open
[media] coda: bitrate can only be set in kbps steps
[media] v4l2-mem2mem: no need to initialize b in v4l2_m2m_next_buf and v4l2_m2m_buf_remove
[media] s5p-mfc: set allow_zero_bytesused flag for vb2_queue_init
[media] coda: set allow_zero_bytesused flag for vb2_queue_init
...
10 Apr, 2015
1 commit
-
The s5p-mfc driver interprets a buffer with bytesused equal to 0 as a
special case indicating end-of-stream. After vb2: fix bytesused == 0
handling (8a75ffb) patch videobuf2 modified the value of bytesused if it
was 0. The allow_zero_bytesused flag was added to videobuf2 to keep
backward compatibility.Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab
04 Mar, 2015
1 commit
-
The patch "media: s5p-mfc: use vb2_ops_wait_prepare/finish helper"
(654a731be1a0b6f606f3f3d12b50db08f2ae3c3) introduced a kernel panic.
The q->lock was set for just one queue, the other was not set thus causing
a NULL pointer dereference.Reported-by: Marek Szyprowski
Signed-off-by: Kamil Debski
Signed-off-by: Sylwester Nawrocki
Signed-off-by: Mauro Carvalho Chehab
23 Dec, 2014
1 commit
-
This patch drops driver specific wait_prepare() and
wait_finish() callbacks from vb2_ops and instead uses
the the helpers vb2_ops_wait_prepare/finish() provided
by the vb2 core, the lock member of the queue needs
to be initalized to a mutex so that vb2 helpers
vb2_ops_wait_prepare/finish() can make use of it.Signed-off-by: Lad, Prabhakar
Cc: Kyungmin Park
Cc: Kamil Debski
Cc: Jeongtae Park
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab
15 Dec, 2014
1 commit
-
Pull driver core update from Greg KH:
"Here's the set of driver core patches for 3.19-rc1.They are dominated by the removal of the .owner field in platform
drivers. They touch a lot of files, but they are "simple" changes,
just removing a line in a structure.Other than that, a few minor driver core and debugfs changes. There
are some ath9k patches coming in through this tree that have been
acked by the wireless maintainers as they relied on the debugfs
changes.Everything has been in linux-next for a while"
* tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (324 commits)
Revert "ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries"
fs: debugfs: add forward declaration for struct device type
firmware class: Deletion of an unnecessary check before the function call "vunmap"
firmware loader: fix hung task warning dump
devcoredump: provide a one-way disable function
device: Add dev__once variants
ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries
ath: use seq_file api for ath9k debugfs files
debugfs: add helper function to create device related seq_file
drivers/base: cacheinfo: remove noisy error boot message
Revert "core: platform: add warning if driver has no owner"
drivers: base: support cpu cache information interface to userspace via sysfs
drivers: base: add cpu_device_create to support per-cpu devices
topology: replace custom attribute macros with standard DEVICE_ATTR*
cpumask: factor out show_cpumap into separate helper function
driver core: Fix unbalanced device reference in drivers_probe
driver core: fix race with userland in device_add()
sysfs/kernfs: make read requests on pre-alloc files use the buffer.
sysfs/kernfs: allow attributes to request write buffer be pre-allocated.
fs: sysfs: return EGBIG on write if offset is larger than file size
...
12 Dec, 2014
1 commit
-
Pull media updates from Mauro Carvalho Chehab:
- Two new dvb frontend drivers: mn88472 and mn88473
- A new driver for some PCIe DVBSky cards
- A new remote controller driver: meson-ir
- One LIRC staging driver got rewritten and promoted to mainstream:
igorplugusb
- A new tuner driver (m88rs6000t)
- The old omap2 media driver got removed from staging. This driver
uses an old DMA API and it is likely broken on recent kernels.
Nobody cared enough to fix it
- Media bus format moved to a separate header, as DRM will also use the
definitions there
- mem2mem_testdev were renamed to vim2m, in order to use the same
naming convention taken by the other virtual test driver (vivid)
- Added a new driver for coda SoC (coda-jpeg)
- The cx88 driver got converted to use videobuf2 core
- Make DMABUF export buffer to work with DMA Scatter/Gather and Vmalloc
cores
- Lots of other fixes, improvements and cleanups on the drivers.* tag 'media/v3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (384 commits)
[media] mn88473: One function call less in mn88473_init() after error
[media] mn88473: Remove uneeded check before release_firmware()
[media] lirc_zilog: Deletion of unnecessary checks before vfree()
[media] MAINTAINERS: Add myself as img-ir maintainer
[media] img-ir: Don't set driver's module owner
[media] img-ir: Depend on METAG or MIPS or COMPILE_TEST
[media] img-ir/hw: Drop [un]register_decoder declarations
[media] img-ir/hw: Fix potential deadlock stopping timer
[media] img-ir/hw: Always read data to clear buffer
[media] redrat3: ensure dma is setup properly
[media] ddbridge: remove unneeded check before dvb_unregister_device()
[media] si2157: One function call less in si2157_init() after error
[media] tuners: remove uneeded checks before release_firmware()
[media] arm: omap2: rx51-peripherals: fix build warning
[media] stv090x: add an extra protetion against buffer overflow
[media] stv090x: Remove an unreachable code
[media] stv090x: Some whitespace cleanups
[media] em28xx: checkpatch cleanup: whitespaces/new lines cleanups
[media] si2168: add support for firmware files in new format
[media] si2168: debug printout for firmware version
...
05 Dec, 2014
1 commit
-
After commit b2b49ccbdd54 (PM: Kconfig: Set PM_RUNTIME if PM_SLEEP is
selected) PM_RUNTIME is always set if PM is set, so #ifdef blocks
depending on CONFIG_PM_RUNTIME may now be changed to depend on
CONFIG_PM.The alternative of CONFIG_PM_SLEEP and CONFIG_PM_RUNTIME may be
replaced with CONFIG_PM too.Make these changes everywhere under drivers/media/.
Acked-by: Sylwester Nawrocki
Acked-by: Philipp Zabel
Acked-by: Kamil Debski
Acked-by: Mauro Carvalho Chehab
Signed-off-by: Rafael J. Wysocki
05 Nov, 2014
1 commit
-
Both sides of these assignments actually have type "const struct
vb2_mem_ops *", so the casts are unnecessary and slightly confusing.Signed-off-by: Rasmus Villemoes
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab
29 Oct, 2014
1 commit
-
If the software watchdog kicks in, we need to de-init MFC
before reloading firmware and re-intializing it again.Signed-off-by: Arun Mankuzhi
Signed-off-by: Kiran AVND
Signed-off-by: Arun Kumar K
Signed-off-by: Kamil Debski
Signed-off-by: Mauro Carvalho Chehab