Commit Graph

48 Commits

Author SHA1 Message Date
Ankit Premrajka
073e0cab00 msm: camera: add fields to msm_stats_buf for cache operations.
Add a couple of fields to the msm_stats_buf structure
for cache coherence support on stats buffers from
user-space.

Change-Id: I3553fcf6359e4e748eb309d4a0a5979999d96f09
Signed-off-by: Ankit Premrajka <ankitp@codeaurora.org>
2012-03-19 14:35:43 -07:00
Kevin Chan
210061ffd9 msm: camera: Add media device node
Add media device node for each camera sensor
Sensor and video node info will be used
for device discovery from userspace

Change-Id: Id8c2f3e952c83259bb6b273cb6b3f04ed93d0ef3
Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
2012-03-16 10:34:41 -06:00
Mingcheng Zhu
c85b8ade5c msm-camera: enhance the camsenser query structure
More information needs to pass to userspace.

Change-Id: Ia7c5a5cf9a7f48e1c6167fd3ca2ddd56fbdbf8c9
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2012-03-13 01:43:53 -07:00
Kevin Chan
4bb6ead226 msm: camera: send error to HAL if daemon crashed
When camera userspace daemon crashes, the server fd
will be close, which trigger the msm_server_close
function, we will check if there is an active camera
session. If camera is active, we will send a v4l2
event to HAL layer to signal an error. Application
will exit gracefully and close other open fds and
exit camera session.

Change-Id: I14ebc864d6cace7ca6f4dbfb935623a76eeccaa8
Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
2012-03-02 18:44:28 -08:00
Jeyaprakash Soundrapandian
04592007f7 msm-camera: vertical and horizontal view angle of lens added.
The application layer expects the view angle of the camera lens.
The lens vertical and horizontal view angle of the sensors
imx074 and ov2720 are added.

Change-Id: I513fbbdf7fdfc5df0969fe54e05c7549123f6bcb
Signed-off-by: Jeyaprakash Soundrapandian <jsound@codeaurora.org>
2012-02-22 15:30:06 -08:00
Su Liu
6c3bb3269d msm: camera: EVB: Add Kernel driver OV5647 & OV7692
Add Initial sensor driver support for 5MP OV5647
and 1MP OV7692 on EVB 1.0 platform.

Change-Id: I8155abe1ff3c388561feed3a032c6603df892e1e
Signed-off-by: Su Liu <suliu@codeaurora.org>
Signed-off-by: Lokesh Kumar Aakulu <lkumar@codeaurora.org>
2012-02-20 18:37:39 +05:30
Kiran Kumar H N
de2d0ee764 msm: camera: Correct the IOCTL numbers.
Two camera IOCTL types are enumerated using
the same number by mistake. Rectify the mistake.

Change-Id: I48ee8d0ca543c19a3f692ed2ca5baa950edacdf2
Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
2012-02-16 07:45:20 -07:00
Jignesh Mehta
6cf8a749e2 camera: vfe32: Enable VFE configuration for inline JPEG encoding.
During inline JPEG encoding, one VFE output is routed into
internal memory (IMEM) instead of external memory. The JPEG
encoding hardware (GEMINI) will read from IMEM and generates
JPEG bitstream.

Change-Id: I12d3600524538ab85021dd8882af0404bddc488f
Signed-off-by: Shuzhen Wang <shuzhenw@codeaurora.org>
Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
Signed-off-by: Jignesh Mehta <jigneshm@codeaurora.org>
2012-02-14 04:27:31 -07:00
Ankit Premrajka
70613ecf6c msm: camera: support exposure metering and HDR snapshots
With this change we achieve multiple things related
to correct HDR functionality. First, we do not
always configure ping and pong to be the same buffer in
case of the snapshot mode. This would help support taking
mulitple snapshots. Second, we support for logic to skip
frames in case of snapshot, a necessity for the exposure
metering feature. Third, we support post processing
divert of both snapshot and thumbnail buffers to be
taken from either mctl queue or video queue, to be
determined at runtime.

