Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 96e3d4de authored by Terence Ho's avatar Terence Ho Committed by Andy Sun
Browse files

msm: Initial ais driver for automotive camera



Initial driver directory setup for automotive
imaging subsystem - ais. The camera kernel drivers
for mobile and automotive platforms have been decoupled
and placed in separate directories as automotive usecases
will require significant divergence from mobile drivers.
The changes to the imaging pipeline drivers enable
automotive imaging subsystem interface from userspace.

This snapshot is taken as of msm-3.18 'commit c3d5931bbc51
("msm: Initial ais driver for automotive camera")'


Change-Id: I49b8e827818994d0a8b320ffe92f8031ffbb69ca
Signed-off-by: default avatarTerence Ho <terenceh@codeaurora.org>
Signed-off-by: default avatarAndy Sun <bins@codeaurora.org>
parent 3d82d664
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -14,8 +14,8 @@ Required properties:
[Second level nodes]
Required properties:
- compatible : one of:
    - "qcom,msm-cam-smmu-cb"
    - "qcom,qsmmu-cam-cb"
    - "qcom,msm-cam-smmu-cb" : For arm smmu iommu type.
    - "qcom,qsmmu-cam-cb" : For qsmmu iommu type.
- iommus : Handle parsed by smmu driver. Number of entries will vary
  across targets.
- label - string describing iommu domain usage.
@@ -23,6 +23,7 @@ Required properties:
Optional properties:
- qcom,scratch-buf-support : Enables iommu scratch buffer support in
  that context bank.
- qcom,secure-context : boolean type, to set the context domain type as secure.

