summaryrefslogtreecommitdiff
path: root/drivers/media/video
AgeCommit message (Collapse)Author
2014-03-13solved low framerate issue with analog camerasColibri_T30_LinuxImageV2.1Beta3_20140318Colibri_T20_LinuxImageV2.1Beta3_20140318Apalis_T30_LinuxImageV2.1Beta3_20140318Wojciech Bieganski
2014-03-13added Aptina AS0260SOC driverWojciech Bieganski
2014-03-13OV7670 and TVP5150 drivers added, updated configsWojciech Bieganski
2014-03-12Merge branch 'l4t/l4t-r16-r2' into colibriMarcel Ziswiler
Conflicts: drivers/media/video/tegra_v4l2_camera.c reverted to current driver supporting ACM rather than CSI2 drivers/media/video/videobuf2-dma-nvmap.c drivers/video/tegra/host/Makefile
2013-11-18media: ov5640: change 1080p resolution to 1088pBryan Wu
Setting the resolution to 1088p (as of now), since there are flickers observed for 1080p and also the encoder is not compatible with alignement of the RM surfaces of 1080p. 1088p is a stop-gap solution until the issues with 1080p are resolved. Bug 1369083 Change-Id: I3e73076451e7671d90603c6496ad14733591edeb Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/309543 Tested-by: Vikram Fugro <vfugro@nvidia.com> Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Kaustubh Purandare <kpurandare@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2013-11-18media: tegra_v4l2: add CSI pad calibrationBryan Wu
Bug 1369083 Change-Id: I1a81bcb62e8f6bb654ffbebba09661187ab4b512 Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/309536 Tested-by: Vikram Fugro <vfugro@nvidia.com> Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Kaustubh Purandare <kpurandare@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2013-11-18media: nvmap: Few tweaks in nvmapVikram Fugro
The tweaks are only specific to r16-r2 branch and will not go into mainline. - Pass nvmap memory handle to the user through the mmap'd buffer allocated by videobuf2 client. - Allow the "user" nvmap client to access the nvmap memory handle of "videobuf2-dma-nvmap" client. Re-arranging the copyright message in nvmap_dev.c for Automatic validation to pass. Bug 1369083 Change-Id: Ia27d172253860e79557911c2e848bc9084d662d4 Signed-off-by: Vikram Fugro <vfugro@nvidia.com> Reviewed-on: http://git-master/r/309494 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Krishna Reddy <vdumpa@nvidia.com> Reviewed-by: Kaustubh Purandare <kpurandare@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2013-11-18Revert "media: camera config changes"Vikram Fugro
This reverts commit dd9a841da571a41d43f1eeaac1785b2adb1d80f3. The config changes (for V4L2) can be done manually as per need basis for V4L2, followed by compiling the kernel. Change-Id: I9174bce0f3da2974ab703b238dfb8fb3bbf607c5 Signed-off-by: Vikram Fugro <vfugro@nvidia.com> Reviewed-on: http://git-master/r/327607 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Kaustubh Purandare <kpurandare@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2013-10-30media: camera config changesVikram Fugro
- Disables TEGRA_CAMERA - Enables SOC_CAMERA and OV5640 sensor support Bug 1369083 Change-Id: I073c226e9f04a6f4f4699051f624a755dceb36cb Signed-off-by: Vikram Fugro <vfugro@nvidia.com> Reviewed-on: http://git-master/r/309491 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2013-10-16media: ov5640: update OV5640 sensor driverBryan Wu
Bug 1369083 Change-Id: I1522b688e0681e52592c0f26a8e335937372836a Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/279989 Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2013-10-16media: tegra_v4l2: add dual camera supportBryan Wu
Add support for dual cameras from both CSI-A and CSI-B: - move all the CSI settings into video buffer struct - queue the video buffer struct to a dedicated queue - process one video buffer struct from the queue at one time Bug 1369083 Change-Id: Ie64d69282ab991b66e97327e288a2bacde088bd6 Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/246269 (cherry picked from commit 228b0c2d9ae3fa1121f88836626d654ae0fc4ff0) Reviewed-on: http://git-master/r/279987 Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2013-10-16media: tegra_v4l2: pass platform_data via soc_camera_linkBryan Wu
soc_camera_link supports passing power on/off control callback to soc_camera stack. So the power control can be handled by soc_camera stack instead of our Tegra V4L2 host driver. Also pass other platform_data fields via soc_camera_link instead of a hacking nvhost_device_data struct. Bug 1240806 Bug 1369083 Change-Id: I443a7d28196cc8292805da70d2d5ff1c3cd50a5d Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/246267 (cherry picked from commit 9083d270bf93b583cd5bf5151a52ea250f8541a3) Reviewed-on: http://git-master/r/279986 Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2013-10-16media: tegra: use BGGR raw ouput formatBryan Wu
Bug 1369083 Change-Id: I43acb0d1dd6ca182291895d294a8458bfc99da05 Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/279985 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Allen Martin <amartin@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2013-10-16media: videobuf2: fix buffer management issuesBryan Wu
Use right buffer flag NVMAP_HANDLE_WRITE_COMBINE to allocate buffer, which can be shared by VI/CSI and CPU. Don't use NVMAP_HEAP_SYSMEM. It is validated to old T20 silicon and can't support big buffers. By default, our nvmap_alloc() will use IOVMM to allocate buffers. nvmap_pin() gives us IOVA for hardware engines like VI/CSI module with IOMMU enabled in kernel. nvmap_mmap() gives us VA for CPU read/write operations. So we need to convert VA address to physical address of the buffer and map that buffer to user space processor's memory space "page by page". Bug 1369083 Change-Id: I4629eebe206c7640adf63551968fd89260dd0082 Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/279984 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Allen Martin <amartin@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2013-10-16media: OV5650: tweak registers and add test modeBryan Wu
- tweak offset registers - add test mode to output color bars - use BGGR RAW format Bug 1369083 Change-Id: I61352c018f8ca099ff3d39158a67052a1e185eec Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/279983 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Allen Martin <amartin@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2013-08-19media: video: tegra: sh532u: fix out-of-bounds readDeepak Nibade
fix Coverity issue Coverity id : 13692 Bug 1046331 Bug 1049868 Change-Id: Iefa6d076d4622368534710630b89b9a15d166378 Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: http://git-master/r/165864 (cherry picked from commit db33c3f3f2447a52a40f4fd001fec9a2932ee4c8) Reviewed-on: http://git-master/r/244637 Reviewed-by: Shreshtha Sahu <ssahu@nvidia.com> Tested-by: Shreshtha Sahu <ssahu@nvidia.com> Reviewed-by: Kiran Adduri <kadduri@nvidia.com> Reviewed-by: Erik Lilliebjerg <elilliebjerg@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2013-08-13tegra_v4l2: added external/internal sync selectionT30_LinuxImageV2.0Beta3_20130820Apalis_T30_LinuxImageV2.0Beta2_20130816Peter Gielda
2013-07-31media: max9526: allow for live input selectionMarcel Ziswiler
Re-work input selection to apply to a live camera stream. While at it default to automatic input selection and make this option available via IOCTL as input value 2 as well.
2013-07-31media: adv7180: allow for live input selectionMarcel Ziswiler
Re-work input selection to apply to a live camera stream. While at it disable the automatic I2C module loading for now as due to our currently redundant soc-camera-pdrv registration via board specific platform data the adv7180 driver is always automatically loaded upon modprobe tegra_v4l2_camera invocation.
2013-07-31media: max9526: input selection supportPeter Gielda
2013-07-31media: adv7180: small cleanup of the input selectionPeter Gielda
2013-07-31media: adv7180: added input selection supportPeter Gielda
2013-07-31tegra_v4l2: added default err valuePeter Gielda
2013-07-31media: adv7180: set resolution to 720 x 576Peter Gielda
2013-07-31tegra_v4l2: changed TEGRA_VIP_V_ACTIVE_START to 0x12Peter Gielda
2013-07-31tegra_v4l2: error cleanup handling; lowered SYNCPT_VI_WAIT_TIMEOUT to 25Peter Gielda
2013-06-17media: adv7180: add 48-lead and 32-lead device identificationMarcel Ziswiler
Previously only 64-lead and 40-lead models were identified. This patch adds 48-lead and 32-lead device identification as well. Please note that due to missing parameter negotiation functions one might get the following message with a subsequent crash: WARNING: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Could not get parameters on device '/dev/video0' This can be avoided by explicitly specifying the format as follows: gst-launch v4l2src ! deinterlace tff=1 method=4 ! 'video/x-raw-yuv, width=(int)720, height=(int)576, format=(fourcc)I420' ! nv_omx_videomixer ! nv_gl_eglimagesink
2013-06-12tegra_v4l2: support for interlaced fieldsPiotr Zierhoffer
2013-06-12adv7180, max9526: correct v4l2_field settingPiotr Zierhoffer
2013-06-12tegra_v4l2: fix format detection and morePiotr Zierhoffer
Powering on, improved interlacing.
2013-06-12max9526: fix NTSC number of pixels per line.Peter Gielda
2013-06-12media: videobuf2: fix buffer management issuesBryan Wu
Use right buffer flag NVMAP_HANDLE_WRITE_COMBINE to allocate buffer, which can be shared by VI/CSI and CPU. Don't use NVMAP_HEAP_SYSMEM. It is validated to old T20 silicon and can't support big buffers. By default, our nvmap_alloc() will use IOVMM to allocate buffers. nvmap_pin() gives us IOVA for hardware engines like VI/CSI module with IOMMU enabled in kernel. nvmap_mmap() gives us VA for CPU read/write operations. So we need to convert VA address to physical address of the buffer and map that buffer to user space processor's memory space "page by page". Change-Id: I543d9d95fc14395200647e09480f25d9bc001e00 Signed-off-by: Bryan Wu <pengw@nvidia.com>
2013-06-12Revert "tegra_v4l2: map memory as non-cachable and fix the allocation problem"Peter Gielda
This reverts commit 080c3135b58aa700851991fb672e6c33cf16d9d9.
2013-06-12max9526: added missing module_exitPeter Gielda
2013-06-12tegra_v4l2 fix init issuePeter Gielda
Fix issue with nvhost_client_device_init being issued more than once.
2013-05-02tegra_v4l2: added missing breakMax Krummenacher
bug report courtesy of Mikhail Shevchuk
2013-04-12max9526: commented out some of the warnings. added interlace flag. fixed ↵Peter Gielda
resolution for PAL/NTSC.
2013-04-12tegra_v4l2: added interlaced video handling for VIPPeter Gielda
2013-04-12tegra_v4l2: map memory as non-cachable and fix the allocation problemPeter Gielda
2013-04-12tegra_v4l2: fixed bugs in memory allocation/deallocationPeter Gielda
2013-03-26media: adv7180: Modify to work with soc_cameraAndrew Chew
This involved adding some callback methods, and pretending that this is a YUV sensor. Signed-off-by: Andrew Chew <achew@nvidia.com>
2013-03-05media: tegra: add supporting for RAW8/RAW10 input and outputBryan Wu
CSI host controller of Tegra can support Bayer Raw8 and Raw 10 data input, it also output data as extended 16-bit data format in memory directly. Raw data output should be handled by the second output channel. This patch add supporting for Raw data input/output and the second output channel. All were tested on Cardhu board. Change-Id: Ifd1d8c94671a1d4571dcf176774e2d3cffafc399 Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/200225 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2013-03-05media: soc_camera: tegra: fix one building warningBryan Wu
Change-Id: Ie685ad11a0847be5b51c752ec593aec857e2f0e2 Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/200224 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2013-03-05media: soc_camera: add OV5650 SoC camera I2C device driverBryan Wu
OV5650 is a RAW sensor outputing Bayer RAW 8 or RAW 10 data. This driver uses SoC camera interface and supports several different resolution. Change-Id: I8075b63b42f7949a264bdef446f5ed8bdc0a9eee Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/200223 GVS: Gerrit_Virtual_Submit Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2013-03-03max9526 driverPeter Gielda
2013-01-14media: v4l2: tegra: fixing memory access oops in tegra camera driverBryan Wu
Function pointer int (*queue_setup)() of struct vb2_ops in include/media/videobuf2-core.h is not compatible with our function call tegra_camera_videobuf_setup(). So building will generate warning and it will cause alloc_ctxs[] with wrong value, then introduce memory access oops later. Bug 1215617 Change-Id: I5d49ccd611a9435a5ee3b21e344bc0b5464ba747 Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/190036 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Andrew Chew <achew@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2013-01-11media: videobuf2-dma-nvmap: fixing nvmap_alloc failureBryan Wu
Videobuf2-dma-nvmap driver using by Tegra v4l2 camera driver needs to allocation memory from system memory with nvmap_alloc(). If we don't enable config option CONFIG_NVMAP_ALLOW_SYSMEM, nvmap_alloc() will fail and application stops working. Bug 1215629 Change-Id: I40af697d8aee1a4981a9684953107dd070cc9bea Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/190037 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Andrew Chew <achew@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2012-12-17media: ov5640: Add Omnivision OV5640 supportAndrew Chew
Based on ov5642 driver. There seem to be some register differences, so forking the driver to make those changes. Change-Id: Idb4a79757cbbcd15d5456ce82a708f433faaff7a Signed-off-by: Andrew Chew <achew@nvidia.com> Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/169836 Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2012-12-17media: tegra: enable a clock for VIP in APB MISC registerBryan Wu
Change-Id: Ic4d91f4ed70fc3daf52768118f6ea537d529a5a8 Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/169835 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2012-12-17media: tegra: Tegra videobuf2Andrew Chew
This is based off of videobuf2-dma-contig, except we use Tegra's nvmap for the buffer allocations. Signed-off-by: Andrew Chew <achew@nvidia.com> Change-Id: I15e689c33ee7b4fc0aade794c78701c82483df3f Reviewed-on: http://git-master/r/145345 (cherry picked from commit 70a4f20fbdd6c2c719400d6c59ef58d845657031) Signed-off-by: Bryan Wu <pengw@nvidia.com> Change-Id: Ia0632d7fcb28415e33fbb22c48f29117d7436f1d Reviewed-on: http://git-master/r/170824 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Andrew Chew <achew@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Winnie Hsu <whsu@nvidia.com>