Change-Id: Ibcf2bbfc171b2686ca44e6366feadf435368fa5f
Signed-off-by: Ankit Premrajka <ankitp@codeaurora.org>
2012-02-10 14:19:30 -08:00
Kiran Kumar H N
c3cb9ea7ca msm: camera: Add MCTL camera node.
Add support for MCTL camera node. This
is a v4l2 device node which will be used
by the camera daemon process to configure
buffers for VFE.

Change-Id: I8415288fb6881376a8c1e78ca03bb12f8f655863
Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2012-02-02 16:28:35 -08:00
Kiran Kumar H N
dd12847121 msm: camera: Configure VFE for two output mode.
Configure upto two outputs of VFE desginated
as primary and secondary. Depending on the irq,
only send message type primary and secondary and
allow MCTL to interpret these messages.

Change-Id: I25568cb6bba5792658b0570383f64ddb58e21421
Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2012-02-02 16:28:35 -08:00
Kevin Chan
318d7cbd8e msm: camera: Correct the reserve buffer logic in mctl_pp.
When the daemon asks to reserve a free buffer, get the
correct address by using the image mode to get to the
correct camera instance and populating the buffer address.

Change-Id: I23c6e00458562ef2b9880cbffe2d6a100de80ea1
Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2012-02-02 09:49:29 -08:00
Suresh Vankadara
055cb8ecdd msm: camera: Add support to V4L2 architecture
New targets are following V4L2 architecture for
camera. Update 7x27a camera drivers to support
new V4L2 architecture to unify all camera drivers
in the same architecture.

Signed-off-by: Suresh Vankadara <svankada@codeaurora.org>
Change-Id: Ie23ac982375041c06b68537d5784d8cdbbc9bf04
2012-01-26 07:35:24 +05:30
Alekhya,Monika
fc81e10421 msm-camera: Add support for YV12 preview format
Enable camera driver to output preview frames in YV12 format.

Change-Id: Ib4e358460eb922c6a06314682380c4de30f81319
Signed-off-by: Alekhya,Monika <malekh@codeaurora.org>
2012-01-20 17:12:20 +05:30
Guruprasad Gaonkar
4c7758f294 Camera : Change to retreive system time from Kernel
This timestamp is needed in the userspace to flush old
video frames.

Change-Id: I432e5f5d35581b10857b41930d7751500ea131dc
Signed-off-by: Guruprasad Gaonkar <ggaonk@codeaurora.org>
2011-12-19 20:48:12 -07:00
Rajakumar Govindaram
6bc004a291 msm: camera: Support for MT9M114 YUV sensor
Initial support for Aptina 720p YUV sensor

Change-Id: Idb2eb0c1d98482077cb170f3fc581b1e548dc1ee
Signed-off-by: Rajakumar Govindaram <crajaku@codeaurora.org>
2011-12-14 07:30:54 -07:00
Mingcheng Zhu
8feaa3fe88 msm: separating frame divert and post process path.
Add a new IOCTL to handle the completion of diverted
frame.

Change-Id: I3bbfc2bd3bfdfcd5e078713c068f3f6f97f7239a
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2011-12-02 16:35:40 -08:00
Ankit Premrajka
3e90b9f726 msm: camera: add ion support to native driver.
This change adds ion support to native (non V4L2)
camera driver. It also adds ion structures to the msm_frame
structure.

Change-Id: I9be720e7d9924074706c93eec52178cb6f130af6
Signed-off-by: Ankit Premrajka <ankitp@codeaurora.org>
2011-11-14 08:58:26 -08:00
Mingcheng Zhu
996be18a0a msm-camera: allow non-zero Y offset.
Change-Id: I73238a6cfac0feb146279516f78f4a51c74bc9e9
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2011-11-09 12:56:23 -08:00
Kiran Kumar H N
4cff94aea7 msm: camera: Add support for YV12 image format.
If the application uses YV12 or similar image
formats which have more than 2 planes, then enable
all the 3 channels of VFE output.

