1. 程式人生 > >MTK MT6735平臺除錯Camera驅動記錄

MTK MT6735平臺除錯Camera驅動記錄

Camera驅動相關檔案:

1、ProjectConfig.mk   配置相關資訊,定義主副攝像頭。和其他資訊

2、kd_imgsensor.h     定義Sensor_id 的資訊檔案, kernel和vendor下都需要有一份

3、kd_camera_hw.c  kd_camera_hw.h  控制Camera上下電,巨集在kd_camera_hw.h中定義

4、kd_sensorlist.h    sensorlist.cpp  這兩個檔案中定義新增Sensor模組,兩個檔案中的順序必須一樣,而且Sensor排序應該由大到小排序。否則容易出錯。

下面資訊略亂,本來有圖的,公司禁止傳圖,也懶得整理了,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

dws檔案需要使用軟體Drgen.exe開啟。

Drgen.exe 檔案在  kernel-3.10\tools\dct目錄下。使用此工具開啟dws檔案,進行修改配置,可以設定GPIO,PMIC等。

Enitmode 選項表示中斷,

DefMode 表示預設模式,

InPull En 控制是否可以拉高拉低

InPull SelHigh 選擇拉高拉低。

VarName 確定巨集所使用的名字。在程式碼中就是使用這些名字。

專案相關的dws檔案在kernel-3.10\drivers\misc\mediatek\mach\mt6735\k35v1_64_op01q_pre\dct\dct 目錄下。

效果檔案在vendor目錄下:vendor/mediate/proprietary/custom/mt6735/hal/D1/imgsensor/

新增驅動需要在檔案中kd_sensorlist.h加入資訊。如

檔案在目錄

MTK中前後攝資訊需要在 kernel-3.10\arch\arm64\configs\

目錄下的 工程 defconfig 檔案中進行新增,如下圖所示:

ProjectConfig.mk檔案在目錄 device/mediate/${project}/

所需要的檔案及所在目錄根據上圖可以得到。下面對其進行配置。

1、  配置ProjectConfig.mk檔案。

CUSTOM_HAL_IMGSENSOR = s5k3l2_mipi_raw

CUSTOM_KERNEL_IMGSENSOR= s5k3l2_mipi_raw

CUSTOM_HAL_SUB_IMGSENSOR = s5k5e2_mipi_raw

CUSTOM_HAL_MAIN_IMGSENSOR = s5k3l2_mipi_raw CUSTOM_KERNEL_MAIN_IMGSENSOR= s5k3l2_mipi_raw

CUSTOM_KERNEL_SUB_IMGSENSOR = s5k5e2_mipi_raw

CUSTOM_KERNEL_IMGSENSOR= s5k3l2_mipi_raw

2、  修改Cmaera相關資訊,例如馬達資訊 ,如果不存在使用dummy_lens替代。

CUSTOM_HAL_LENS = dummy_lens

CUSTOM_KERNEL_LENS = dummy_lens

CUSTOM_HAL_MAIN_LENS = dummy_lens

CUSTOM_HAL_SUB_LENS = dummy_lens

CUSTOM_KERNEL_MAIN_LENS = dummy_lens

CUSTOM_KERNEL_SUB_LENS = dummy_lens

3、  修改kd_imgsensor.h

#define S5K3L2_SENSOR_ID 0x20

#define SENSROR _DRVNAME_ S5K3L2 _MIPI_RAW  “s5k3l2mipiraw”

4、  修改kd_camera_hw.c

在這個檔案中,有上電時序,和時鐘控制

設定GPIO

上電

kd_camera_hw.h中修改在kd_camera_hw.c中所使用的巨集。

而定義的這些巨集所指向的內容 又是通過此目錄下DrvGen.exe所生成。

通過DrvGen.exe 開啟codegen.dws檔案進行編輯

相關推薦

MTK MT6735平臺除錯Camera驅動記錄

Camera驅動相關檔案: 1、ProjectConfig.mk   配置相關資訊,定義主副攝像頭。和其他資訊 2、kd_imgsensor.h     定義Sensor_id 的資訊檔案, kernel和vendor下都需要有一份 3、kd_camera_hw.c  kd

基於qualcomm平臺camera 驅動詳解

前言: 一、Android camera架構 在framework中,camera主要是通過以下庫來協同工作的: libandroid_runtime.so、libui.so、libcamerase

MTK平臺camera驅動架構分析

MTK6580 AndroidO(android8.1)版本camera 驅動分析 CAMERA驅動整個框架分為:三個部分hal部分邏輯呼叫,kernel層的通用驅動sensorlist.c 和具體IC的驅動xxxx_mipi_raw.c 這裡主要介紹kernel部分和HAL層部分。

uvc camera MTK平臺除錯總結

USB video class(又稱為USB video device class or UVC)就是USBdevice class視訊產品在不需要安裝任何的驅動程式下即插即用,包括攝像頭、數字攝影機、模擬視訊轉換器、電視卡及靜態視訊相機。 Linux核心之中,已經集成

MT6735平臺GPIO中斷除錯記錄

dws檔案配置:kernel-3.10/tools/dct/drvgen.exe  bootable/bootloader/lk/target/mt6735_66t_a19/dct/dct/codegen.dws bootable/bootloader/preloader/

