<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/media, branch v3.10.17</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/media?h=v3.10.17</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/media?h=v3.10.17'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-10-01T16:17:48Z</updated>
<entry>
<title>Properly handle tristate dependencies on USB/PCI menus</title>
<updated>2013-10-01T16:17:48Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
<email>mchehab@redhat.com</email>
</author>
<published>2013-05-22T14:25:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=7b7b9915f77d3c5db399866080751e9dafc9136f'/>
<id>urn:sha1:7b7b9915f77d3c5db399866080751e9dafc9136f</id>
<content type='text'>
commit 5077ac3b8108007f4a2b4589f2d373cf55453206 upstream.

As USB/PCI/MEDIA_SUPPORT dependencies can be tristate, we can't
simply make the bool menu to be dependent on it. Everything below
the menu should also depend on it, otherwise, we risk to allow
building them with 'y', while only 'm' would be supported.

So, add an IF just before everything below, in order to avoid
such risks.

Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Cc: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: media/usb: fix kconfig dependencies</title>
<updated>2013-10-01T16:17:47Z</updated>
<author>
<name>Randy Dunlap</name>
<email>rdunlap@infradead.org</email>
</author>
<published>2013-05-08T20:28:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3db27a31a8b1c89bd6a0736559ee58550efe6278'/>
<id>urn:sha1:3db27a31a8b1c89bd6a0736559ee58550efe6278</id>
<content type='text'>
commit a0f9354b1a319cb29c331bfd2e5a15d7f9b87fa4 upstream.

(a.k.a. Kconfig bool depending on a tristate considered harmful)
Fix various build errors when CONFIG_USB=m and media USB drivers
are builtin.  In this case, CONFIG_USB_ZR364XX=y,
CONFIG_VIDEO_PVRUSB2=y, and CONFIG_VIDEO_STK1160=y.
This is caused by (from drivers/media/usb/Kconfig):
menuconfig MEDIA_USB_SUPPORT
	bool "Media USB Adapters"
	depends on USB &amp;&amp; MEDIA_SUPPORT
	           =m     =y