Change-Id: I31af22a4047a38a12fe09a0b07a68f435506aad1
Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
2011-11-01 09:44:32 -07:00
Taniya Das
a9bdb01e48 msm: camera: Add camera driver support for ov5640 and ov7692
Add supprt for ov5640 and ov7692 for QRD devices.

Change-Id: I9aa5b5031f0cd05f88fa5958a8dd4dbea18f04ab
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Signed-off-by: Lokesh Kumar Aakulu <lkumar@codeaurora.org>
2011-10-31 16:32:45 +05:30
Kiran Kumar H N
cd7bc3ba9b camera: Add multiplanar support in postprocessing.
The current postprocessing framework uses single
planar structures. Change the data structures
to support multiplanar image formats.

Change-Id: I27dc6f4c544a4a628bbf2b073d6abd899450a396
Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
2011-10-24 11:49:22 -06:00
Kevin Chan
272f660ed7 msm: camera: Add binning factor to sensor output info
Incoporate binning factor to calculate exposure time

Change-Id: I31f6896ae7b36f606b8a407e5662d341f8f8ff1e
Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
2011-10-18 14:20:03 -07:00
Kevin Chan
e30d369718 msm: camera: Separate video timing and output pixel clk
Camera video timing pixel clk and output pixel clk
can be different. Added vt_pixel_clk and op_pixel_clk
to address the difference.

Change-Id: I8770c9897bc340908776d01a7583fed84398ff33
Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
2011-10-17 16:36:51 -07:00
Kiran Kumar H N
0b51780505 camera: Modify the camera event interface.
- The current camera event interface is limited
  to 64 bytes. This restricts the interaction
  between the driver and the  userspace since
  the current structures used are already using
  the entire 64 bytes. Hence change the interface
  to overcome this limitation and accomodate more
  usecases(eg: postprocessing for multiplanar formats)
- Renamed the event structure to a more generic
  name.

Change-Id: Id3c635e2652491da4efd8fe34c32d63464b83755
Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
2011-10-14 09:54:50 -07:00
Yonggui Mao
c0055a1e92 Camera: add special effect of emboss, sketch and neon
Signed-off-by: Yonggui Mao <yongguim@codeaurora.org>
2011-10-05 10:35:54 -07:00
Mingcheng Zhu
8e9f99e622 msm: add video processing engine (VPE) as a V4L2 subdev in 8960.
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2011-10-03 16:20:18 -07:00
Sreesudhan Ramakrish Ramkumar
5f4b344ef8 msm: camera: Get info changes for unified actuator
Signed-off-by: Sreesudhan Ramakrish Ramkumar <srramku@codeaurora.org>
2011-10-03 16:19:57 -07:00
Sreesudhan Ramakrish Ramkumar
a4b5f30e62 msm: camera: Actuator changes for 8960
1) Added actuator framework with common functions abstracted out
2) Added actuator as a sub device in media controller
3) coupled sensor with its specific actuator in board file
4) Added new actuator control structure and new enum for communication
between user space and kernel space
5) Added common logging module with different logging levels

Signed-off-by: Sreesudhan Ramakrish Ramkumar <srramku@codeaurora.org>

Conflicts:

	arch/arm/configs/msm8960_defconfig
2011-10-03 16:19:57 -07:00
Kevin Chan
07f710c887 msm: camera: Add camera epprom utility functions
New utility file for handling camera eeprom.
Added standard functions for reading from eeprom.

Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
2011-10-03 16:18:15 -07:00
Kevin Chan
36e2bdcdf3 msm: camera: Add camera sensor quarter & full size enum
Add quarter and  full size as a valid resolution.
Both size are always present and used in sensor driver.

Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
2011-10-03 16:18:11 -07:00
Kiran Kumar H N
ceea762f4b msm: camera: Support for Multi planar image formats.
Add support for multi-planar image formats. This
allows the luma and chroma planes of the image to
reside in different memory locations.

Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
2011-10-03 16:17:31 -07:00
Mingcheng Zhu
fe7abc088b mm camera: Add pmem vaddr mapping in HAL
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2011-10-03 16:17:10 -07:00
Mingcheng Zhu
9559ee42d0 msm camera: separate daemon pmem mapping away from video node
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2011-10-03 16:17:10 -07:00
Ankit Premrajka
f94bcc6852 msm: camera: add config identifier to control command structure.
Signed-off-by: Ankit Premrajka <ankitp@codeaurora.org>
2011-10-03 16:16:14 -07:00
Mingcheng Zhu
270813aace msm: code clean up of the existing improper event implementation
Current implementation has a bug in v4l2 event subscription.