Example:
  qcom,cam_smmu@0 {
+11 −0
Original line number Diff line number Diff line
@@ -27,6 +27,17 @@ obj-$(CONFIG_VIDEO_ADV7343) += adv7343.o
obj-$(CONFIG_VIDEO_ADV7393) += adv7393.o
obj-$(CONFIG_VIDEO_ADV7604) += adv7604.o
obj-$(CONFIG_VIDEO_ADV7842) += adv7842.o
ifeq ($(CONFIG_MSM_AIS),y)
ccflags-y += -Idrivers/media/platform/msm/ais
ccflags-y += -Idrivers/media/platform/msm/ais/common
ccflags-y += -Idrivers/media/platform/msm/ais/sensor/io
ccflags-y += -Idrivers/media/platform/msm/ais/sensor/cci
else
ccflags-y += -Idrivers/media/platform/msm/camera_v2
ccflags-y += -Idrivers/media/platform/msm/camera_v2/common
ccflags-y += -Idrivers/media/platform/msm/camera_v2/sensor/io
ccflags-y += -Idrivers/media/platform/msm/camera_v2/sensor/cci
endif
obj-$(CONFIG_VIDEO_ADV7481) += adv7481.o
obj-$(CONFIG_VIDEO_AD9389B) += ad9389b.o
obj-$(CONFIG_VIDEO_ADV7511) += adv7511.o
+8 −7
Original line number Diff line number Diff line
@@ -2,35 +2,35 @@
# MSM camera configuration
#

comment "Qualcomm MSM Camera And Video"
comment "QTI MSM Camera And Video & AIS"

menuconfig MSM_CAMERA
	bool "Qualcomm MSM camera and video capture support"
	bool "QTI MSM camera and video capture support"
	depends on ARCH_QCOM && VIDEO_V4L2 && I2C
	---help---
	  Say Y here to enable selecting the video adapters for
	  Qualcomm msm camera and video capture drivers. enabling this
	  QTI msm camera and video capture drivers. enabling this
	  adds support for the camera driver stack including sensor, isp
	  and postprocessing drivers for legacy chipsets.

config MSM_CAMERA_DEBUG
	bool "Qualcomm MSM camera debugging with printk"
	bool "QTI MSM camera debugging with printk"
	depends on MSM_CAMERA
	default n
	---help---
	  Enable printk() debug for msm camera

menuconfig MSMB_CAMERA
	bool "Qualcomm MSM camera and video capture 2.0 support"
	bool "QTI MSM camera and video capture 2.0 support"
	depends on ARCH_QCOM && VIDEO_V4L2 && I2C
	---help---
	  Say Y here to enable selecting the video adapters for
	  Qualcomm msm camera and video capture 2.0, enabling this
	  QTI msm camera and video capture 2.0, enabling this
	  adds support for the camera driver stack including sensor, isp
	  and postprocessing drivers.

config MSMB_CAMERA_DEBUG
	bool "Qualcomm MSM camera 2.0 debugging with printk"
	bool "QTI MSM camera 2.0 debugging with printk"
	depends on MSMB_CAMERA
	---help---
	  Enable printk() debug for msm camera 2.0
@@ -41,5 +41,6 @@ endif # MSMB_CAMERA

source "drivers/media/platform/msm/vidc/Kconfig"
source "drivers/media/platform/msm/sde/Kconfig"
source "drivers/media/platform/msm/ais/Kconfig"
source "drivers/media/platform/msm/dvb/Kconfig"
source "drivers/media/platform/msm/broadcast/Kconfig"
+1 −0
Original line number Diff line number Diff line
@@ -7,3 +7,4 @@ obj-$(CONFIG_MSM_VIDC_V4L2) += vidc/
obj-y += sde/
obj-y += broadcast/
obj-$(CONFIG_DVB_MPQ) += dvb/
obj-$(CONFIG_MSM_AIS) += ais/
+85 −0
Original line number Diff line number Diff line
menuconfig MSM_AIS
	bool "QTI MSM Automotive Imaging Subsystem"
	  depends on ARCH_QCOM && VIDEO_V4L2 && I2C
	---help---
	  Say Y here to enable msm AIS

config MSM_AIS_DEBUG
	bool "QTI MSM AIS debugging with printk"
	  depends on MSM_AIS
	  default n
	---help---
	  Enable printk() debug for msm AIS.
	  Enabling ais debug will affect performance.
	  This feature is only applicable to
	  Automotive platforms.

config MSM_AIS_CAMERA_SENSOR
	bool "QTI MSM camera sensor support"
	  depends on MSM_AIS
	  select NEW_LEDS
	  select LEDS_CLASS
	---help---
	  This flag enables support for Camera Sensor.
	  The sensor driver is capable of providing real time
	  data for camera support. The driver support V4L2
	  subdev APIs.

config MSM_AIS_CPP
	bool "QTI MSM Camera Post Processing Engine support"
	  depends on MSM_AIS
	---help---
	  Enable support for Camera Post-processing Engine
	  The Post processing engine is capable of scaling
	  and cropping image. The driver support V4L2 subdev
	  APIs.

config MSM_AIS_EEPROM
	bool "QTI MSM Camera ROM Interface for Calibration support"
	  depends on MSM_AIS
	---help---
	  Enable support for ROM Interface for Calibration
	  Provides interface for reading the Calibration data
	  and also provides support for writing data in case of FLASH ROM.
	  Currently supports I2C, CCI and SPI protocol

config MSM_AIS_JPEG
	bool "QTI MSM Jpeg Encoder Engine support"
	  depends on MSM_AIS
	---help---
	  Enable support for Jpeg Encoder/Decoder
	  Engine for 8974.
	  This module serves as the common driver
	  for the JPEG 1.0 encoder and decoder.

config MSM_AIS_FD
	bool "QTI MSM FD face detection engine support"
	  depends on MSM_AIS
	---help---
	  Enables support for the MSM FD face detection engine.
	  MSM Face Detection library
	  enables the Face detection
	  hardware block.

config MSM_AIS_JPEGDMA
	bool "QTI MSM Jpeg dma"
	  depends on MSM_AIS
	  select V4L2_MEM2MEM_DEV
	---help---
	  Enable support for Jpeg dma engine.
	  The jpeg DMA engine is a hardware enabled
	  jpeg decode.
	  This feature is currently not supported on
	  Automotive platforms.

config MSM_AIS_SEC_CCI_TA_NAME
	string "Name of TA to handle Secure CCI transactions"
	  depends on MSM_AIS_CCI
	default "seccamdemo64"

config MSM_AIS_SEC_CCI_DEBUG
	bool "QTI MSM Secure CCI Relay Debug"
	  depends on MSM_AIS_CCI
	---help---
	  Enables simulation of secure camera for Secure CCI Realy
	  debugging.
Loading