summaryrefslogtreecommitdiff
path: root/drivers/media
AgeCommit message (Collapse)Author
2014-07-08media: vi driver on Colibri T20 is working againWojciech Bieganski
This commit resolves an issue of non-working vi camera driver on Colibri T20 occured after a l4t-r16-r4 merge.
2014-07-08media: AS0260 camera driver improvementsWojciech Bieganski
2014-05-08media: enabled CSI mode in AS0260 camera driverWojciech Bieganski
2014-04-22media: added improved Aptina AS0260 driverWojciech Bieganski
Driver features: 1. Supported formats: - Full HD, 1920x1080, 8.5 FPS, YUYV - VGA, 640x480, 30 FPS, YUYV 2. Available controls with enabled AE (auto exposure): - brightness [0...255], - contrast [16...64], - saturation [0...256], - hue [-2200...2200], - gamma [100...280]. 3. Works only in parallell interface mode (CSI in progress). 4. No external tools needed (for i2c).
2014-04-22media: image from analog cameras is back to full speedWojciech Bieganski
This commit restores the full framerate (25 FPS), after a drop to 16 FPS caused by a l4t-r16-r4 merge.
2014-04-22media: added camera settings per decoderWojciech Bieganski
This commit adds settings such as: - values of horizontal/vertical active start, - enabling/disabling internal sync, to the private data of decoders: MAX9526, ADV7180, TVP5150, OV7670 and AS0260. The feature is available through *_tegra_camera_platform_data struct initialised in board-*.c files.
2014-04-04media: a quick fix to make tegra_v4l2_camera module reloadableWojciech Bieganski
2014-04-04media: 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>
2014-04-04media: 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> Conflicts: drivers/media/video/tegra_v4l2_camera.c
2014-04-04media: 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> Conflicts: drivers/media/video/tegra_v4l2_camera.c
2014-04-04media: 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> Conflicts: drivers/media/video/tegra_v4l2_camera.c
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