MTK3767t點亮模組SP2509V和OV8856

首先至少要有兩套能點亮的寄存器參數,最好能有kernel層和hal層對應的文件。(我的只有參數,所以這裏會描述借殼點亮一些需要修改的地方)

1.配置ProjectConfig.MK文件位置:driver/flycom/p35t_drivonly

CUSTOM_HAL_IMGSENSOR = sp5506_mipi_raw_p35 sp250amipi_raw_p35 gc5025mipi_raw_p35 gc2385mipi_raw_p35 ov5648_mipi_raw
#hal需要編譯的模組庫
CUSTOM_HAL_MAIN_IMGSENSOR = sp5506_mipi_raw_p35 gc5025mipi_raw_p35 ov5648_mipi_raw
#hal層後攝使用的模組
CUSTOM_HAL_SUB_IMGSENSOR = sp250amipi_raw_p35 gc2385mipi_raw_p35
#hal層前攝使用模組
CUSTOM_KERNEL_IMGSENSOR = sp5506_mipi_raw_p35 sp250amipi_raw_p35 gc5025mipi_raw_p35 gc2385mipi_raw_p35 ov5648_mipi_raw
#kernel需要編譯的模組庫
CUSTOM_KERNEL_MAIN_IMGSENSOR = sp5506_mipi_raw_p35 gc5025mipi_raw_p35 ov5648_mipi_raw
#kernel層後攝使用的模組
CUSTOM_KERNEL_SUB_IMGSENSOR = sp250amipi_raw_p35 gc2385mipi_raw_p35
#kernel層前攝使用模組
2.修改SENSOR_CHIP_ID在kernel-3.18/drivers/misc/mediatek/imgsensor/inc/kd_imgsensor.h
個人因爲是借殼點模組所以修改的是SP250a和OV5648
#define OV5648MIPI_SENSOR_ID 0x885a
#define SP250A_SENSOR_ID 0x2509
#define SENSOR_DRVNAME_OV5648_MIPI_RAW “ov5648mipi” //ov5648mipi對應的是src下kernel層驅動文件夾的名稱
#define SENSOR_DRVNAME_SP250A_MIPI_RAW “sp250amipiraw”
3.借殼點亮,我們要點亮的模組爲OV8856和SP2509V,分別借殼ov5648和sp250a(如果你有文件的話直接把文件放在kernel-3.18/drivers/misc/mediatek/imgsensor/src/mt6735/文件夾下就好)
修改
.pre = {
.pclk = 144154560, //linelength*framelength*fps
.linelength = 3872, //讀取對應寄存器參數寫入的值
.framelength = 2482, //讀取對應寄存器參數寫入的值
.startx = 0, //record different mode’s startx of grabwindow
.starty = 0, //record different mode’s starty of grabwindow
.grabwindow_width = 3264, //尺寸設置
.grabwindow_height = 2448, //尺寸設置
.mipi_data_lp2hs_settle_dc = 85,
.max_framerate = 150, //fps設置
},
換成對應自己模組寄存器的操作
static void sensor_init(void)
{
write_cmos_sensor(0x0100, 0x00);
write_cmos_sensor(0x0302, 0x3c);
….
write_cmos_sensor(0x0100, 0x01);
}
同樣的操作
static void preview_setting(void)
{

}
4.模塊註冊kd_sensorlist.h和sensorlist.cpp
sensorlist.cpp

if defined(OV5648_MIPI_RAW)
RAW_INFO(OV5648MIPI_SENSOR_ID,SENSOR_DRVNAME_OV5648_MIPI_RAW, NULL),
endif

5.上電文件kd_camera_hw.h

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章