so MEDIA_USB_SUPPORT=y and all following Kconfig 'source' lines
are included.  By adding an "if USB" guard around most of this file,
the needed dependencies are enforced.
drivers/built-in.o: In function `zr364xx_start_readpipe':
zr364xx.c:(.text+0xc726a): undefined reference to `usb_alloc_urb'
zr364xx.c:(.text+0xc72bb): undefined reference to `usb_submit_urb'
drivers/built-in.o: In function `zr364xx_stop_readpipe':
zr364xx.c:(.text+0xc72fd): undefined reference to `usb_kill_urb'
zr364xx.c:(.text+0xc7309): undefined reference to `usb_free_urb'
drivers/built-in.o: In function `read_pipe_completion':
zr364xx.c:(.text+0xc7acc): undefined reference to `usb_submit_urb'
drivers/built-in.o: In function `send_control_msg.constprop.12':
zr364xx.c:(.text+0xc7d2f): undefined reference to `usb_control_msg'
drivers/built-in.o: In function `pvr2_ctl_timeout':
pvrusb2-hdw.c:(.text+0xcadb6): undefined reference to `usb_unlink_urb'
pvrusb2-hdw.c:(.text+0xcadcb): undefined reference to `usb_unlink_urb'
drivers/built-in.o: In function `pvr2_hdw_create':
(.text+0xcc42c): undefined reference to `usb_alloc_urb'
drivers/built-in.o: In function `pvr2_hdw_create':
(.text+0xcc448): undefined reference to `usb_alloc_urb'
drivers/built-in.o: In function `pvr2_hdw_create':
(.text+0xcc5f9): undefined reference to `usb_set_interface'
drivers/built-in.o: In function `pvr2_hdw_create':
(.text+0xcc65a): undefined reference to `usb_free_urb'
drivers/built-in.o: In function `pvr2_hdw_create':
(.text+0xcc666): undefined reference to `usb_free_urb'
drivers/built-in.o: In function `pvr2_send_request_ex.part.22':
pvrusb2-hdw.c:(.text+0xccbe3): undefined reference to `usb_submit_urb'
pvrusb2-hdw.c:(.text+0xccc83): undefined reference to `usb_submit_urb'
drivers/built-in.o: In function `pvr2_hdw_remove_usb_stuff.part.25':
pvrusb2-hdw.c:(.text+0xcd3f9): undefined reference to `usb_kill_urb'
pvrusb2-hdw.c:(.text+0xcd405): undefined reference to `usb_free_urb'
pvrusb2-hdw.c:(.text+0xcd421): undefined reference to `usb_kill_urb'
pvrusb2-hdw.c:(.text+0xcd42d): undefined reference to `usb_free_urb'
drivers/built-in.o: In function `pvr2_hdw_device_reset':
(.text+0xcd658): undefined reference to `usb_lock_device_for_reset'
drivers/built-in.o: In function `pvr2_hdw_device_reset':
(.text+0xcd664): undefined reference to `usb_reset_device'
drivers/built-in.o: In function `pvr2_hdw_cpureset_assert':
(.text+0xcd6f9): undefined reference to `usb_control_msg'
drivers/built-in.o: In function `pvr2_hdw_cpufw_set_enabled':
(.text+0xcd84e): undefined reference to `usb_control_msg'
drivers/built-in.o: In function `pvr2_upload_firmware1':
pvrusb2-hdw.c:(.text+0xcda47): undefined reference to `usb_clear_halt'
pvrusb2-hdw.c:(.text+0xcdb04): undefined reference to `usb_control_msg'
drivers/built-in.o: In function `pvr2_upload_firmware2':
(.text+0xce7dc): undefined reference to `usb_bulk_msg'
drivers/built-in.o: In function `pvr2_stream_buffer_count':
pvrusb2-io.c:(.text+0xd2e05): undefined reference to `usb_alloc_urb'
pvrusb2-io.c:(.text+0xd2e5b): undefined reference to `usb_kill_urb'
pvrusb2-io.c:(.text+0xd2e9f): undefined reference to `usb_free_urb'
drivers/built-in.o: In function `pvr2_stream_internal_flush':
pvrusb2-io.c:(.text+0xd2f9b): undefined reference to `usb_kill_urb'
drivers/built-in.o: In function `pvr2_buffer_queue':
(.text+0xd3328): undefined reference to `usb_kill_urb'
drivers/built-in.o: In function `pvr2_buffer_queue':
(.text+0xd33ea): undefined reference to `usb_submit_urb'
drivers/built-in.o: In function `stk1160_read_reg':
(.text+0xd3efa): undefined reference to `usb_control_msg'
drivers/built-in.o: In function `stk1160_write_reg':
(.text+0xd3f4f): undefined reference to `usb_control_msg'
drivers/built-in.o: In function `stop_streaming':
stk1160-v4l.c:(.text+0xd4997): undefined reference to `usb_set_interface'
drivers/built-in.o: In function `start_streaming':
stk1160-v4l.c:(.text+0xd4a9f): undefined reference to `usb_set_interface'
stk1160-v4l.c:(.text+0xd4afa): undefined reference to `usb_submit_urb'
stk1160-v4l.c:(.text+0xd4ba3): undefined reference to `usb_set_interface'
drivers/built-in.o: In function `stk1160_isoc_irq':
stk1160-video.c:(.text+0xd509b): undefined reference to `usb_submit_urb'
drivers/built-in.o: In function `stk1160_cancel_isoc':
(.text+0xd50ef): undefined reference to `usb_kill_urb'
drivers/built-in.o: In function `stk1160_free_isoc':
(.text+0xd5155): undefined reference to `usb_free_coherent'
drivers/built-in.o: In function `stk1160_free_isoc':
(.text+0xd515d): undefined reference to `usb_free_urb'
drivers/built-in.o: In function `stk1160_alloc_isoc':
(.text+0xd5278): undefined reference to `usb_alloc_urb'
drivers/built-in.o: In function `stk1160_alloc_isoc':
(.text+0xd52c2): undefined reference to `usb_alloc_coherent'
drivers/built-in.o: In function `stk1160_alloc_isoc':
(.text+0xd53c4): undefined reference to `usb_free_urb'
drivers/built-in.o: In function `zr364xx_driver_init':
zr364xx.c:(.init.text+0x463e): undefined reference to `usb_register_driver'
drivers/built-in.o: In function `pvr_init':
pvrusb2-main.c:(.init.text+0x4662): undefined reference to `usb_register_driver'
drivers/built-in.o: In function `stk1160_usb_driver_init':
stk1160-core.c:(.init.text+0x467d): undefined reference to `usb_register_driver'
drivers/built-in.o: In function `zr364xx_driver_exit':
zr364xx.c:(.exit.text+0x1377): undefined reference to `usb_deregister'
drivers/built-in.o: In function `pvr_exit':
pvrusb2-main.c:(.exit.text+0x1389): undefined reference to `usb_deregister'
drivers/built-in.o: In function `stk1160_usb_driver_exit':
stk1160-core.c:(.exit.text+0x13a0): undefined reference to `usb_deregister'

