Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 13 Jul 2013 19:09:57 +0000 (12:09 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 13 Jul 2013 19:09:57 +0000 (12:09 -0700)
Pull media updates from Mauro Carvalho Chehab:
 "This series contain:
   - new i2c video drivers: ml86v7667 (video decoder),
                            ths8200 (video encoder)
   - a new video driver for EasyCap cards based on Fushicai USBTV007
   - Improved support for OF and embedded systems, with V4L2 async
     initialization and a better support for clocks
   - API cleanups on the ioctls used by the v4l2 debug tool
   - Lots of cleanups
   - As usual, several driver improvements and new cards additions
   - Revert two changesets that change the minimal symbol rate for
     stv0399, as request by Manu
   - Update MAINTAINERS and other files to point to my new e-mail"

* 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (378 commits)
  MAINTAINERS & ABI: Update to point to my new email
  [media] stb0899: restore minimal rate to 5Mbauds
  [media] exynos4-is: Correct colorspace handling at FIMC-LITE
  [media] exynos4-is: Set valid initial format on FIMC.n subdevs
  [media] exynos4-is: Set valid initial format on FIMC-IS-ISP subdev pads
  [media] exynos4-is: Fix format propagation on FIMC-IS-ISP subdev
  [media] exynos4-is: Set valid initial format at FIMC-LITE
  [media] exynos4-is: Fix format propagation on FIMC-LITE.n subdevs
  [media] MAINTAINERS: Update S5P/Exynos FIMC driver entry
  [media] Documentation: Update driver's directory in video4linux/fimc.txt
  [media] exynos4-is: Change fimc-is firmware file names
  [media] exynos4-is: Add support for Exynos5250 MIPI-CSIS
  [media] exynos4-is: Add Exynos5250 SoC support to fimc-lite driver
  [media] exynos4-is: Drop drvdata handling in fimc-lite for non-dt platforms
  [media] media: i2c: tvp514x: remove manual setting of subdev name
  [media] media: i2c: tvp7002: remove manual setting of subdev name
  [media] mem2mem: set missing v4l2_dev pointer
  [media] wl128x: add missing struct v4l2_device
  [media] tvp514x: Fix init seqeunce
  [media] saa7134: Fix sparse warnings by adding __user annotation
  ...

1  2 
Documentation/media-framework.txt
MAINTAINERS
drivers/media/i2c/tvaudio.c
drivers/media/pci/ivtv/ivtv-driver.c
drivers/media/platform/Kconfig
drivers/media/platform/exynos4-is/Kconfig
drivers/usb/gadget/f_uvc.c

index eeced24e56afc9887dbd15f92ef6e9b412206b46,3702eff30db3dd6b7ff6337678c2bd14c6ba1acf..f552a75c0e70b22b3800a3fa93c0783075228250
@@@ -18,7 -18,7 +18,7 @@@ Abstract media device mode
  
  Discovering a device internal topology, and configuring it at runtime, is one
  of the goals of the media framework. To achieve this, hardware devices are
 -modeled as an oriented graph of building blocks called entities connected
 +modelled as an oriented graph of building blocks called entities connected
  through pads.
  
  An entity is a basic media hardware building block. It can correspond to
@@@ -265,7 -265,7 +265,7 @@@ connected to another pad through an ena
        media_entity_find_link(struct media_pad *source,
                               struct media_pad *sink);
  
-       media_entity_remote_source(struct media_pad *pad);
+       media_entity_remote_pad(struct media_pad *pad);
  
  Refer to the kerneldoc documentation for more information.
  
diff --combined MAINTAINERS
index 9d771d9825cff44d1c8599640c596e5739df3a5d,90644d12e9f21e822a7fd0ce22df6f03d80730a2..b41a9fce32119279e06f5e88e71aec946bbd7cdf
@@@ -180,11 -180,6 +180,11 @@@ T:       git git://git.kernel.org/pub/scm/lin
  S:    Maintained
  F:    Documentation/filesystems/9p.txt
  F:    fs/9p/
 +F:    net/9p/
 +F:    include/net/9p/
 +F:    include/uapi/linux/virtio_9p.h
 +F:    include/trace/events/9p.h
 +
  
  A8293 MEDIA DRIVER
  M:    Antti Palosaari <crope@iki.fi>
@@@ -247,11 -242,6 +247,11 @@@ F:       drivers/acpi
  F:    drivers/pnp/pnpacpi/
  F:    include/linux/acpi.h
  F:    include/acpi/
 +F:    Documentation/acpi
 +F:    Documentation/ABI/testing/sysfs-bus-acpi
 +F:    drivers/pci/*acpi*
 +F:    drivers/pci/*/*acpi*
 +F:    drivers/pci/*/*/*acpi*
  
  ACPI FAN DRIVER
  M:    Zhang Rui <rui.zhang@intel.com>
@@@ -752,7 -742,7 +752,7 @@@ S: Maintaine
  F:    arch/arm/mach-highbank/
  
  ARM/CAVIUM NETWORKS CNS3XXX MACHINE SUPPORT
 -M:    Anton Vorontsov <avorontsov@mvista.com>
 +M:    Anton Vorontsov <anton@enomsg.org>
  S:    Maintained
  F:    arch/arm/mach-cns3xxx/
  T:    git git://git.infradead.org/users/cbou/linux-cns3xxx.git
@@@ -807,7 -797,6 +807,7 @@@ F: arch/arm/mach-gemini
  ARM/CSR SIRFPRIMA2 MACHINE SUPPORT
  M:    Barry Song <baohua.song@csr.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/baohua/linux.git
  S:    Maintained
  F:    arch/arm/mach-prima2/
  F:    drivers/dma/sirf-dma.c
@@@ -1146,7 -1135,6 +1146,7 @@@ L:      linux-samsung-soc@vger.kernel.org (m
  S:    Maintained
  F:    arch/arm/mach-s5p*/
  F:    arch/arm/mach-exynos*/
 +N:    exynos
  
  ARM/SAMSUNG MOBILE MACHINE SUPPORT
  M:    Kyungmin Park <kyungmin.park@samsung.com>
@@@ -1165,15 -1153,6 +1165,6 @@@ L:     linux-media@vger.kernel.or
  S:    Maintained
  F:    drivers/media/platform/s5p-g2d/
  
- ARM/SAMSUNG S5P SERIES FIMC SUPPORT
- M:    Kyungmin Park <kyungmin.park@samsung.com>
- M:    Sylwester Nawrocki <s.nawrocki@samsung.com>
- L:    linux-arm-kernel@lists.infradead.org
- L:    linux-media@vger.kernel.org
- S:    Maintained
- F:    arch/arm/plat-samsung/include/plat/*fimc*
- F:    drivers/media/platform/s5p-fimc/
  ARM/SAMSUNG S5P SERIES Multi Format Codec (MFC) SUPPORT
  M:    Kyungmin Park <kyungmin.park@samsung.com>
  M:    Kamil Debski <k.debski@samsung.com>
@@@ -1213,15 -1192,6 +1204,15 @@@ M:    Dinh Nguyen <dinguyen@altera.com
  S:    Maintained
  F:    drivers/clk/socfpga/
  
 +ARM/STI ARCHITECTURE
 +M:    Srinivas Kandagatla <srinivas.kandagatla@st.com>
 +M:    Stuart Menefy <stuart.menefy@st.com>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +L:    kernel@stlinux.com
 +W:    http://www.stlinux.com
 +S:    Maintained
 +F:    arch/arm/mach-sti/
 +
  ARM/TECHNOLOGIC SYSTEMS TS7250 MACHINE SUPPORT
  M:    Lennert Buytenhek <kernel@wantstofly.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -1306,7 -1276,6 +1297,7 @@@ S:      Maintaine
  F:    arch/arm/mach-vt8500/
  F:    drivers/clocksource/vt8500_timer.c
  F:    drivers/gpio/gpio-vt8500.c
 +F:    drivers/i2c/busses/i2c-wmt.c
  F:    drivers/mmc/host/wmt-sdmmc.c
  F:    drivers/pwm/pwm-vt8500.c
  F:    drivers/rtc/rtc-vt8500.c
@@@ -1331,13 -1300,6 +1322,13 @@@ W:    http://wiki.xilinx.co
  T:    git git://git.xilinx.com/linux-xlnx.git
  S:    Supported
  F:    arch/arm/mach-zynq/
 +F:    drivers/cpuidle/cpuidle-zynq.c
 +
 +ARM SMMU DRIVER
 +M:    Will Deacon <will.deacon@arm.com>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    drivers/iommu/arm-smmu.c
  
  ARM64 PORT (AARCH64 ARCHITECTURE)
  M:    Catalin Marinas <catalin.marinas@arm.com>
@@@ -1595,7 -1557,7 +1586,7 @@@ F:      include/net/ax25.
  F:    net/ax25/
  
  AZ6007 DVB DRIVER
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -1629,7 -1591,6 +1620,7 @@@ F:      drivers/net/wireless/b43legacy
  
  BACKLIGHT CLASS/SUBSYSTEM
  M:    Richard Purdie <rpurdie@rpsys.net>
 +M:    Jingoo Han <jg1.han@samsung.com>
  S:    Maintained
  F:    drivers/video/backlight/
  F:    include/linux/backlight.h
@@@ -1880,7 -1841,7 +1871,7 @@@ F:      Documentation/filesystems/btrfs.tx
  F:    fs/btrfs/
  
  BTTV VIDEO4LINUX DRIVER
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -1888,13 -1849,6 +1879,13 @@@ S:    Odd fixe
  F:    Documentation/video4linux/bttv/
  F:    drivers/media/pci/bt8xx/bttv*
  
 +BUSLOGIC SCSI DRIVER
 +M:    Khalid Aziz <khalid@gonehiking.org>
 +L:    linux-scsi@vger.kernel.org
 +S:    Maintained
 +F:    drivers/scsi/BusLogic.*
 +F:    drivers/scsi/FlashPoint.*
 +
  C-MEDIA CMI8788 DRIVER
  M:    Clemens Ladisch <clemens@ladisch.de>
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
@@@ -2135,12 -2089,9 +2126,12 @@@ COCCINELLE/Semantic Patches (SmPL
  M:    Julia Lawall <Julia.Lawall@lip6.fr>
  M:    Gilles Muller <Gilles.Muller@lip6.fr>
  M:    Nicolas Palix <nicolas.palix@imag.fr>
 +M:    Michal Marek <mmarek@suse.cz>
  L:    cocci@systeme.lip6.fr (moderated for non-subscribers)
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild.git misc
  W:    http://coccinelle.lip6.fr/
  S:    Supported
 +F:    Documentation/coccinelle.txt
  F:    scripts/coccinelle/
  F:    scripts/coccicheck
  
@@@ -2160,10 -2111,9 +2151,10 @@@ M:    Mike Turquette <mturquette@linaro.or
  L:    linux-arm-kernel@lists.infradead.org (same as CLK API & CLKDEV)
  T:    git git://git.linaro.org/people/mturquette/linux.git
  S:    Maintained
 -F:    drivers/clk/clk.c
 -F:    drivers/clk/clk-*
 +F:    drivers/clk/
 +X:    drivers/clk/clkdev.c
  F:    include/linux/clk-pr*
 +F:    include/linux/clk/
  
  COMMON INTERNET FILE SYSTEM (CIFS)
  M:    Steve French <sfrench@samba.org>
@@@ -2256,8 -2206,7 +2247,8 @@@ M:      Viresh Kumar <viresh.kumar@linaro.or
  L:    cpufreq@vger.kernel.org
  L:    linux-pm@vger.kernel.org
  S:    Maintained
 -T:    git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
 +T:    git git://git.linaro.org/people/vireshk/linux.git (For ARM Updates)
  F:    drivers/cpufreq/
  F:    include/linux/cpufreq.h
  
@@@ -2341,11 -2290,6 +2332,11 @@@ M:    Jaya Kumar <jayakumar.alsa@gmail.com
  S:    Maintained
  F:    sound/pci/cs5535audio/
  
 +CW1200 WLAN driver
 +M:     Solomon Peachy <pizza@shaftnet.org>
 +S:     Maintained
 +F:     drivers/net/wireless/cw1200/
 +
  CX18 VIDEO4LINUX DRIVER
  M:    Andy Walls <awalls@md.metrocast.net>
  L:    ivtv-devel@ivtvdriver.org (moderated for non-subscribers)
@@@ -2368,7 -2312,7 +2359,7 @@@ F:      drivers/media/common/cx2341x
  F:    include/media/cx2341x*
  
  CX88 VIDEO4LINUX DRIVER
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -2563,7 -2507,7 +2554,7 @@@ F:      drivers/usb/dwc3
  DEVICE FREQUENCY (DEVFREQ)
  M:    MyungJoo Ham <myungjoo.ham@samsung.com>
  M:    Kyungmin Park <kyungmin.park@samsung.com>
 -L:    linux-kernel@vger.kernel.org
 +L:    linux-pm@vger.kernel.org
  S:    Maintained
  F:    drivers/devfreq/
  
@@@ -2574,7 -2518,6 +2565,7 @@@ S:      Maintaine
  
  DEVICE-MAPPER  (LVM)
  M:    Alasdair Kergon <agk@redhat.com>
 +M:    Mike Snitzer <snitzer@redhat.com>
  M:    dm-devel@redhat.com
  L:    dm-devel@redhat.com
  W:    http://sources.redhat.com/dm
@@@ -2586,7 -2529,6 +2577,7 @@@ F:      drivers/md/dm
  F:    drivers/md/persistent-data/
  F:    include/linux/device-mapper.h
  F:    include/linux/dm-*.h
 +F:    include/uapi/linux/dm-*.h
  
  DIOLAN U2C-12 I2C DRIVER
  M:    Guenter Roeck <linux@roeck-us.net>
@@@ -2746,14 -2688,12 +2737,14 @@@ F:   include/drm/exynos
  F:    include/uapi/drm/exynos*
  
  DRM DRIVERS FOR NVIDIA TEGRA
 -M:    Thierry Reding <thierry.reding@avionic-design.de>
 +M:    Thierry Reding <thierry.reding@gmail.com>
 +M:    Terje Bergström <tbergstrom@nvidia.com>
  L:    dri-devel@lists.freedesktop.org
  L:    linux-tegra@vger.kernel.org
 -T:    git git://gitorious.org/thierryreding/linux.git
 +T:    git git://anongit.freedesktop.org/tegra/linux.git
  S:    Maintained
 -F:    drivers/gpu/drm/tegra/
 +F:    drivers/gpu/host1x/
 +F:    include/uapi/drm/tegra_drm.h
  F:    Documentation/devicetree/bindings/gpu/nvidia,tegra20-host1x.txt
  
  DSBR100 USB FM RADIO DRIVER
@@@ -2990,7 -2930,7 +2981,7 @@@ S:      Maintaine
  F:    drivers/edac/e7xxx_edac.c
  
  EDAC-GHES
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Maintained
@@@ -3018,21 -2958,21 +3009,21 @@@ S:   Maintaine
  F:    drivers/edac/i5000_edac.c
  
  EDAC-I5400
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Maintained
  F:    drivers/edac/i5400_edac.c
  
  EDAC-I7300
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Maintained
  F:    drivers/edac/i7300_edac.c
  
  EDAC-I7CORE
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Maintained
@@@ -3061,7 -3001,7 +3052,7 @@@ S:      Maintaine
  F:    drivers/edac/r82600_edac.c
  
  EDAC-SBRIDGE
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Maintained
@@@ -3121,7 -3061,7 +3112,7 @@@ S:      Maintaine
  F:    drivers/net/ethernet/ibm/ehea/
  
  EM28XX VIDEO4LINUX DRIVER
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -3154,13 -3094,6 +3145,13 @@@ M:    Maxim Levitsky <maximlevitsky@gmail.
  S:    Maintained
  F:    drivers/media/rc/ene_ir.*
  
 +ENHANCED ERROR HANDLING (EEH)
 +M:    Gavin Shan <shangw@linux.vnet.ibm.com>
 +L:    linuxppc-dev@lists.ozlabs.org
 +S:    Supported
 +F:    Documentation/powerpc/eeh-pci-error-recovery.txt
 +F:    arch/powerpc/kernel/eeh*.c
 +
  EPSON S1D13XXX FRAMEBUFFER DRIVER
  M:    Kristoffer Ericson <kristoffer.ericson@gmail.com>
  S:    Maintained
@@@ -3278,7 -3211,7 +3269,7 @@@ F:      lib/fault-inject.
  
  FCOE SUBSYSTEM (libfc, libfcoe, fcoe)
  M:    Robert Love <robert.w.love@intel.com>
 -L:    devel@open-fcoe.org
 +L:    fcoe-devel@open-fcoe.org
  W:    www.Open-FCoE.org
  S:    Supported
  F:    drivers/scsi/libfc/
@@@ -3367,15 -3300,6 +3358,15 @@@ T:    git git://git.kernel.org/pub/scm/lin
  S:    Odd fixes
  F:    drivers/block/floppy.c
  
 +FMC SUBSYSTEM
 +M:    Alessandro Rubini <rubini@gnudd.com>
 +W:    http://www.ohwr.org/projects/fmc-bus
 +S:    Supported
 +F:    drivers/fmc/
 +F:    include/linux/fmc*.h
 +F:    include/linux/ipmi-fru.h
 +K:    fmc_d.*register
 +
  FPU EMULATOR
  M:    Bill Metzenthen <billm@melbpc.org.au>
  W:    http://floatingpoint.sourceforge.net/emulator/index.html
@@@ -3634,7 -3558,6 +3625,7 @@@ GPIO SUBSYSTE
  M:    Grant Likely <grant.likely@linaro.org>
  M:    Linus Walleij <linus.walleij@linaro.org>
  S:    Maintained
 +L:    linux-gpio@vger.kernel.org
  T:    git git://git.secretlab.ca/git/linux-2.6.git
  F:    Documentation/gpio.txt
  F:    drivers/gpio/
@@@ -4047,8 -3970,7 +4038,8 @@@ S:      Maintaine
  F:    arch/ia64/
  
  IBM Power in-Nest Crypto Acceleration
 -M:    Kent Yoder <key@linux.vnet.ibm.com>
 +M:    Marcelo Henrique Cerri <mhcerri@linux.vnet.ibm.com>
 +M:    Fionnuala Gunter <fin@linux.vnet.ibm.com>
  L:    linux-crypto@vger.kernel.org
  S:    Supported
  F:    drivers/crypto/nx/
@@@ -4177,7 -4099,6 +4168,7 @@@ F:      drivers/ipack
  
  INTEGRITY MEASUREMENT ARCHITECTURE (IMA)
  M:    Mimi Zohar <zohar@us.ibm.com>
 +M:    Dmitry Kasatkin <d.kasatkin@samsung.com>
  S:    Supported
  F:    security/integrity/ima/
  
@@@ -4647,7 -4568,7 +4638,7 @@@ F:      fs/jbd2
  F:    include/linux/jbd2.h
  
  JSM Neo PCI based serial card
 -M:    Lucas Tavares <lucaskt@linux.vnet.ibm.com>
 +M:    Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
  L:    linux-serial@vger.kernel.org
  S:    Maintained
  F:    drivers/tty/serial/jsm/
@@@ -4781,23 -4702,14 +4772,23 @@@ F:   arch/s390/kvm
  F:    drivers/s390/kvm/
  
  KERNEL VIRTUAL MACHINE (KVM) FOR ARM
 -M:    Christoffer Dall <cdall@cs.columbia.edu>
 +M:    Christoffer Dall <christoffer.dall@linaro.org>
  L:    kvmarm@lists.cs.columbia.edu
  W:    http://systems.cs.columbia.edu/projects/kvm-arm
 -S:    Maintained
 +S:    Supported
  F:    arch/arm/include/uapi/asm/kvm*
  F:    arch/arm/include/asm/kvm*
  F:    arch/arm/kvm/
  
 +KERNEL VIRTUAL MACHINE FOR ARM64 (KVM/arm64)
 +M:    Marc Zyngier <marc.zyngier@arm.com>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +L:    kvmarm@lists.cs.columbia.edu
 +S:    Maintained
 +F:    arch/arm64/include/uapi/asm/kvm*
 +F:    arch/arm64/include/asm/kvm*
 +F:    arch/arm64/kvm/
 +
  KEXEC
  M:    Eric Biederman <ebiederm@xmission.com>
  W:    http://kernel.org/pub/linux/utils/kernel/kexec/
@@@ -5317,7 -5229,7 +5308,7 @@@ S:      Maintaine
  F:    drivers/media/radio/radio-maxiradio*
  
  MEDIA INPUT INFRASTRUCTURE (V4L/DVB)
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  P:    LinuxTV.org Project
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
@@@ -5511,12 -5423,9 +5502,12 @@@ F:    include/media/mt9v032.
  
  MULTIFUNCTION DEVICES (MFD)
  M:    Samuel Ortiz <sameo@linux.intel.com>
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6.git
 +M:    Lee Jones <lee.jones@linaro.org>
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-next.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-fixes.git
  S:    Supported
  F:    drivers/mfd/
 +F:    include/linux/mfd/
  
  MULTIMEDIA CARD (MMC), SECURE DIGITAL (SD) AND SDIO SUBSYSTEM
  M:    Chris Ball <cjb@laptop.org>
@@@ -6016,10 -5925,8 +6007,10 @@@ M:    Willem Riede <osst@riede.org
  L:    osst-users@lists.sourceforge.net
  L:    linux-scsi@vger.kernel.org
  S:    Maintained
 -F:    drivers/scsi/osst*
 -F:    drivers/scsi/st*
 +F:    Documentation/scsi/osst.txt
 +F:    drivers/scsi/osst.*
 +F:    drivers/scsi/osst_*.h
 +F:    drivers/scsi/st.h
  
  OPENCORES I2C BUS DRIVER
  M:    Peter Korsgaard <jacmet@sunsite.dk>
@@@ -6233,6 -6140,7 +6224,6 @@@ M:      Linas Vepstas <linasvepstas@gmail.co
  L:    linux-pci@vger.kernel.org
  S:    Supported
  F:    Documentation/PCI/pci-error-recovery.txt
 -F:    Documentation/powerpc/eeh-pci-error-recovery.txt
  
  PCI SUBSYSTEM
  M:    Bjorn Helgaas <bhelgaas@google.com>
@@@ -6348,16 -6256,6 +6339,16 @@@ L:    linux-arm-kernel@lists.infradead.or
  S:    Maintained
  F:    drivers/pinctrl/pinctrl-at91.c
  
 +PIN CONTROLLER - SAMSUNG
 +M:    Tomasz Figa <t.figa@samsung.com>
 +M:    Thomas Abraham <thomas.abraham@linaro.org>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +L:    linux-samsung-soc@vger.kernel.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    drivers/pinctrl/pinctrl-exynos.*
 +F:    drivers/pinctrl/pinctrl-s3c*
 +F:    drivers/pinctrl/pinctrl-samsung.*
 +
  PIN CONTROLLER - ST SPEAR
  M:    Viresh Kumar <viresh.linux@gmail.com>
  L:    spear-devel@list.st.com
@@@ -6417,7 -6315,7 +6408,7 @@@ F:      include/linux/timer
  F:    kernel/*timer*
  
  POWER SUPPLY CLASS/SUBSYSTEM and DRIVERS
 -M:    Anton Vorontsov <cbou@mail.ru>
 +M:    Anton Vorontsov <anton@enomsg.org>
  M:    David Woodhouse <dwmw2@infradead.org>
  T:    git git://git.infradead.org/battery-2.6.git
  S:    Maintained
@@@ -6527,7 -6425,7 +6518,7 @@@ S:      Maintaine
  F:    drivers/block/ps3vram.c
  
  PSTORE FILESYSTEM
 -M:    Anton Vorontsov <cbouatmailru@gmail.com>
 +M:    Anton Vorontsov <anton@enomsg.org>
  M:    Colin Cross <ccross@android.com>
  M:    Kees Cook <keescook@chromium.org>
  M:    Tony Luck <tony.luck@intel.com>
@@@ -6579,8 -6477,8 +6570,8 @@@ S:      Maintaine
  F:    drivers/media/usb/pwc/*
  
  PWM SUBSYSTEM
 -M:    Thierry Reding <thierry.reding@avionic-design.de>
 -L:    linux-kernel@vger.kernel.org
 +M:    Thierry Reding <thierry.reding@gmail.com>
 +L:    linux-pwm@vger.kernel.org
  S:    Maintained
  W:    http://gitorious.org/linux-pwm
  T:    git git://gitorious.org/linux-pwm/linux-pwm.git
@@@ -7013,7 -6911,7 +7004,7 @@@ S:      Odd Fixe
  F:    drivers/media/i2c/saa6588*
  
  SAA7134 VIDEO4LINUX DRIVER
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -7058,6 -6956,15 +7049,15 @@@ F:    drivers/regulator/s5m*.
  F:    drivers/rtc/rtc-sec.c
  F:    include/linux/mfd/samsung/
  
+ SAMSUNG S5P/EXYNOS4 SOC SERIES CAMERA SUBSYSTEM DRIVERS
+ M:    Kyungmin Park <kyungmin.park@samsung.com>
+ M:    Sylwester Nawrocki <s.nawrocki@samsung.com>
+ L:    linux-media@vger.kernel.org
+ Q:    https://patchwork.linuxtv.org/project/linux-media/list/
+ S:    Supported
+ F:    drivers/media/platform/exynos4-is/
+ F:    include/media/s5p_fimc.h
  SAMSUNG S3C24XX/S3C64XX SOC SERIES CAMIF DRIVER
  M:    Sylwester Nawrocki <sylvester.nawrocki@gmail.com>
  L:    linux-media@vger.kernel.org
@@@ -7083,7 -6990,8 +7083,7 @@@ SYNOPSYS DESIGNWARE DMAC DRIVE
  M:    Viresh Kumar <viresh.linux@gmail.com>
  S:    Maintained
  F:    include/linux/dw_dmac.h
 -F:    drivers/dma/dw_dmac_regs.h
 -F:    drivers/dma/dw_dmac.c
 +F:    drivers/dma/dw/
  
  SYNOPSYS DESIGNWARE MMC/SD/SDIO DRIVER
  M:    Seungwon Jeon <tgih.jun@samsung.com>
@@@ -7175,8 -7083,7 +7175,8 @@@ M:      Kai Mäkisara <Kai.Makisara@kolumbus
  L:    linux-scsi@vger.kernel.org
  S:    Maintained
  F:    Documentation/scsi/st.txt
 -F:    drivers/scsi/st*
 +F:    drivers/scsi/st.*
 +F:    drivers/scsi/st_*.h
  
  SCTP PROTOCOL
  M:    Vlad Yasevich <vyasevich@gmail.com>
@@@ -7225,7 -7132,7 +7225,7 @@@ F:      drivers/mmc/host/sdhci.
  F:    drivers/mmc/host/sdhci-pltfm.[ch]
  
  SECURE DIGITAL HOST CONTROLLER INTERFACE, OPEN FIRMWARE BINDINGS (SDHCI-OF)
 -M:    Anton Vorontsov <avorontsov@ru.mvista.com>
 +M:    Anton Vorontsov <anton@enomsg.org>
  L:    linuxppc-dev@lists.ozlabs.org
  L:    linux-mmc@vger.kernel.org
  S:    Maintained
@@@ -7375,7 -7282,7 +7375,7 @@@ S:      Odd Fixe
  F:    drivers/media/radio/radio-si4713.h
  
  SIANO DVB DRIVER
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -7760,7 -7667,6 +7760,7 @@@ STABLE BRANC
  M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  L:    stable@vger.kernel.org
  S:    Supported
 +F:    Documentation/stable_kernel_rules.txt
  
  STAGING SUBSYSTEM
  M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
@@@ -7877,7 -7783,7 +7877,7 @@@ F:      drivers/staging/media/solo6x10
  STAGING - SPEAKUP CONSOLE SPEECH DRIVER
  M:    William Hubbs <w.d.hubbs@gmail.com>
  M:    Chris Brannon <chris@the-brannons.com>
 -M:    Kirk Reiser <kirk@braille.uwo.ca>
 +M:    Kirk Reiser <kirk@reisers.ca>
  M:    Samuel Thibault <samuel.thibault@ens-lyon.org>
  L:    speakup@braille.uwo.ca
  W:    http://www.linux-speakup.org/
@@@ -8080,7 -7986,7 +8080,7 @@@ S:      Maintaine
  F:    drivers/media/i2c/tda9840*
  
  TEA5761 TUNER DRIVER
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -8088,7 -7994,7 +8088,7 @@@ S:      Odd fixe
  F:    drivers/media/tuners/tea5761.*
  
  TEA5767 TUNER DRIVER
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -8161,7 -8067,6 +8161,7 @@@ M:      Zhang Rui <rui.zhang@intel.com
  M:      Eduardo Valentin <eduardo.valentin@ti.com>
  L:      linux-pm@vger.kernel.org
  T:      git git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux.git
 +T:      git git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal.git
  Q:      https://patchwork.kernel.org/project/linux-pm/list/
  S:      Supported
  F:      drivers/thermal/
@@@ -8186,8 -8091,8 +8186,8 @@@ F:      drivers/platform/x86/thinkpad_acpi.
  TI BANDGAP AND THERMAL DRIVER
  M:    Eduardo Valentin <eduardo.valentin@ti.com>
  L:    linux-pm@vger.kernel.org
 -S:    Maintained
 -F:    drivers/staging/omap-thermal/
 +S:    Supported
 +F:    drivers/thermal/ti-soc-thermal/
  
  TI FLASH MEDIA INTERFACE DRIVER
  M:    Alex Dubov <oakad@yahoo.com>
@@@ -8327,7 -8232,7 +8327,7 @@@ F:      include/linux/shmem_fs.
  F:    mm/shmem.c
  
  TM6000 VIDEO4LINUX DRIVER
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -8335,8 -8240,7 +8335,8 @@@ S:      Odd fixe
  F:    drivers/media/usb/tm6000/
  
  TPM DEVICE DRIVER
 -M:    Kent Yoder <key@linux.vnet.ibm.com>
 +M:    Leonidas Da Silva Barbosa <leosilva@linux.vnet.ibm.com>
 +M:    Ashley Lai <ashley@ashleylai.com>
  M:    Rajiv Andrade <mail@srajiv.net>
  W:    http://tpmdd.sourceforge.net
  M:    Marcel Selhorst <tpmdd@selhorst.net>
@@@ -8896,7 -8800,6 +8896,7 @@@ M:      "Michael S. Tsirkin" <mst@redhat.com
  L:    virtualization@lists.linux-foundation.org
  S:    Maintained
  F:    drivers/virtio/
 +F:    tools/virtio/
  F:    drivers/net/virtio_net.c
  F:    drivers/block/virtio_blk.c
  F:    include/linux/virtio_*.h
@@@ -8992,7 -8895,7 +8992,7 @@@ M:      Liam Girdwood <lgirdwood@gmail.com
  M:    Mark Brown <broonie@kernel.org>
  W:    http://opensource.wolfsonmicro.com/node/15
  W:    http://www.slimlogic.co.uk/?p=48
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/lrg/regulator.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git
  S:    Supported
  F:    drivers/regulator/
  F:    include/linux/regulator/
@@@ -9184,7 -9087,7 +9184,7 @@@ S:      Maintaine
  F:    arch/x86/kernel/cpu/mcheck/*
  
  XC2028/3028 TUNER DRIVER
- M:    Mauro Carvalho Chehab <mchehab@redhat.com>
+ M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -9211,13 -9114,6 +9211,13 @@@ S:    Supporte
  F:    arch/arm/xen/
  F:    arch/arm/include/asm/xen/
  
 +XEN HYPERVISOR ARM64
 +M:    Stefano Stabellini <stefano.stabellini@eu.citrix.com>
 +L:    xen-devel@lists.xensource.com (moderated for non-subscribers)
 +S:    Supported
 +F:    arch/arm64/xen/
 +F:    arch/arm64/include/asm/xen/
 +
  XEN NETWORK BACKEND DRIVER
  M:    Ian Campbell <ian.campbell@citrix.com>
  L:    xen-devel@lists.xensource.com (moderated for non-subscribers)
@@@ -9291,13 -9187,6 +9291,13 @@@ F:    Documentation/networking/z8530drv.tx
  F:    drivers/net/hamradio/*scc.c
  F:    drivers/net/hamradio/z8530.h
  
 +ZBUD COMPRESSED PAGE ALLOCATOR
 +M:    Seth Jennings <sjenning@linux.vnet.ibm.com>
 +L:    linux-mm@kvack.org
 +S:    Maintained
 +F:    mm/zbud.c
 +F:    include/linux/zbud.h
 +
  ZD1211RW WIRELESS DRIVER
  M:    Daniel Drake <dsd@gentoo.org>
  M:    Ulrich Kunitz <kune@deine-taler.de>
@@@ -9320,12 -9209,6 +9320,12 @@@ M:    "Maciej W. Rozycki" <macro@linux-mip
  S:    Maintained
  F:    drivers/tty/serial/zs.*
  
 +ZSWAP COMPRESSED SWAP CACHING
 +M:    Seth Jennings <sjenning@linux.vnet.ibm.com>
 +L:    linux-mm@kvack.org
 +S:    Maintained
 +F:    mm/zswap.c
 +
  THE REST
  M:    Linus Torvalds <torvalds@linux-foundation.org>
  L:    linux-kernel@vger.kernel.org
index e0634c8b7e0b4a8a8d564112bdfd04728fd54a69,38135402019ef76cb5b8b54913a20aee26f148c3..d76c53a8f027b851e640af633b54dd04474536e0
@@@ -38,7 -38,6 +38,6 @@@
  
  #include <media/tvaudio.h>
  #include <media/v4l2-device.h>
- #include <media/v4l2-chip-ident.h>
  #include <media/v4l2-ctrls.h>
  
  #include <media/i2c-addr.h>
@@@ -1838,13 -1837,6 +1837,6 @@@ static int tvaudio_s_frequency(struct v
        return 0;
  }
  
- static int tvaudio_g_chip_ident(struct v4l2_subdev *sd, struct v4l2_dbg_chip_ident *chip)
- {
-       struct i2c_client *client = v4l2_get_subdevdata(sd);
-       return v4l2_chip_ident_i2c_client(client, chip, V4L2_IDENT_TVAUDIO, 0);
- }
  static int tvaudio_log_status(struct v4l2_subdev *sd)
  {
        struct CHIPSTATE *chip = to_state(sd);
@@@ -1863,7 -1855,6 +1855,6 @@@ static const struct v4l2_ctrl_ops tvaud
  
  static const struct v4l2_subdev_core_ops tvaudio_core_ops = {
        .log_status = tvaudio_log_status,
-       .g_chip_ident = tvaudio_g_chip_ident,
        .g_ext_ctrls = v4l2_subdev_g_ext_ctrls,
        .try_ext_ctrls = v4l2_subdev_try_ext_ctrls,
        .s_ext_ctrls = v4l2_subdev_s_ext_ctrls,
@@@ -1910,7 -1901,7 +1901,7 @@@ static int tvaudio_probe(struct i2c_cli
                printk("\n");
        }
  
-       chip = kzalloc(sizeof(*chip), GFP_KERNEL);
+       chip = devm_kzalloc(&client->dev, sizeof(*chip), GFP_KERNEL);
        if (!chip)
                return -ENOMEM;
        sd = &chip->sd;
        }
        if (desc->name == NULL) {
                v4l2_dbg(1, debug, sd, "no matching chip description found\n");
-               kfree(chip);
                return -EIO;
        }
        v4l2_info(sd, "%s found @ 0x%x (%s)\n", desc->name, client->addr<<1, client->adapter->name);
                int err = chip->hdl.error;
  
                v4l2_ctrl_handler_free(&chip->hdl);
-               kfree(chip);
                return err;
        }
        /* set controls to the default values */
                /* start async thread */
                chip->wt.function = chip_thread_wake;
                chip->wt.data     = (unsigned long)chip;
 -              chip->thread = kthread_run(chip_thread, chip, client->name);
 +              chip->thread = kthread_run(chip_thread, chip, "%s",
 +                                         client->name);
                if (IS_ERR(chip->thread)) {
                        v4l2_warn(sd, "failed to create kthread\n");
                        chip->thread = NULL;
@@@ -2044,7 -2032,6 +2033,6 @@@ static int tvaudio_remove(struct i2c_cl
  
        v4l2_device_unregister_subdev(sd);
        v4l2_ctrl_handler_free(&chip->hdl);
-       kfree(chip);
        return 0;
  }
  
index b809bc868a9f01070bee7cc37e1a85f1b73d888f,db614528376c7a98ece4ec7b1b092f5bbf6a4f77..c08ae3eb9554d46fc29b4dfbfbf0f314c8b90cec
@@@ -58,7 -58,6 +58,6 @@@
  #include <linux/dma-mapping.h>
  #include <media/tveeprom.h>
  #include <media/saa7115.h>
- #include <media/v4l2-chip-ident.h>
  #include "tuner-xc2028.h"
  
  /* If you have already X v4l cards, then set this to X. This way
@@@ -753,7 -752,7 +752,7 @@@ static int ivtv_init_struct1(struct ivt
  
        init_kthread_worker(&itv->irq_worker);
        itv->irq_worker_task = kthread_run(kthread_worker_fn, &itv->irq_worker,
 -                                         itv->v4l2_dev.name);
 +                                         "%s", itv->v4l2_dev.name);
        if (IS_ERR(itv->irq_worker_task)) {
                IVTV_ERR("Could not create ivtv task\n");
                return -1;
@@@ -968,15 -967,10 +967,10 @@@ static void ivtv_load_and_init_modules(
        }
  
        if (hw & IVTV_HW_SAA711X) {
-               struct v4l2_dbg_chip_ident v;
                /* determine the exact saa711x model */
                itv->hw_flags &= ~IVTV_HW_SAA711X;
  
-               v.match.type = V4L2_CHIP_MATCH_I2C_DRIVER;
-               strlcpy(v.match.name, "saa7115", sizeof(v.match.name));
-               ivtv_call_hw(itv, IVTV_HW_SAA711X, core, g_chip_ident, &v);
-               if (v.ident == V4L2_IDENT_SAA7114) {
+               if (strstr(itv->sd_video->name, "saa7114")) {
                        itv->hw_flags |= IVTV_HW_SAA7114;
                        /* VBI is not yet supported by the saa7114 driver. */
                        itv->v4l2_cap &= ~(V4L2_CAP_SLICED_VBI_CAPTURE|V4L2_CAP_VBI_CAPTURE);
index 25eaf61b98b487dd2c421c1f1b3ae337bfa7f6fc,bd99e5055fa11bcc72fc36f91a88bd8a2e40e0f6..08de865cc399331e67098cee8cb31667e9aa8b9b
@@@ -36,7 -36,7 +36,7 @@@ source "drivers/media/platform/blackfin
  config VIDEO_SH_VOU
        tristate "SuperH VOU video output driver"
        depends on MEDIA_CAMERA_SUPPORT
-       depends on VIDEO_DEV && ARCH_SHMOBILE
+       depends on VIDEO_DEV && ARCH_SHMOBILE && I2C
        select VIDEOBUF_DMA_CONTIG
        help
          Support for the Video Output Unit (VOU) on SuperH SoCs.
@@@ -159,7 -159,7 +159,7 @@@ config VIDEO_MEM2MEM_DEINTERLAC
  
  config VIDEO_SAMSUNG_S5P_G2D
        tristate "Samsung S5P and EXYNOS4 G2D 2d graphics accelerator driver"
 -      depends on VIDEO_DEV && VIDEO_V4L2 && PLAT_S5P
 +      depends on VIDEO_DEV && VIDEO_V4L2 && (PLAT_S5P || ARCH_EXYNOS)
        select VIDEOBUF2_DMA_CONTIG
        select V4L2_MEM2MEM_DEV
        default n
  
  config VIDEO_SAMSUNG_S5P_JPEG
        tristate "Samsung S5P/Exynos4 JPEG codec driver"
 -      depends on VIDEO_DEV && VIDEO_V4L2 && PLAT_S5P
 +      depends on VIDEO_DEV && VIDEO_V4L2 && (PLAT_S5P || ARCH_EXYNOS)
        select VIDEOBUF2_DMA_CONTIG
        select V4L2_MEM2MEM_DEV
        ---help---
  
  config VIDEO_SAMSUNG_S5P_MFC
        tristate "Samsung S5P MFC Video Codec"
 -      depends on VIDEO_DEV && VIDEO_V4L2 && PLAT_S5P
 +      depends on VIDEO_DEV && VIDEO_V4L2 && (PLAT_S5P || ARCH_EXYNOS)
        select VIDEOBUF2_DMA_CONTIG
        default n
        help
@@@ -220,7 -220,7 +220,7 @@@ if V4L_TEST_DRIVER
  config VIDEO_VIVI
        tristate "Virtual Video Driver"
        depends on VIDEO_DEV && VIDEO_V4L2 && !SPARC32 && !SPARC64
 -      depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE
 +      select FONT_SUPPORT
        select FONT_8x16
        select VIDEOBUF2_VMALLOC
        default n
index 436a62a995ee342d2c51d2a7e2273d299f24fb3a,c622532174e361800c00ef24a3cfa62d6a5272fc..53ad0f080179721dd97c333a051ce034d948e857
@@@ -1,20 -1,23 +1,24 @@@
  
  config VIDEO_SAMSUNG_EXYNOS4_IS
        bool "Samsung S5P/EXYNOS4 SoC series Camera Subsystem driver"
 -      depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && PLAT_S5P && PM_RUNTIME
 +      depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && PM_RUNTIME
 +      depends on (PLAT_S5P || ARCH_EXYNOS)
        help
          Say Y here to enable camera host interface devices for
          Samsung S5P and EXYNOS SoC series.
  
  if VIDEO_SAMSUNG_EXYNOS4_IS
  
+ config VIDEO_EXYNOS4_IS_COMMON
+        tristate
  config VIDEO_S5P_FIMC
        tristate "S5P/EXYNOS4 FIMC/CAMIF camera interface driver"
        depends on I2C
        select VIDEOBUF2_DMA_CONTIG
        select V4L2_MEM2MEM_DEV
        select MFD_SYSCON if OF
+       select VIDEO_EXYNOS4_IS_COMMON
        help
          This is a V4L2 driver for Samsung S5P and EXYNOS4 SoC camera host
          interface and video postprocessor (FIMC) devices.
@@@ -39,6 -42,7 +43,7 @@@ config VIDEO_EXYNOS_FIMC_LIT
        tristate "EXYNOS FIMC-LITE camera interface driver"
        depends on I2C
        select VIDEOBUF2_DMA_CONTIG
+       select VIDEO_EXYNOS4_IS_COMMON
        help
          This is a V4L2 driver for Samsung EXYNOS4/5 SoC FIMC-LITE camera
          host interface.
index 5f91c7a599461be843f923d5513a882f135c2dbc,1d06567ff41e6892cc668fbb58c8b4f8d83ca9f4..e2a1f50bd93c4b7740c6592d5446c965ec107b04
@@@ -156,6 -156,8 +156,6 @@@ static struct usb_endpoint_descriptor u
        /* The wMaxPacketSize and bInterval values will be initialized from
         * module parameters.
         */
 -      .wMaxPacketSize         = 0,
 -      .bInterval              = 0,
  };
  
  static struct usb_endpoint_descriptor uvc_hs_streaming_ep __initdata = {
        /* The wMaxPacketSize and bInterval values will be initialized from
         * module parameters.
         */
 -      .wMaxPacketSize         = 0,
 -      .bInterval              = 0,
  };
  
  static struct usb_endpoint_descriptor uvc_ss_streaming_ep __initdata = {
        /* The wMaxPacketSize and bInterval values will be initialized from
         * module parameters.
         */
 -      .wMaxPacketSize         = 0,
 -      .bInterval              = 0,
  };
  
  static struct usb_ss_ep_comp_descriptor uvc_ss_streaming_comp __initdata = {
        .bLength                = sizeof(uvc_ss_streaming_comp),
        .bDescriptorType        = USB_DT_SS_ENDPOINT_COMP,
 -      /* The following 3 values can be tweaked if necessary. */
 -      .bMaxBurst              = 0,
 -      .bmAttributes           = 0,
 -      .wBytesPerInterval      = cpu_to_le16(1024),
 +      /* The bMaxBurst, bmAttributes and wBytesPerInterval values will be
 +       * initialized from module parameters.
 +       */
  };
  
  static const struct usb_descriptor_header * const uvc_fs_streaming[] = {
@@@ -406,7 -413,7 +406,7 @@@ uvc_register_video(struct uvc_device *u
        if (video == NULL)
                return -ENOMEM;
  
-       video->parent = &cdev->gadget->dev;
+       video->v4l2_dev = &uvc->v4l2_dev;
        video->fops = &uvc_v4l2_fops;
        video->release = video_device_release;
        strlcpy(video->name, cdev->gadget->name, sizeof(video->name));
@@@ -563,6 -570,7 +563,7 @@@ uvc_function_unbind(struct usb_configur
        INFO(cdev, "uvc_function_unbind\n");
  
        video_unregister_device(uvc->vdev);
+       v4l2_device_unregister(&uvc->v4l2_dev);
        uvc->control_ep->driver_data = NULL;
        uvc->video.ep->driver_data = NULL;
  
@@@ -690,6 -698,11 +691,11 @@@ uvc_function_bind(struct usb_configurat
        if ((ret = usb_function_deactivate(f)) < 0)
                goto error;
  
+       if (v4l2_device_register(&cdev->gadget->dev, &uvc->v4l2_dev)) {
+               printk(KERN_INFO "v4l2_device_register failed\n");
+               goto error;
+       }
        /* Initialise video. */
        ret = uvc_video_init(&uvc->video);
        if (ret < 0)
        return 0;
  
  error:
+       v4l2_device_unregister(&uvc->v4l2_dev);
        if (uvc->vdev)
                video_device_release(uvc->vdev);