MTK-MT6735-camera新加模組除錯總結

最近公司專案新換了一個不在支援列表中的camera,記錄一下除錯流程,以方便以後查閱。1、第三方提供kernel的驅動程式碼以及hal層的效果程式碼。kernel程式碼拷貝到(比如)kernel-3.18/drivers/misc/mediatek/imgsensor/src

MTK MT6589平臺射頻除錯方法

本文介紹MTK MT6589 FAQ晶片資料。 現在使用MT6589+MT6167+BAND 1 2 5,現在校準不過,以下是ATE的列印資訊. 已經用META調過3G的功率,更換過電阻 電容 電感 如下: ===================== Begin Calibrati

MTK平臺除錯加密晶片ATSHA204A---概括篇

本文是概括篇,我會在我的資源那裡上傳程式碼,敬請後續關注,方便讀者參考使用,如有疑問或者有業務合作,可私信我。 除錯的平臺:mt6580 系統:android5.1 加密晶片:ATSHA204A(8腳S0IC封裝) 推薦:具有4.5kb eeprom,且價效比最高。 介面:Interface

高通Camera 驅動除錯要點(一)

本文主要介紹QCOM camera除錯的重要引數; (1)Lane_assign 和lane_mask    現在攝像頭基本都是mipi介面型別,因為前後攝都對應到平臺這邊不同的mipi介面,相應的資料lane需要一一對應;   lane assign:   lan

展訊平臺 camera驅動分析(sensor部分)

展訊平臺其既用於功能機也用於智慧機。其65和66系列的平臺主要用於功能機,例如6530、6531、6500、6610、6620、6600L;68和88系列的平臺主要用於智慧機,例如SC6810、SC6820、SC6800、SC8820、SC8810。目前我們使用的樣機為SC

linux驅動由淺入深系列:camera驅動之二(基於高通平臺的V4L2結構及程式碼分析)

在上一篇文章中介紹了camera的基礎知識和相關概念,我們一起來了解一下驅動相關的程式碼結構。本文以高通+android平臺為示例,首先看一下整體框圖:這張圖是從整體上來看的1,圖中最下面的是kernel層的驅動,其中按照V4L2架構實現了camera sensor等驅動,向

MTK Camera驅動框架學習

前面,我分析了Tpd和Keypad的驅動框架,其實大體都差不多,都是利用平臺匯流排進行管理和註冊。那麼,今天要總結的是MTK平臺的Camera驅動框架。參考部落格:http://www.2cto.com

mtk-camera驅動開機識別流程

mtk平臺在開機的時候你會發現camera上下電達6次之多,main和sub camera分別上下電了3次(以下簡稱main或sub來表示後攝或前攝),這麼多上下電過程都是用來做什麼的呢,今天我詳細研究了一下,大致總結如下:mtk的camera驅動會先註冊兩個camera通道

camera 驅動除錯常見問題總結

在嵌入式系統,如手機等平臺上使用的Camera sensor通常是由類似I2C這樣的匯流排進行暫存器控制,由CPU端的Controller提供所需的驅動時序,通常支援YUV和RGB等資料格式。有的Sensor需要由CPU進行影象處理工作,有的Sensor自己會整合影象處理晶片,完成一些基礎的影象處理工作,

各個平臺camera驅動編寫註意事項

void 形式 pro 接口 over 控制器 交互 方式 imx6 各個平臺camera驅動編寫註意事項 camera驅動開發 1)另外註意,在imx6平臺中,4.1.15kernel版本的代碼,mxc的mxc_v4l2_capture.c camera主控制器和ov56

平臺設備驅動註冊及使用分析

bool 函數 star ret err 平臺設備驅動 source match函數 dma platform總線是一種虛擬的總線,相應的設備則為platform_device,而驅動則為platform_driver。Linux 2.6的設備驅動模型中,把I2C、RTC、

SylixOS的imx1050平臺PWM捕獲驅動

SylixOs概述本文檔是對IMXRT1050平臺上的SylixOS PWM波的產生和捕獲功能的詳細分析。代碼在IMXRT1050的板級支持包的“bsp_rt1050/SylixOs/driver/pwm/”目錄下的pwm.c文件中,該文件會依賴於bsp_rt1050/SylixOs/driver/lib目錄

Linux驅動平臺設備驅動模型簡析(驅動分離分層概念的建立)

技術 描述 rst 操作 mem iou 系統 簡單 reg Linux設備模型的目的:為內核建立一個統一的設備模型,從而有一個對系統結構的一般性抽象描述。換句話說,Linux設備模型提取了設備操作的共同屬性,進行抽象,並將這部分共同的屬性在內核中實現,而為需要新添加設備

Eclipse C/C++開發除錯環境安裝記錄

------------------------------------ 版權資訊 ------------------------------------ 此文連結: http://blog.csdn.net/doniexun/article/details/45057453

編寫MTK6737平臺的GPIO驅動例程(六)

在新版本的Android中加入SeLinux,許可權更加的嚴禁,之前筆者已經寫過通過SysFs將底層的驅動的介面暴露在上層使用者面前,現在再貼一份app中怎麼使用的例子。 APP初始執行,需要初始化一次GPIO狀態 //GPIO96.writeGpioStatus(1);