Suggested-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: siano: fix divide error on 0 counters</title>
<updated>2013-09-27T00:18:27Z</updated>
<author>
<name>Bjørn Mork</name>
<email>bjorn@mork.no</email>
</author>
<published>2013-08-14T08:24:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d2310f7119ba394d3256c221886c048189dcfb91'/>
<id>urn:sha1:d2310f7119ba394d3256c221886c048189dcfb91</id>
<content type='text'>
commit ec532503209053bbee0c7dac410031e50835e01a upstream.

GIT_AUTHOR_DATE=1376465691
I took a quick look at the code and wonder if the problem is caused by
an initial zero statistics message?  This is all just a wild guess, but
if it is correct, then the attached untested patch might fix it...
Bjørn
&gt;From d78a0599d5b5d4da384eae08bf7da316389dfbe5 Mon Sep 17 00:00:00 2001
ts_packets and ets_packets counters can be 0.  Don't fall over
if they are. Fixes:
[  846.851711] divide error: 0000 [#1] SMP
[  846.851806] Modules linked in: smsdvb dvb_core ir_lirc_codec lirc_dev ir_sanyo_decoder ir_mce_kbd_decoder ir_sony_decoder ir_jvc_decoder ir_rc6_decoder ir_rc5_decoder ir_nec_decoder rc_hauppauge smsusb smsmdtv rc_core pci_stub vboxpci(O) vboxnetadp(O) vboxnetflt(O) vboxdrv(O) parport_pc ppdev lp parport cpufreq_userspace cpufreq_powersave cpufreq_stats cpufreq_conservative rfcomm bnep binfmt_misc uinput nfsd auth_rpcgss oid_registry nfs_acl nfs lockd dns_resolver fscache sunrpc ext4 jbd2 fuse tp_smapi(O) thinkpad_ec(O) loop firewire_sbp2 dm_crypt snd_hda_codec_conexant snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm thinkpad_acpi nvram snd_page_alloc hid_generic snd_seq_midi snd_seq_midi_event arc4 usbhid snd_rawmidi uvcvideo hid iwldvm coretemp kvm_intel mac8021
 1 cdc_wdm
[  846.853477]  cdc_acm snd_seq videobuf2_vmalloc videobuf2_memops videobuf2_core videodev media kvm radeon r852 ttm joydev cdc_ether usbnet pcmcia mii sm_common nand btusb drm_kms_helper tpm_tis acpi_cpufreq bluetooth iwlwifi nand_ecc drm nand_ids i2c_i801 mtd snd_seq_device iTCO_wdt iTCO_vendor_support r592 memstick lpc_ich mperf tpm yenta_socket pcmcia_rsrc pcmcia_core cfg80211 snd_timer snd pcspkr i2c_algo_bit crc16 i2c_core tpm_bios processor mfd_core wmi psmouse mei_me rfkill mei serio_raw soundcore evdev battery button video ac microcode ext3 mbcache jbd md_mod dm_mirror dm_region_hash dm_log dm_mod sg sr_mod sd_mod cdrom crc_t10dif firewire_ohci sdhci_pci sdhci mmc_core firewire_core crc_itu_t thermal thermal_sys ahci libahci ehci_pci uhci_hcd ehci_hcd libata scsi_mod usbcore e1000
 e usb_common
[  846.855310]  ptp pps_core
[  846.855356] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G           O 3.10-2-amd64 #1 Debian 3.10.5-1
[  846.855490] Hardware name: LENOVO 4061WFA/4061WFA, BIOS 6FET92WW (3.22 ) 12/14/2011
[  846.855609] task: ffffffff81613400 ti: ffffffff81600000 task.ti: ffffffff81600000
[  846.855636] RIP: 0010:[&lt;ffffffffa092be0c&gt;]  [&lt;ffffffffa092be0c&gt;] smsdvb_onresponse+0x264/0xa86 [smsdvb]
[  846.863906] RSP: 0018:ffff88013bc03cf0  EFLAGS: 00010046
[  846.863906] RAX: 0000000000000000 RBX: ffff880133bf6000 RCX: 0000000000000000
[  846.863906] RDX: 0000000000000000 RSI: ffff88005d3b58c0 RDI: ffff880133bf6000
[  846.863906] RBP: ffff88005d1da000 R08: 0000000000000058 R09: 0000000000000015
[  846.863906] R10: 0000000000001a0d R11: 000000000000021a R12: ffff88005d3b58c0
[  846.863906] R13: ffff88005d1da008 R14: 00000000ffffff8d R15: ffff880036cf5060
[  846.863906] FS:  0000000000000000(0000) GS:ffff88013bc00000(0000) knlGS:0000000000000000
[  846.863906] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[  846.863906] CR2: 00007f3a4b69ae50 CR3: 0000000036dac000 CR4: 00000000000407f0
[  846.863906] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  846.863906] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[  846.863906] Stack:
[  846.863906]  ffff88007a102000 ffff88005d1da000 ffff88005d3b58c0 0000000000085824
[  846.863906]  ffffffffa08c5aa3 ffff88005d1da000 ffff8800a6907390 ffff8800a69073b0
[  846.863906]  ffff8800a6907000 ffffffffa08b642c 000000000000021a ffff8800a69073b0
[  846.863906] Call Trace:
[  846.863906]  &lt;IRQ&gt;
[  846.863906]
[  846.863906]  [&lt;ffffffffa08c5aa3&gt;] ? smscore_onresponse+0x1d5/0x353 [smsmdtv]
[  846.863906]  [&lt;ffffffffa08b642c&gt;] ? smsusb_onresponse+0x146/0x192 [smsusb]
[  846.863906]  [&lt;ffffffffa004cb1a&gt;] ? usb_hcd_giveback_urb+0x6c/0xac [usbcore]
[  846.863906]  [&lt;ffffffffa0217be1&gt;] ? ehci_urb_done+0x62/0x72 [ehci_hcd]
[  846.863906]  [&lt;ffffffffa0217c82&gt;] ? qh_completions+0x91/0x364 [ehci_hcd]
[  846.863906]  [&lt;ffffffffa0219bba&gt;] ? ehci_work+0x8a/0x68e [ehci_hcd]
[  846.863906]  [&lt;ffffffff8107336c&gt;] ? timekeeping_get_ns.constprop.10+0xd/0x31
[  846.863906]  [&lt;ffffffff81064d41&gt;] ? update_cfs_rq_blocked_load+0xde/0xec
[  846.863906]  [&lt;ffffffff81058ec2&gt;] ? run_posix_cpu_timers+0x25/0x575
[  846.863906]  [&lt;ffffffffa021aa46&gt;] ? ehci_irq+0x211/0x23d [ehci_hcd]
[  846.863906]  [&lt;ffffffffa004c0c1&gt;] ? usb_hcd_irq+0x31/0x48 [usbcore]
[  846.863906]  [&lt;ffffffff810996fd&gt;] ? handle_irq_event_percpu+0x49/0x1a4
[  846.863906]  [&lt;ffffffff8109988a&gt;] ? handle_irq_event+0x32/0x4b
[  846.863906]  [&lt;ffffffff8109bd76&gt;] ? handle_fasteoi_irq+0x80/0xb6
[  846.863906]  [&lt;ffffffff8100e93e&gt;] ? handle_irq+0x18/0x20
[  846.863906]  [&lt;ffffffff8100e657&gt;] ? do_IRQ+0x40/0x95
[  846.863906]  [&lt;ffffffff813883ed&gt;] ? common_interrupt+0x6d/0x6d
[  846.863906]  &lt;EOI&gt;
[  846.863906]
[  846.863906]  [&lt;ffffffff812a011c&gt;] ? arch_local_irq_enable+0x4/0x8
[  846.863906]  [&lt;ffffffff812a04f3&gt;] ? cpuidle_enter_state+0x52/0xc1
[  846.863906]  [&lt;ffffffff812a0636&gt;] ? cpuidle_idle_call+0xd4/0x143
[  846.863906]  [&lt;ffffffff8101398c&gt;] ? arch_cpu_idle+0x5/0x17
[  846.863906]  [&lt;ffffffff81072571&gt;] ? cpu_startup_entry+0x10d/0x187
[  846.863906]  [&lt;ffffffff816b3d3d&gt;] ? start_kernel+0x3e8/0x3f3
[  846.863906]  [&lt;ffffffff816b3777&gt;] ? repair_env_string+0x54/0x54
[  846.863906]  [&lt;ffffffff816b3598&gt;] ? x86_64_start_kernel+0xf2/0xfd
[  846.863906] Code: 25 09 00 00 c6 83 da 08 00 00 03 8b 45 54 48 01 83 b6 08 00 00 8b 45 50 48 01 83 db 08 00 00 8b 4d 18 69 c1 ff ff 00 00 03 4d 14 &lt;48&gt; f7 f1 89 83 a8 09 00 00 e9 68 fe ff ff 48 8b 7f 10 e8 79 92
[  846.863906] RIP  [&lt;ffffffffa092be0c&gt;] smsdvb_onresponse+0x264/0xa86 [smsdvb]
[  846.863906]  RSP &lt;ffff88013bc03cf0&gt;
Reference: http://bugs.debian.org/719623