Also it is good to make the kernel to be transparent
to those notification events from daemon to HAL.

Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2011-10-03 16:15:36 -07:00
Lakshmi Narayana Kalavala
4ab97a9943 msm: camera: Include Minimum Luma in Stats buffer
Include Minimum Luma Pixel value in Stats buffer
for AWB stats process.

Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2011-10-03 16:15:22 -07:00
Kevin Chan
a980f399e0 msm: camera: Improve unify sensor apis
Added more error checking code
Separate dimension specific register settings into separate structure
Code flow improvements

Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
2011-10-03 16:15:10 -07:00
Nishant Pandit
474f225b55 msm: camera: Initial version of LED Driver on 8960
Initial version of LED driver for Cdp & Mdp comprise

- Enable SC628A LED Driver chip for 8960.
- Configure SX150X Gpio Expander chip.
- Restructure  Camera Gpio Mux settings table
which will later be used to toggle function select for LED Flash
between Mdp & Cdp.

Signed-off-by: Nishant Pandit <npandit@codeaurora.org>
2011-10-03 10:28:19 -07:00
Shuzhen Wang
2fe35efa5b camera: v4l2: Add zoom support in driver.
Add implementation of G_CROP and event for
zoom completion.

Signed-off-by: Shuzhen Wang <shuzhenw@codeaurora.org>
2011-10-03 10:28:08 -07:00
Shuzhen Wang
0d9277c6c1 camera: v4l2: Use v4l2_event for event from config to app.
This simplies the way event is propagated. Driver only needs
to pass on the v4l2_event structure directly.

Signed-off-by: Shuzhen Wang <shuzhenw@codeaurora.org>
2011-10-03 10:28:03 -07:00
Mingcheng Zhu
5b04d356f5 msm camera: snapshot wavelet denoise support
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2011-10-03 10:27:53 -07:00
Mansoor Aftab
5d41837ac1 msm: camera: Changes to enable events and Auto Focus
Added event notify message support added entries for
autofocus event types

Signed-off-by: Mansoor Aftab <maftab@codeaurora.org>
2011-10-03 10:27:20 -07:00
Mingcheng Zhu
4950550ed4 msm: Add new msm_buffer and event structs and event defines
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2011-10-03 10:26:30 -07:00
Kiran Kumar H N
0fb9dcfbc6 msm-camera: configure preview and recording buffers
seperately.

decouple preview and recording path configuration
by configuring the buffers during preview start
and recording start respectively.

Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2011-10-03 10:26:29 -07:00
Kiran Kumar H N
5a19c68d63 Revert "msm: camera: YV12 video support"
This reverts commit 66882a5046143601429632a0b589d9ffeeb3c668.
This change will be submitted later.

Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
2011-10-03 10:26:23 -07:00
Azam Sadiq Pasha Kapatrala Syed
7ff0cf4999 msm: camera: YV12 video support
Support for color format YV12.

Signed-off-by: Azam Sadiq Pasha Kapatrala Syed <akapatra@codeaurora.org>
2011-10-03 10:26:16 -07:00
Bryan Huntsman
3f2bc4d6eb Initial Contribution
msm-2.6.38: tag AU_LINUX_ANDROID_GINGERBREAD.02.03.04.00.142

Signed-off-by: Bryan Huntsman <bryanh@codeaurora.org>
2011-10-03 09:57:10 -07:00