Reported-by: Johannes Rohr &lt;jorohr@gmail.com&gt;
Signed-off-by: Bjørn Mork &lt;bjorn@mork.no&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: mb86a20s: Fix TS parallel mode</title>
<updated>2013-09-27T00:18:26Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
<email>m.chehab@samsung.com</email>
</author>
<published>2013-08-09T11:53:26Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b3fcd91b96de3082d24636478a145bb50947c9eb'/>
<id>urn:sha1:b3fcd91b96de3082d24636478a145bb50947c9eb</id>
<content type='text'>
commit 9d32069faacdc81fe1dcb5d297c32a3ac81da8f0 upstream.

changeset 768e6dadd74 caused a regression on using mb86a20s
in parallel mode, as the parallel mode selection got
overriden by mb86a20s_init2.

Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: media: coda: Fix DT driver data pointer for i.MX27</title>
<updated>2013-09-27T00:18:26Z</updated>
<author>
<name>Alexander Shiyan</name>
<email>shc_work@mail.ru</email>
</author>
<published>2013-06-15T11:09:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4ff5ef250fb348707bad956e6eef7f84f1021675'/>
<id>urn:sha1:4ff5ef250fb348707bad956e6eef7f84f1021675</id>
<content type='text'>
commit 7b0dd9e60e714951b5400dd0740b3c4c3c3cb76f upstream.

The data pointer should point to DT data, and not to the ID
array.

Signed-off-by: Alexander Shiyan &lt;shc_work@mail.ru&gt;
Signed-off-by: Kamil Debski &lt;k.debski@samsung.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: hdpvr: fix iteration over uninitialized lists in hdpvr_probe()</title>
<updated>2013-09-27T00:18:26Z</updated>
<author>
<name>Alexey Khoroshilov</name>
<email>khoroshilov@ispras.ru</email>
</author>
<published>2013-07-03T19:17:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ed6db5dcac3698346227a49afb2635dfcb784057'/>
<id>urn:sha1:ed6db5dcac3698346227a49afb2635dfcb784057</id>
<content type='text'>
commit 2e923a0527ac439e135b9961e58d3acd876bba10 upstream.

free_buff_list and rec_buff_list are initialized in the middle of hdpvr_probe(),
but if something bad happens before that, error handling code calls hdpvr_delete(),
which contains iteration over the lists (via hdpvr_free_buffers()).
The patch moves the lists initialization to the beginning and by the way fixes
goto label in error handling of registering videodev.
Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov &lt;khoroshilov@ispras.ru&gt;
Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: s5p-g2d: Fix registration failure</title>
<updated>2013-09-27T00:18:17Z</updated>
<author>
<name>Sachin Kamat</name>
<email>sachin.kamat@linaro.org</email>
</author>
<published>2013-07-15T05:36:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=469641b2b568a9295396ff723573bdeaf2c4293e'/>
<id>urn:sha1:469641b2b568a9295396ff723573bdeaf2c4293e</id>
<content type='text'>
commit 8a09a4cc9bd9389dc6a3b5b2dd3a7d64d2fab7e1 upstream.

Commit 1c1d86a1ea ("[media] v4l2: always require v4l2_dev,
rename parent to dev_parent") expects v4l2_dev to be always set.
It converted most of the drivers using the parent field of video_device
to v4l2_dev field. G2D driver did not set the parent field. Hence it got
left out. Without this patch we get the following boot warning and G2D
driver fails to register the video device.
WARNING: CPU: 0 PID: 1 at drivers/media/v4l2-core/v4l2-dev.c:775 __video_register_device+0xfc0/0x1028()
Modules linked in:
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.11.0-rc1-00001-g1c3e372-dirty #9
[&lt;c0014b7c&gt;] (unwind_backtrace+0x0/0xf4) from [&lt;c0011524&gt;] (show_stack+0x10/0x14)
[&lt;c0011524&gt;] (show_stack+0x10/0x14) from [&lt;c041d7a8&gt;] (dump_stack+0x7c/0xb0)
[&lt;c041d7a8&gt;] (dump_stack+0x7c/0xb0) from [&lt;c001dc94&gt;] (warn_slowpath_common+0x6c/0x88)
[&lt;c001dc94&gt;] (warn_slowpath_common+0x6c/0x88) from [&lt;c001dd4c&gt;] (warn_slowpath_null+0x1c/0x24)
[&lt;c001dd4c&gt;] (warn_slowpath_null+0x1c/0x24) from [&lt;c02cf8d4&gt;] (__video_register_device+0xfc0/0x1028)
[&lt;c02cf8d4&gt;] (__video_register_device+0xfc0/0x1028) from [&lt;c0311a94&gt;] (g2d_probe+0x1f8/0x398)
[&lt;c0311a94&gt;] (g2d_probe+0x1f8/0x398) from [&lt;c0247d54&gt;] (platform_drv_probe+0x14/0x18)
[&lt;c0247d54&gt;] (platform_drv_probe+0x14/0x18) from [&lt;c0246b10&gt;] (driver_probe_device+0x108/0x220)
[&lt;c0246b10&gt;] (driver_probe_device+0x108/0x220) from [&lt;c0246cf8&gt;] (__driver_attach+0x8c/0x90)
[&lt;c0246cf8&gt;] (__driver_attach+0x8c/0x90) from [&lt;c0245050&gt;] (bus_for_each_dev+0x60/0x94)
[&lt;c0245050&gt;] (bus_for_each_dev+0x60/0x94) from [&lt;c02462c8&gt;] (bus_add_driver+0x1c0/0x24c)
[&lt;c02462c8&gt;] (bus_add_driver+0x1c0/0x24c) from [&lt;c02472d0&gt;] (driver_register+0x78/0x140)
[&lt;c02472d0&gt;] (driver_register+0x78/0x140) from [&lt;c00087c8&gt;] (do_one_initcall+0xf8/0x144)
[&lt;c00087c8&gt;] (do_one_initcall+0xf8/0x144) from [&lt;c05b29e8&gt;] (kernel_init_freeable+0x13c/0x1d8)
[&lt;c05b29e8&gt;] (kernel_init_freeable+0x13c/0x1d8) from [&lt;c041a108&gt;] (kernel_init+0xc/0x160)
[&lt;c041a108&gt;] (kernel_init+0xc/0x160) from [&lt;c000e2f8&gt;] (ret_from_fork+0x14/0x3c)
---[ end trace 4e0ec028b0028e02 ]---
s5p-g2d 12800000.g2d: Failed to register video device
s5p-g2d: probe of 12800000.g2d failed with error -22

Signed-off-by: Sachin Kamat &lt;sachin.kamat@linaro.org&gt;
Cc: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Kamil Debski &lt;k.debski@samsung.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: exynos4-is: Fix entity unregistration on error path</title>
<updated>2013-09-27T00:18:17Z</updated>
<author>
<name>Sylwester Nawrocki</name>
<email>s.nawrocki@samsung.com</email>
</author>
<published>2013-07-29T09:53:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cb6ecb39fe845251412e34e1d10bb6f4a3652f2f'/>
<id>urn:sha1:cb6ecb39fe845251412e34e1d10bb6f4a3652f2f</id>
<content type='text'>
commit d2b903b4427e417a73863cef36ad0796ea6b7404 upstream.

This patch corrects media entities unregistration order to make sure
the fimc.N.capture and fimc-lite video nodes are unregistered with
fimc-&gt;lock mutex held. This prevents races between video device open()
and defered probing and NULL pointer dereference in open() callback
as follows:
[   77.645000] Unable to handle kernel NULL pointer dereference at virtual address 00000290t
[   77.655000] pgd = ee7a8000
[   77.660000] [00000290] *pgd=6e13c831, *pte=00000000, *ppte=00000000
[   77.665000] Internal error: Oops: 17 [#1] PREEMPT SMP ARM
[   77.670000] Modules linked in: s5p_fimc ipv6 exynos_fimc_is exynos_fimc_lite
 s5p_csis v4l2_mem2mem videobuf2_dma_contig videobuf2_memops exynos4_is_common videobuf2_core [last unloaded: s5p_fimc]
[   77.685000] CPU: 0 PID : 2998 Comm: v4l_id Tainted: G        W   3.10.0-next-20130709-00039-g39f491b-dirty #1548
[   77.695000] task: ee084000 ti: ee46e000 task.ti: ee46e000
[   77.700000] PC is at __mutex_lock_slowpath+0x54/0x368
[   77.705000] LR is at __mutex_lock_slowpath+0x24/0x368
[   77.710000] pc : [&lt;c038dc10&gt;]    lr : [&lt;c038dbe0&gt;]    psr: 60000093
[   77.710000] sp : ee46fd70  ip : 000008c8  fp : c054e34c
[   77.725000] r10: ee084000  r9 : 00000000  r8 : ee439480
[   77.730000] r7 : ee46e000  r6 : 60000013  r5 : 00000290  r4 : 0000028c
[   77.735000] r3 : 00000000  r2 : 00000000  r1 : 20000093  r0 : 00000001
[   77.740000] Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM Segment user
[   77.750000] Control: 10c5387d  Table: 6e7a804a  DAC: 00000015
[   77.755000] Process v4l_id (pid: 2998, stack limit = 0xee46e238)
[   77.760000] Stack: (0xee46fd70 to 0xee470000)
    	       ...
[   77.935000] [&lt;c038dc10&gt;] (__mutex_lock_slowpath+0x54/0x368) from [&lt;c038df30&gt;] (mutex_lock+0xc/0x24)
[   77.945000] [&lt;c038df30&gt;] (mutex_lock+0xc/0x24) from [&lt;bf03fa90&gt;] (fimc_lite_open+0x12c/0x2bc [exynos_fimc_lite])
[   77.955000] [&lt;bf03fa90&gt;] (fimc_lite_open+0x12c/0x2bc [exynos_fimc_lite]) from [&lt;c02ab11c&gt;] (v4l2_open+0xa0/0xe0)
[   77.965000] [&lt;c02ab11c&gt;] (v4l2_open+0xa0/0xe0) from [&lt;c00b1de4&gt;] (chrdev_open+0x88/0x170)
[   77.975000] [&lt;c00b1de4&gt;] (chrdev_open+0x88/0x170) from [&lt;c00ac710&gt;] (do_dentry_open.isra.14+0x1d8/0x258)
[   77.985000] [&lt;c00ac710&gt;] (do_dentry_open.isra.14+0x1d8/0x258) from [&lt;c00ac860&gt;] (finish_open+0x20/0x38)
[   77.995000] [&lt;c00ac860&gt;] (finish_open+0x20/0x38) from [&lt;c00ba658&gt;] (do_last.isra.43+0x538/0xb1c)
[   78.000000] [&lt;c00ba658&gt;] (do_last.isra.43+0x538/0xb1c) from [&lt;c00bacf0&gt;] (path_openat+0xb4/0x5c4)
[   78.010000] [&lt;c00bacf0&gt;] (path_openat+0xb4/0x5c4) from [&lt;c00bb4b4&gt;] (do_filp_open+0x2c/0x80)
[   78.020000] [&lt;c00bb4b4&gt;] (do_filp_open+0x2c/0x80) from [&lt;c00ad744&gt;] (do_sys_open+0xf4/0x1a8)
[   78.025000] [&lt;c00ad744&gt;] (do_sys_open+0xf4/0x1a8) from [&lt;c000e320&gt;] (ret_fast_syscall+0x0/0x30)
[   78.035000] Code: 1a000093 e10f6000 f10c0080 e2845004 (e1953f9f)

Reported-by: Andrzej Hajda &lt;a.hajda@samsung.com&gt;
Signed-off-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Signed-off-by: Kyungmin Park &lt;kyungmin.park@samsung.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: exynos-gsc: Register v4l2 device</title>
<updated>2013-09-27T00:18:17Z</updated>
<author>
<name>Arun Kumar K</name>
<email>arun.kk@samsung.com</email>
</author>
<published>2013-07-26T10:28:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1d9d780fcd8df7c70312fdfe43ecc802b99b2e5c'/>
<id>urn:sha1:1d9d780fcd8df7c70312fdfe43ecc802b99b2e5c</id>
<content type='text'>
commit d0b1c31349969973204fad21a076aecf131cc5e4 upstream.

Gscaler video device registration was happening without reference to
a parent v4l2_dev causing probe to fail. The patch creates a parent
v4l2 device and uses it for the gsc m2m video device registration.
This fixes regression introduced with comit commit 1c1d86a1ea07506
[media] v4l2: always require v4l2_dev, rename parent to dev_parent

Signed-off-by: Arun Kumar K &lt;arun.kk@samsung.com&gt;
Signed-off-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: em28xx: fix assignment of the eeprom data</title>
<updated>2013-08-15T05:59:06Z</updated>
<author>
<name>Alban Browaeys</name>
<email>alban.browaeys@gmail.com</email>
</author>
<published>2013-07-16T21:57:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=630d2243751d762ea9e1baabecd6536e9db8d0be'/>
<id>urn:sha1:630d2243751d762ea9e1baabecd6536e9db8d0be</id>
<content type='text'>
commit f813b5775b471b656382ae8f087bb34dc894261f upstream.

Set the config structure pointer to the eeprom data pointer (data,
here eedata dereferenced) not the pointer to the pointer to
the eeprom data (eedata itself).

Signed-off-by: Alban Browaeys &lt;prahal@yahoo.com&gt;
Signed-off-by: Frank Schäfer &lt;fschaefer.oss@googlemail.com&gt;
Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
</feed>
