全志R58平台调通s5k5eya(RAW+MIPI)

 

全志R58平台调通s5k5eya(RAW+MIPI)

 

 

 

2017/5/31 10:30

版本:V1.1

 

 

1、前期使用的是s5k5eyx的ISP的固件/tuning 文件

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-common\hawkview\5M\s5k5e2yx\bin\gamma_tbl.bin

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-common\hawkview\5M\s5k5e2yx\bin\hdr_tbl.bin

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-common\hawkview\5M\s5k5e2yx\bin\lsc_tbl.bin

 

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-common\hawkview\5M\s5k5e2yx\isp_3a_param.ini

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-common\hawkview\5M\s5k5e2yx\isp_iso_param.ini

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-common\hawkview\5M\s5k5e2yx\isp_test_param.ini

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-common\hawkview\5M\s5k5e2yx\isp_tuning_param.ini

 

 

 

 

2、HAL层的分辨率:

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-f1\configs\camera.cfg

;-------------------------------------------------------------------------------

; 用于camera的配置

;

; 采用格式:

; key = key_value

; 注意: 每个key需要顶格写;

; key_value紧跟着key后面的等号后面, 位于同一行中;

; key_value限制大小为256字节以内;

;

;-------------------------------------------------------------------------------

 

;-------------------------------------------------------------------------------

; exif information of "make" and "model"

;-------------------------------------------------------------------------------

key_camera_exif_make = MAKE_AllWinner

key_camera_exif_model = MODEL_f1

 

;-------------------------------------------------------------------------------

; 1 for single camera, 2 for double camera

;-------------------------------------------------------------------------------

number_of_camera = 1

 

;-------------------------------------------------------------------------------

; CAMERA_FACING_BACK

; ov8858 s5k5eya

;-------------------------------------------------------------------------------

camera_id = 0

 

;-------------------------------------------------------------------------------

; 1 for CAMERA_FACING_FRONT

; 0 for CAMERA_FACING_BACK

;-------------------------------------------------------------------------------

camera_facing = 0

 

;-------------------------------------------------------------------------------

; 1 for camera without isp(using built-in isp of Axx)

; 0 for camera with isp

;-------------------------------------------------------------------------------

use_builtin_isp = 1

 

;-------------------------------------------------------------------------------

; camera orientation (0, 90, 180, 270)

;-------------------------------------------------------------------------------

camera_orientation = 180

 

;-------------------------------------------------------------------------------

; driver device name

;-------------------------------------------------------------------------------

camera_device = /dev/video0

 

;-------------------------------------------------------------------------------

; device id

; for two camera devices with one CSI

;-------------------------------------------------------------------------------

device_id = 0

 

used_preview_size = 1

key_support_preview_size = 2560x1920,1280x960

key_default_preview_size = 1280x960

 

used_picture_size = 1

key_support_picture_size = 2560x1920,1280x960

key_default_picture_size = 2560x1920

 

used_flash_mode = 0

key_support_flash_mode = on,off,auto,red-eye,torch

key_default_flash_mode = off

 

used_color_effect = 0

key_support_color_effect = none,mono,negative,sepia,aqua

key_default_color_effect = none

 

used_frame_rate = 1

key_support_frame_rate = 25

key_default_frame_rate = 25

 

used_focus_mode = 1

key_support_focus_mode = auto,infinity,macro,fixed

key_default_focus_mode = auto

 

;used_scene_mode = 0

;key_support_scene_mode = auto,action,portrait,landscape,night,night-portrait,theatre,beach,snow,sunset,steadyphoto,fireworks,sports,party,candlelight,barcode,hdr

;key_default_scene_mode = auto

 

used_scene_mode = 1

key_support_scene_mode = auto,hdr

key_default_scene_mode = auto

 

used_white_balance = 1

key_support_white_balance = auto,incandescent,fluorescent,warm-fluorescent,daylight,cloudy-daylight

key_default_white_balance = auto

 

used_exposure_compensation = 1

key_max_exposure_compensation = 14

key_min_exposure_compensation = -6

key_step_exposure_compensation = 1

key_default_exposure_compensation = 0

 

used_zoom = 1

key_zoom_supported = true

key_smooth_zoom_supported = false

key_zoom_ratios = 100,120,150,200,230,250,300

key_max_zoom = 30

key_default_zoom = 0

 

key_horizonal_view_angle = 64

key_vertical_view_angle = 39.4

 

 

 

 

3、

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-f1\hawkview\sensor_list_cfg.ini

#R58 sensor list configs

#

##################bus config######################

#

#used:                 0: not used, 1: used;

#csi_sel:               0: mipi, 1:  parallel ;

#device_sel:         0: dev0, 1: dev1;

#sensor_twi_id:   twi id, for example: sensor_twi_id = 0

#

##################power configs###################

#power_settings_enable: 0: enable the power settings in  sysconfig.fex;  1: enable the power settings in this file.

#

#iovdd                    The name of iovdd for this camera;

#iovdd_vol                The voltage value of iovdd in uV;

#

###############detect sensor configs##############

#

#detect_sensor_num:       The number of sensors need be detected in this bus.

#sensor_name[x]:          The sensor name in sensor driver.

#sensor_twi_addr[x]:      The i2c address of this sensor.

#sensor_type[x]:          The sensor type, 0: YUV, 1: RAW;

#sensor_stby_mode[x]:     Not used;

#sensor_hflip[x]          Horizontal flip;

#sensor_vflip[x]          Vertical  flip;

#act_name[x]              The VCM name in vcm driver, only RAW sensor need be configured;

#act_twi_addr[x]          The i2c address of this VCM;

#

##################################################

[rear_camera_cfg]

 

#bus configs

used                    = 1

csi_sel                 = 0

device_sel              = 0

sensor_twi_id           = 4

 

#power configs

power_settings_enable   = 0

iovdd                   = "iovdd-csi"

iovdd_vol               = 2800000

avdd                    = "avdd-csi"

avdd_vol                = 2800000

dvdd                    = "dvdd-csi"

dvdd_vol                = 1200000

afvdd                   = "afvcc-csi"

afvdd_vol               = 2800000

 

#detect sensor configs

detect_sensor_num       = 3

 

sensor_name0            = "s5k5e2ya"

sensor_twi_addr0        = 0x20

sensor_type0            = 1

sensor_stby_mode0       = 0

sensor_hflip0           = 0

sensor_vflip0           = 0

act_name0               =

act_twi_addr0           =

 

sensor_name1            = "ov4688"

sensor_twi_addr1        = 0x42

sensor_type1            = 1

sensor_stby_mode1       = 0

sensor_hflip1           = 0

sensor_vflip1           = 0

act_name1               = "dw9800_act"

act_twi_addr1           = 0x18

 

sensor_name2            = "ov2710_mipi_2"

sensor_twi_addr2        = 0x6c

sensor_type2            = 1

sensor_stby_mode2       = 0

sensor_hflip2           = 1

sensor_vflip2           = 1

act_name2               =

act_twi_addr2           = 

 

[front_camera_cfg]

 

#bus configs

used                    = 0

csi_sel                 = 1

device_sel              = 1

sensor_twi_id           = 4

 

#power configs

 

power_settings_enable   = 0

 

iovdd                   = "axp22_eldo2"

iovdd_vol               = 2800000

avdd                    = "axp15_aldo3"

avdd_vol                = 2800000

dvdd                    = "axp15_bldo3"

dvdd_vol                = 1500000

afvdd                   = ""

afvdd_vol               = 2800000

 

#detect sensor configs

detect_sensor_num       = 3

 

sensor_name0            = "ov5647"

sensor_twi_addr0        = 0x6c

sensor_type0            = 1

sensor_stby_mode0       = 0

sensor_hflip0           = 0

sensor_vflip0           = 0

act_name0               = "ad5820_act"

act_twi_addr0           = 0x18

 

sensor_name1            = "gc2035"

sensor_twi_addr1        = 0x78

sensor_type1            = 0

sensor_stby_mode1       = 0

sensor_hflip1           = 0

sensor_vflip1           = 0

act_name1               =

act_twi_addr1           =

 

sensor_name2            = "ov5640"

sensor_twi_addr2        = 0x78

sensor_type2            = 0

sensor_stby_mode2       = 0

sensor_hflip2           = 0

sensor_vflip2           = 0

act_name2               =

act_twi_addr2           =

 

 

 

 

4、

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-f1\BoardConfig.mk

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-f1\init.sun8i.rc

#csi module

    insmod /system/vendor/modules/videobuf-core.ko

    insmod /system/vendor/modules/videobuf-dma-contig.ko

    insmod /system/vendor/modules/cci.ko

    insmod /system/vendor/modules/actuator.ko

    insmod /system/vendor/modules/vfe_os.ko

    insmod /system/vendor/modules/vfe_subdev.ko

    #insmod /system/vendor/modules/dw9714_act.ko

    #insmod /system/vendor/modules/hi253.ko

    #insmod /system/vendor/modules/ov8858_4lane.ko

    insmod /system/vendor/modules/ov4688.ko

    insmod /system/vendor/modules/ov2710_mipi_2.ko

    insmod /system/vendor/modules/s5k5e2ya.ko

    insmod /system/vendor/modules/vfe_v4l2.ko

 

 

on boot

# use automatic detecttion insmod ctp & gsensor driver

insmod /system/vendor/modules/sw-device.ko

insmod /system/vendor/modules/ft5x_ts.ko

insmod /system/vendor/modules/gt9xxv24_ts.ko

# for zram

write /sys/block/zram0/disksize 268435456

exec /system/bin/mkswap /dev/block/zram0

exec /system/bin/swapon /dev/block/zram0

 

 

 

 

5、

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-f1\octopus_f1.mk

# camera config for isp

PRODUCT_COPY_FILES += \

    device/softwinner/octopus-common/hawkview/ov4688/isp_3a_param.ini:system/etc/hawkview/ov4688/isp_3a_param.ini \

    device/softwinner/octopus-common/hawkview/ov4688/isp_iso_param.ini:system/etc/hawkview/ov4688/isp_iso_param.ini \

    device/softwinner/octopus-common/hawkview/ov4688/isp_test_param.ini:system/etc/hawkview/ov4688/isp_test_param.ini \

    device/softwinner/octopus-common/hawkview/ov4688/isp_tuning_param.ini:system/etc/hawkview/ov4688/isp_tuning_param.ini \

    device/softwinner/octopus-common/hawkview/ov4688/bin/gamma_tbl.bin:system/etc/hawkview/ov4688/bin/gamma_tbl.bin \

    device/softwinner/octopus-common/hawkview/ov4688/bin/hdr_tbl.bin:system/etc/hawkview/ov4688/bin/hdr_tbl.bin \

    device/softwinner/octopus-common/hawkview/ov4688/bin/lsc_tbl.bin:system/etc/hawkview/ov4688/bin/lsc_tbl.bin \

    device/softwinner/octopus-common/hawkview/ov2710_mipi_2/isp_3a_param.ini:system/etc/hawkview/ov2710_mipi_2/isp_3a_param.ini \

    device/softwinner/octopus-common/hawkview/ov2710_mipi_2/isp_iso_param.ini:system/etc/hawkview/ov2710_mipi_2/isp_iso_param.ini \

    device/softwinner/octopus-common/hawkview/ov2710_mipi_2/isp_test_param.ini:system/etc/hawkview/ov2710_mipi_2/isp_test_param.ini \

    device/softwinner/octopus-common/hawkview/ov2710_mipi_2/isp_tuning_param.ini:system/etc/hawkview/ov2710_mipi_2/isp_tuning_param.ini \

    device/softwinner/octopus-common/hawkview/ov2710_mipi_2/bin/gamma_tbl.bin:system/etc/hawkview/ov2710_mipi_2/bin/gamma_tbl.bin \

    device/softwinner/octopus-common/hawkview/ov2710_mipi_2/bin/hdr_tbl.bin:system/etc/hawkview/ov2710_mipi_2/bin/hdr_tbl.bin \

    device/softwinner/octopus-common/hawkview/ov2710_mipi_2/bin/lsc_tbl.bin:system/etc/hawkview/ov2710_mipi_2/bin/lsc_tbl.bin \

    device/softwinner/octopus-common/hawkview/5M/s5k5e2yx/isp_3a_param.ini:system/etc/hawkview/s5k5e2ya/isp_3a_param.ini \

    device/softwinner/octopus-common/hawkview/5M/s5k5e2yx/isp_iso_param.ini:system/etc/hawkview/s5k5e2ya/isp_iso_param.ini \

    device/softwinner/octopus-common/hawkview/5M/s5k5e2yx/isp_test_param.ini:system/etc/hawkview/s5k5e2ya/isp_test_param.ini \

    device/softwinner/octopus-common/hawkview/5M/s5k5e2yx/isp_tuning_param.ini:system/etc/hawkview/s5k5e2ya/isp_tuning_param.ini \

    device/softwinner/octopus-common/hawkview/5M/s5k5e2yx/bin/gamma_tbl.bin:system/etc/hawkview/s5k5e2ya/bin/gamma_tbl.bin \

    device/softwinner/octopus-common/hawkview/5M/s5k5e2yx/bin/hdr_tbl.bin:system/etc/hawkview/s5k5e2ya/bin/hdr_tbl.bin \

    device/softwinner/octopus-common/hawkview/5M/s5k5e2yx/bin/lsc_tbl.bin:system/etc/hawkview/s5k5e2ya/bin/lsc_tbl.bin \

    device/softwinner/octopus-common/hawkview/skin_tone/yuv_map_data_0.bin:system/etc/hawkview/yuv_map_data_0.bin \

    device/softwinner/octopus-common/hawkview/skin_tone/yuv_map_data_1.bin:system/etc/hawkview/yuv_map_data_1.bin \

    device/softwinner/octopus-common/hawkview/skin_tone/yuv_map_data_2.bin:system/etc/hawkview/yuv_map_data_2.bin \

    device/softwinner/octopus-common/hawkview/skin_tone/yuv_map_data_3.bin:system/etc/hawkview/yuv_map_data_3.bin \

    device/softwinner/octopus-common/hawkview/skin_tone/yuv_map_data_4.bin:system/etc/hawkview/yuv_map_data_4.bin \

    device/softwinner/octopus-common/hawkview/skin_tone/yuv_map_data_5.bin:system/etc/hawkview/yuv_map_data_5.bin \

    device/softwinner/octopus-common/hawkview/skin_tone/yuv_map_data_6.bin:system/etc/hawkview/yuv_map_data_6.bin \

    device/softwinner/octopus-common/hawkview/skin_tone/yuv_map_data_7.bin:system/etc/hawkview/yuv_map_data_7.bin \

    device/softwinner/octopus-common/hawkview/skin_tone/yuv_map_data_8.bin:system/etc/hawkview/yuv_map_data_8.bin \

    device/softwinner/octopus-common/hawkview/skin_tone/yuv_map_data_9.bin:system/etc/hawkview/yuv_map_data_9.bin

    #device/softwinner/octopus-common/hawkview/8M/ov8858_4lane/isp_3a_param.ini:system/etc/hawkview/ov8858_4lane/isp_3a_param.ini \

    #device/softwinner/octopus-common/hawkview/8M/ov8858_4lane/isp_iso_param.ini:system/etc/hawkview/ov8858_4lane/isp_iso_param.ini \

    #device/softwinner/octopus-common/hawkview/8M/ov8858_4lane/isp_test_param.ini:system/etc/hawkview/ov8858_4lane/isp_test_param.ini \

    #device/softwinner/octopus-common/hawkview/8M/ov8858_4lane/isp_tuning_param.ini:system/etc/hawkview/ov8858_4lane/isp_tuning_param.ini \

    #device/softwinner/octopus-common/hawkview/8M/ov8858_4lane/bin/gamma_tbl.bin:system/etc/hawkview/ov8858_4lane/bin/gamma_tbl.bin \

    #device/softwinner/octopus-common/hawkview/8M/ov8858_4lane/bin/hdr_tbl.bin:system/etc/hawkview/ov8858_4lane/bin/hdr_tbl.bin \

    #device/softwinner/octopus-common/hawkview/8M/ov8858_4lane/bin/lsc_tbl.bin:system/etc/hawkview/ov8858_4lane/bin/lsc_tbl.bin

 

 

# dalvik vm parameters

PRODUCT_PROPERTY_OVERRIDES += \

    dalvik.vm.heapsize=512m \

    dalvik.vm.heapstartsize=8m \

    dalvik.vm.heapgrowthlimit=192m \

    dalvik.vm.heaptargetutilization=0.75 \

    dalvik.vm.heapminfree=2m \

    dalvik.vm.heapmaxfree=8m \

    ro.zygote.disable_gl_preload=true

修改为(不该就在你打开 快拍 的时候Android的UI重启了:Android在杀进程!):

# dalvik vm parameters

PRODUCT_PROPERTY_OVERRIDES += \

    dalvik.vm.heapsize=256m \

    dalvik.vm.heapstartsize=8m \

    dalvik.vm.heapgrowthlimit=48m \

    dalvik.vm.heaptargetutilization=0.75 \

    dalvik.vm.heapminfree=2m \

    dalvik.vm.heapmaxfree=8m \

    ro.zygote.disable_gl_preload=true

 

 

# usb

PRODUCT_PROPERTY_OVERRIDES += \

    persist.sys.usb.config=mtp \

    ro.udisk.lable=octopus \

    ro.adb.secure=1

修改为(打开ADB):

# usb

PRODUCT_PROPERTY_OVERRIDES += \

    persist.sys.usb.config=mtp,adb \

    ro.udisk.lable=octopus \

    ro.adb.secure=0

 

 

# ui

PRODUCT_PROPERTY_OVERRIDES += \

    ro.property.tabletUI=false \

    ro.sf.lcd_density=320 \

    ro.property.fontScale=1.0 \

    ro.sf.hwrotation=0

修改为(字体过大会出错 && 竖屏横用!):

# ui

PRODUCT_PROPERTY_OVERRIDES += \

    ro.property.tabletUI=false \

    ro.sf.lcd_density=160 \

    ro.property.fontScale=1.0 \

    ro.sf.hwrotation=270

 

 

 

 

6、(单摄像头可选修改:)

Y:\s5k5eya_r58_debug\android\device\softwinner\octopus-f1\ueventd.sun8i.rc

/dev/video0                 0770    media       media

#/dev/video1                 0770    media       media

 

 

 

 

7、为了调试方便,可选修改:

Y:\s5k5eya_r58_debug\android\frameworks\base\packages\SettingsProvider\res\values\defaults.xml

    <integer name="def_screen_off_timeout">60000</integer>

    <bool name="def_lockscreen_disabled">false</bool>

修改为:

    <integer name="def_screen_off_timeout">1800000</integer>

    <bool name="def_lockscreen_disabled">true</bool>

 

 

 

 

  1. 无电池弹出对话框:

警告

电量过低,需要关闭相机。

关闭

Y:\s5k5eya_r58_debug\android\frameworks\base\services\java\com\android\server\BatteryService.java

public final class BatteryService extends Binder {

    private static final String TAG = BatteryService.class.getSimpleName();

 

    // private static final boolean DEBUG = false;

    private static final boolean DEBUG = true;

 

    private static final int BATTERY_SCALE = 100;    // battery capacity is a percentage

 

……

 

    private void sendIntentLocked() {

        //  Pack up the values and broadcast them to everyone

        final Intent intent = new Intent(Intent.ACTION_BATTERY_CHANGED);

        intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY

                | Intent.FLAG_RECEIVER_REPLACE_PENDING);

 

        int icon = getIconLocked(mBatteryProps.batteryLevel);

 

        intent.putExtra(BatteryManager.EXTRA_STATUS, mBatteryProps.batteryStatus);

        intent.putExtra(BatteryManager.EXTRA_HEALTH, mBatteryProps.batteryHealth);

        intent.putExtra(BatteryManager.EXTRA_PRESENT, mBatteryProps.batteryPresent);

        //intent.putExtra(BatteryManager.EXTRA_LEVEL, mBatteryProps.batteryLevel);

        intent.putExtra(BatteryManager.EXTRA_LEVEL, 100);

        intent.putExtra(BatteryManager.EXTRA_SCALE, BATTERY_SCALE);

        intent.putExtra(BatteryManager.EXTRA_ICON_SMALL, icon);

        intent.putExtra(BatteryManager.EXTRA_PLUGGED, mPlugType);

        //intent.putExtra(BatteryManager.EXTRA_VOLTAGE, mBatteryProps.batteryVoltage);

        intent.putExtra(BatteryManager.EXTRA_VOLTAGE, 4200);

        intent.putExtra(BatteryManager.EXTRA_TEMPERATURE, mBatteryProps.batteryTemperature);

        intent.putExtra(BatteryManager.EXTRA_TECHNOLOGY, mBatteryProps.batteryTechnology);

        intent.putExtra(BatteryManager.EXTRA_INVALID_CHARGER, mInvalidCharger);

 

        if (DEBUG)

        {

            Slog.d(TAG, "2016/11/29 17:51 wenyuanbo **** Sending ACTION_BATTERY_CHANGED.  level:" + mBatteryProps.batteryLevel +

                    ", scale:" + BATTERY_SCALE + ", status:" + mBatteryProps.batteryStatus +

                    ", health:" + mBatteryProps.batteryHealth +  ", present:" + mBatteryProps.batteryPresent +

                    ", voltage: " + mBatteryProps.batteryVoltage +

                    ", temperature: " + mBatteryProps.batteryTemperature +

                    ", technology: " + mBatteryProps.batteryTechnology +

                    ", AC powered:" + mBatteryProps.chargerAcOnline + ", USB powered:" + mBatteryProps.chargerUsbOnline +

                    ", Wireless powered:" + mBatteryProps.chargerWirelessOnline +

                    ", icon:" + icon  + ", invalid charger:" + mInvalidCharger);

        }

 

        mHandler.post(new Runnable() {

            @Override

            public void run() {

                ActivityManagerNative.broadcastStickyIntent(intent, null, UserHandle.USER_ALL);

            }

        });

    }

}

 

 

 

 

9、

Y:\s5k5eya_r58_debug\lichee\linux-3.4\drivers\media\video\sunxi-vfe\device\Makefile

obj-m += ov4688.o

obj-m += ov2710_mipi.o

obj-m += ov2710_mipi_2.o

obj-m += s5k5e2ya.o

#obj-m += ov5640.o

#obj-m += ov2640.o

#obj-m += ov7736.o

#obj-m += s5k4ec.o

#obj-m += s5k4ec_mipi.o

#obj-m += gc2035.o

#obj-m += gt2005.o

#obj-m += gc0307.o

#obj-m += gc0308.o

#obj-m += gc0328.o

#obj-m += gc0328c.o

#obj-m += gc0329.o

#obj-m += gc0311.o

#obj-m += hi253.o

#obj-m += sp2518.o

#obj-m += sp2519.o

#obj-m += sp0718.o

#obj-m += sp0838.o

#obj-m += ov16825.o

#obj-m += ov5650.o

#obj-m += ov5647.o

#obj-m += ov5647_mipi.o

#obj-m += t8et5.o

#obj-m += s5k4e1.o

#obj-m += s5k4e1_mipi.o

#obj-m += sp2518.o

#obj-m += sp0718.o

#obj-m += gc5004.o

#obj-m += gc5004_mipi.o

#obj-m += ov5648.o

#obj-m += ar0330.o

#obj-m += ov5648.o

#obj-m += sp5408.o

#obj-m += ov12830.o

#obj-m += ov8825.o

#obj-m += ov8850.o

#obj-m += gc2155.o

#obj-m += ov8858.o

#obj-m += ov13850.o

#obj-m += imx214.o

#obj-m += ov8858_4lane.o

#obj-m += sp5409.o

#obj-m += s5k5e2yx.o

#obj-m                  += ov2710_mipi.o

#obj-m                  += siv121d.o

 

 

(从其它平台抠过来的驱动)

Y:\s5k5eya_r58_debug\lichee\linux-3.4\drivers\media\video\sunxi-vfe\device\s5k5e2ya.c

 

 

 

 

10、

Y:\s5k5eya_r58_debug\lichee\linux-3.4\drivers\media\video\sunxi-vfe\utility\sensor_info.c

Struct sensor_item sensor_list_t[]=

{

// name i2c_addr sensor type sensor size sensor max pclk

{ "s5k5e2ya" , 0x20, SENSOR_RAW , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "ov2640" , 0x60, SENSOR_YUV , PIXEL_NUM_2M ,CORE_CLK_RATE_FOR_2M},

{ "ov5640" , 0x78, SENSOR_YUV , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "ov5647" , 0x6c, SENSOR_RAW , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "ov5647_mipi" , 0x6c, SENSOR_RAW , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "ov5650" , 0x50, SENSOR_RAW , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "ov5648" , 0x6c, SENSOR_RAW , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "ov8825" , 0x6c, SENSOR_RAW , PIXEL_NUM_8M ,CORE_CLK_RATE_FOR_8M},

{ "ov8850" , 0x20, SENSOR_RAW , PIXEL_NUM_8M ,CORE_CLK_RATE_FOR_8M},

{ "ov12830" , 0x6c, SENSOR_RAW , PIXEL_NUM_12M ,CORE_CLK_RATE_FOR_16M},

{ "ov16825" , 0x6c, SENSOR_RAW , PIXEL_NUM_16M ,CORE_CLK_RATE_FOR_16M},

{ "gc0329" , 0x62, SENSOR_YUV , PIXEL_NUM_0_3M ,CORE_CLK_RATE_FOR_2M},

{ "gc0309" , 0x42, SENSOR_YUV , PIXEL_NUM_0_3M ,CORE_CLK_RATE_FOR_2M},

{ "gc0307" , 0x42, SENSOR_YUV , PIXEL_NUM_0_3M ,CORE_CLK_RATE_FOR_2M},

{ "gc0308" , 0x42, SENSOR_YUV , PIXEL_NUM_0_3M ,CORE_CLK_RATE_FOR_2M},

{ "gc2035" , 0x78, SENSOR_YUV , PIXEL_NUM_2M ,CORE_CLK_RATE_FOR_2M},

{ "gt2005" , 0x78, SENSOR_YUV , PIXEL_NUM_2M ,CORE_CLK_RATE_FOR_2M},

{ "gc2015" , 0x60, SENSOR_YUV , PIXEL_NUM_2M ,CORE_CLK_RATE_FOR_2M},

{ "gc2235" , 0x78, SENSOR_RAW , PIXEL_NUM_2M ,CORE_CLK_RATE_FOR_2M},

{ "sp0838" , 0x30, SENSOR_YUV , PIXEL_NUM_0_3M ,CORE_CLK_RATE_FOR_2M},

{ "sp0718" , 0x6c, SENSOR_YUV , PIXEL_NUM_0_3M ,CORE_CLK_RATE_FOR_2M},

{ "sp2518" , 0x6c, SENSOR_YUV , PIXEL_NUM_2M ,CORE_CLK_RATE_FOR_2M},

{ "hi253" , 0x40, SENSOR_YUV , PIXEL_NUM_2M ,CORE_CLK_RATE_FOR_2M},

{ "hi257" , 0x40, SENSOR_YUV , PIXEL_NUM_2M ,CORE_CLK_RATE_FOR_2M},

{ "s5k4ec" , 0x5a, SENSOR_YUV , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "s5k4ec_mipi" , 0x5a, SENSOR_YUV , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "s5k4e1" , 0x20, SENSOR_RAW , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "s5k4e1_mipi" , 0x20, SENSOR_RAW , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "t4k05" , 0x6c, SENSOR_RAW , PIXEL_NUM_8M ,CORE_CLK_RATE_FOR_8M},

{ "t8et5" , 0x78, SENSOR_RAW , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "ar0330" , 0x20, SENSOR_RAW , PIXEL_NUM_3M ,CORE_CLK_RATE_FOR_3M},

{ "bf3a03" , 0xDC, SENSOR_YUV , PIXEL_NUM_0_3M ,CORE_CLK_RATE_FOR_2M},

{ "gc0311" , 0x66, SENSOR_YUV , PIXEL_NUM_0_3M ,CORE_CLK_RATE_FOR_2M},

{ "gc0311" , 0x66, SENSOR_YUV , PIXEL_NUM_0_3M ,CORE_CLK_RATE_FOR_2M},

{ "gc5004" , 0x6c, SENSOR_RAW , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "gc5004_mipi" , 0x6c, SENSOR_RAW , PIXEL_NUM_5M ,CORE_CLK_RATE_FOR_5M},

{ "nt99252" , 0x6c, SENSOR_YUV , PIXEL_NUM_2M ,CORE_CLK_RATE_FOR_2M},

{ "ov7736" , 0x42, SENSOR_YUV , PIXEL_NUM_0_3M ,CORE_CLK_RATE_FOR_2M},

{ "gc2155" , 0x78, SENSOR_YUV , PIXEL_NUM_2M ,CORE_CLK_RATE_FOR_2M},

};

 

 

 

 

11、

Y:\s5k5eya_r58_debug\lichee\tools\pack\chips\sun8iw6p1\configs\f1\sys_config.fex

;----------------------------------------------------------------------------------

;

;  各路电压输出语法说明:

;

;  电压名称  = 100XXXX  : 表示把该路电压设置为XXXX指定的电压值,同时打开输出开关

;  电压名称  = 000XXXX  : 表示把该路电压设置为XXXX指定的电压值,同时关闭输出开关,当有需要时由内核驱动打开

;  电压名称  = 0        : 表示关闭该路电压输出开关,不修改原有的值

;

;----------------------------------------------------------------------------------

[power_sply]

dcdc1_vol                  = 1003000

dcdc2_vol                  = 1000900

dcdc3_vol                  = 1000900

dcdc4_vol                  = 1000900

;dcdc5_vol                  = 1001200

dcdc6_vol                  = 1000900

aldo1_vol                  = 1800

aldo2_vol                  = 1001800

aldo3_vol                  = 1003000

eldo2_vol                  = 1800

eldo3_vol                  = 1001800

dldo2_vol                  = 3300

dldo4_vol                  = 2800

fldo2_vol                  = 1000900

dldo1_vol                  = 2800

gpio0_vol                  = 1003300

gpio1_vol                  = 1003300

 

 

;--------------------------------------------------------------------------------

;vip (video input port) configuration

;vip_used: 0:disable 1:enable

;vip_mode: 0:sample one interface to one buffer 1:sample two interface to one buffer

;vip_dev_qty: The quantity of devices linked to capture bus

;

;vip_define_sensor_list: If you want use sensor detect function, please set vip_define_sensor_list = 1, and

;                                    verify that file /system/etc/hawkview/sensor_list_cfg.ini is properly configured!

;

;vip_dev(x)_pos: sensor position, "rear" or "front", if vip_define_sensor_list = 1,

;vip_dev(x)_pos must be configured!

;

;vip_dev(x)_isp_used 0:not use isp 1:use isp

;vip_dev(x)_fmt: 0:yuv 1:bayer raw rgb

;vip_dev(x)_stby_mode: 0:not shut down power at standby 1:shut down power at standby

;vip_dev(x)_vflip: flip in vertical direction 0:disable 1:enable

;vip_dev(x)_hflip: flip in horizontal direction 0:disable 1:enable

;vip_dev(x)_iovdd: camera module io power handle string, pmu power supply

;vip_dev(x)_iovdd_vol: camera module io power voltage, pmu power supply

;vip_dev(x)_avdd: camera module analog power handle string, pmu power supply

;vip_dev(x)_avdd_vol: camera module analog power voltage, pmu power supply

;vip_dev(x)_dvdd: camera module core power handle string, pmu power supply

;vip_dev(x)_dvdd_vol: camera module core power voltage, pmu power supply

;vip_dev(x)_afvdd: camera module vcm power handle string, pmu power supply

;vip_dev(x)_afvdd_vol: camera module vcm power voltage, pmu power supply

;x indicates the index of the devices which are linked to the same capture bus

;fill voltage in uV, e.g. iovdd = 2.8V, vip_devx_iovdd_vol = 2800000

;fill handle string as below:

;axp22_eldo3

;axp22_dldo4

;axp22_eldo2

;fill handle string "" when not using any pmu power supply

;--------------------------------------------------------------------------------

 

[csi0]

 

vip_used                 = 1

vip_mode                 = 0

vip_dev_qty              = 1

vip_define_sensor_list     = 1

 

vip_csi_pck              = port:PE00<2><default><default><default>

vip_csi_mck              = port:PE01<2><default><default><default>

vip_csi_hsync            = port:PE02<2><default><default><default>

vip_csi_vsync            = port:PE03<2><default><default><default>

vip_csi_d0               =

vip_csi_d1               =

vip_csi_d2               = port:PE06<2><default><default><default>

vip_csi_d3               = port:PE07<2><default><default><default>

vip_csi_d4               = port:PE08<2><default><default><default>

vip_csi_d5               = port:PE09<2><default><default><default>

vip_csi_d6               = port:PE10<2><default><default><default>

vip_csi_d7               = port:PE11<2><default><default><default>

vip_csi_d8               = port:PE12<2><default><default><default>

vip_csi_d9               = port:PE13<2><default><default><default>

 

vip_csi_sck               = port:PE14<2><default><default><default>

vip_csi_sda               = port:PE15<2><default><default><default>

 

 

vip_dev0_mname           = "s5k5e2ya"

vip_dev0_pos             = "rear"

vip_dev0_lane            = 2

vip_dev0_twi_id          = 0

vip_dev0_twi_addr        = 0x20

vip_dev0_isp_used        = 1

vip_dev0_fmt             = 1

vip_dev0_stby_mode       = 1

vip_dev0_vflip           = 0

vip_dev0_hflip           = 0

vip_dev0_iovdd           = "iovdd-csi"

vip_dev0_iovdd_vol       = 2800000

vip_dev0_avdd            = "avdd-csi"

vip_dev0_avdd_vol        = 2800000

vip_dev0_dvdd            = "dvdd-csi"

vip_dev0_dvdd_vol        = 1200000

vip_dev0_afvdd           =

vip_dev0_afvdd_vol       =

vip_dev0_power_en        =

vip_dev0_reset           = port:PE18<1><default><default><default>

vip_dev0_pwdn            = port:PE19<1><default><default><default>

vip_dev0_flash_en        =

vip_dev0_flash_mode      =

vip_dev0_af_pwdn         =

 

vip_dev0_act_used        = 0

vip_dev0_act_name        =

vip_dev0_act_slave       =

 

 

vip_dev1_mname           = ""

vip_dev1_pos             = "front"

vip_dev1_lane            = 1

vip_dev1_twi_id          = 0

vip_dev1_twi_addr        =

vip_dev1_isp_used        = 0

vip_dev1_fmt             = 1

vip_dev1_stby_mode       = 0

vip_dev1_vflip           = 0

vip_dev1_hflip           = 0

vip_dev1_iovdd           = ""

vip_dev1_iovdd_vol       = 2800000

vip_dev1_avdd            = ""

vip_dev1_avdd_vol        = 2800000

vip_dev1_dvdd            = ""

vip_dev1_dvdd_vol        = 1500000

vip_dev1_afvdd           = ""

vip_dev1_afvdd_vol       = 2800000

vip_dev1_power_en        =

vip_dev1_reset           = port:PE4<1><default><default><default>

vip_dev1_pwdn            = port:PE5<1><default><default><default>

vip_dev1_flash_en        =

vip_dev1_flash_mode      =

vip_dev1_af_pwdn         =

 

 

;--------------------------------------------------------------------------------------------------------

;pmu1 is pmu81x;regulator tree

;axp81x_dcdc1:3.0V

;axp81x_dcdc2:0.9V

;axp81x_dcdc3:0.9V

;axp81x_dcdc4:0.9V

;axp81x_dcdc5:1.2V

;axp81x_dcdc6:0.9V

;axp81x_dcdc7:

;axp81x_rtc:  1.8V

;axp81x_aldo1:1.8V

;axp81x_aldo2:1.8V

;axp81x_aldo3:3.0V

;axp81x_dldo1:2.8V

;axp81x_dldo2:3.0V

;axp81x_dldo3:2.8V

;axp81x_dldo4:2.8V

;axp81x_eldo1:1.2V

;axp81x_eldo2:1.8V

;axp81x_eldo3:1.8V

;axp81x_fldo1:1.2V

;axp81x_fldo2:0.9V

;axp81x_gpio0ldo:3.0V

;axp81x_gpio1ldo:3.0V

;axp81x_dc1sw:

;--------------------------------------------------------------------------------------------------------

[pmu1_regu]

regulator_count = 23

regulator1      = "axp81x_dcdc1 none vcc-emmc vcc-usb0-33 vcc-io vcc-io1 vcc-sensor"

regulator2      = "axp81x_dcdc2 none vdd-cpua"

regulator3      = "axp81x_dcdc3 none vdd-cpub"

regulator4      = "axp81x_dcdc4 none vdd-gpu"

regulator5      = "axp81x_dcdc5 none vcc-dram"

regulator6      = "axp81x_dcdc6 none vdd-sys vdd-usb0-09 vdd-hdmi-09"

regulator7      = "axp81x_dcdc7 none"

regulator8      = "axp81x_rtc none"

regulator9      = "axp81x_aldo1 none vcc-dsi-18 vcc-csi2-18 vcc-lvds-18 vcc-efuse-18 vcc-hdmi-18"

regulator10     = "axp81x_aldo2 none vdd-drampll vdd-lpddr-18 vcc-pll vcc-adc vcc-cpvdd vcc-ldoin"

regulator11     = "axp81x_aldo3 none vcc-avcc vcc-pl"

regulator12     = "axp81x_dldo1 none  vcc-io2"

regulator13     = "axp81x_dldo2 none vcc-lcd-0 vcc-pd"

regulator14     = "axp81x_dldo3 none iovdd-csi"

regulator15     = "axp81x_dldo4 none avdd-csi"

regulator16     = "axp81x_eldo1 none dvdd-csi"

regulator17     = "axp81x_eldo2 none "

regulator18     = "axp81x_eldo3 none vcc-dmic"

regulator19     = "axp81x_fldo1 none vcc-hsic-12"

regulator20     = "axp81x_fldo2 none vdd-cpus"

regulator21     = "axp81x_gpio0ldo none vcc-ctp"

regulator22     = "axp81x_gpio1ldo none vcc-card vcc-wifi-io"

regulator23     = "axp81x_dc1sw 1"

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
R58点亮ov5640.txt 开发板:深圳市索智科技有限公司SC3817R开发板,全志R16(CPU:Quad-Core Cortex-A7 CPU) http://www.allwinnertech.com/clq/r/R16.html 全志官网R16的简介 android4.4.2/linux3.4.39 2016/7/18 16:38 1、配置ov5640在android层配置的分辨率为vga(预览/拍照/录像) 注意:系统自带的快拍APP就在这里查找分辨率参数发送到camera的HAL层。 这里得分辨率设置为:640x480 驱动里面搜索可以设置为:2592x1936, 2048x1536, 1600x1200, 1280x960, 1280x960, 1024x768, 1920x1080 ,1280x720, 800x600, 640x480 R:\wyb\wen_ov5640_r16\android\device\softwinner\astar-evb20\configs\camera.cfg ;------------------------------------------------------------------------------- ; 用于camera的配置 ; ; 采用格式: ; key = key_value ; 注意: 每个key需要顶格写; ; key_value紧跟着key后面的等号后面, 位于同一行中; ; key_value限制大小为256字节以内; ; ;------------------------------------------------------------------------------- ;------------------------------------------------------------------------------- ; exif information of "make" and "model" ;------------------------------------------------------------------------------- key_camera_exif_make = MAKE_A31S key_camera_exif_model = MODEL_A31ST ;------------------------------------------------------------------------------- ; 1 for single camera, 2 for double camera ;------------------------------------------------------------------------------- number_of_camera = 1 ;------------------------------------------------------------------------------- ; CAMERA_FACING_BACK ; gc0307 ov2640 ;------------------------------------------------------------------------------- camera_id = 0 ;------------------------------------------------------------------------------- ; 1 for CAMERA_FACING_FRONT ; 0 for CAMERA_FACING_BACK ;------------------------------------------------------------------------------- camera_facing = 0 ;------------------------------------------------------------------------------- ; 1 for camera without isp(using built-in isp of Axx) ; 0 for camera with isp ;------------------------------------------------------------------------------- use_builtin_isp = 0 ;------------------------------------------------------------------------------- ; camera orientation (0, 90, 180, 270) ;------------------------------------------------------------------------------- camera_orientation = 90 ;------------------------------------------------------------------------------- ; driver device name ;------------------------------------------------------------------------------- camera_device = /dev/video0 ;------------------------------------------------------------------------------- ; device id ; for two camera devices with one CSI ;------------------------------------------------------------------------------- device_id = 0 used_preview_size = 1 key_support_preview_size = 640x480 key_default_preview_size = 640x480 used_picture_size = 1 key_support_picture_size = 640x480 key_default_picture_size = 640x480 used_flash_mode = 0 key_support_flash_mode = on,off,auto key_default_flash_mode = on used_color_effect=0 key_support_color_effect = none,mono,negative,sepia,aqua key_default_color_effect = none used_frame_rate = 1 key_support_frame_rate = 10 key_default_frame_rate = 10 used_focus_mode = 0 key_support_focus_mode = auto,infinity,macro,fixed,continuous-video,continuous-picture key_default_focus_mode = auto used_scene_mode = 0 key_support_scene_mode = auto,portrait,landscape,night,night-portrait,theatre,beach,snow,sunset,steadyphoto,fireworks,sports,party,candlelight,barcode key_default_scene_mode = auto used_white_balance = 0 key_support_white_balance = auto,incandescent,fluorescent,warm-fluorescent,daylight,cloudy-daylight key_default_white_balance = auto used_exposure_compensation = 1 key_max_exposure_compensation = 3 key_min_exposure_compensation = -3 key_step_exposure_compensation = 1 key_default_exposure_compensation = 0 2、没有/dev/video1,只有/dev/video0 R:\wyb\wen_ov5640_r16\android\device\softwinner\astar-evb20\ueventd.sun8i.rc /dev/video0 0666 media media #/dev/video1 0666 media media 3、在init.rc(init.sun8i.rc)中加载ov5640.ko这个驱动模块。 R:\wyb\wen_ov5640_r16\android\device\softwinner\astar-evb20\init.sun8i.rc #csi module insmod /system/vendor/modules/videobuf-core.ko insmod /system/vendor/modules/videobuf-dma-contig.ko insmod /system/vendor/modules/cam_detect.ko #insmod /system/vendor/modules/actuator.ko #insmod /system/vendor/modules/ad5820_act.ko insmod /system/vendor/modules/cci.ko insmod /system/vendor/modules/vfe_os.ko insmod /system/vendor/modules/vfe_subdev.ko #insmod /system/vendor/modules/gc0307.ko #insmod /system/vendor/modules/ov2035.ko #insmod /system/vendor/modules/ov2640.ko insmod /system/vendor/modules/ov5640.ko insmod /system/vendor/modules/vfe_v4l2.ko 启动之后实际加载的摄像头的驱动模块: shell@astar-evb20:/ $ lsmod gt82x 9849 0 - Live 0x00000000 bma250 7848 0 - Live 0x00000000 sunxi_schw 12559 0 - Live 0x00000000 (O) rtl8150 9023 0 - Live 0x00000000 sunxi_keyboard 3021 0 - Live 0x00000000 sw_device 13916 0 - Live 0x00000000 vfe_v4l2 445444 1 - Live 0x00000000 ov5640 27129 0 - Live 0x00000000 vfe_subdev 4523 2 vfe_v4l2,ov5640, Live 0x00000000 vfe_os 3951 2 vfe_v4l2,vfe_subdev, Live 0x00000000 cci 21775 2 vfe_v4l2,ov5640, Live 0x00000000 videobuf_dma_contig 5567 1 vfe_v4l2, Live 0x00000000 videobuf_core 16520 2 vfe_v4l2,videobuf_dma_contig, Live 0x00000000 bcm_btlpm 7442 0 - Live 0x00000000 bcmdhd 629907 0 - Live 0x00000000 mali 209314 20 - Live 0x00000000 (O) lcd 41263 0 - Live 0x00000000 disp 992816 8 mali,lcd, Live 0x00000000 nand 282774 0 - Live 0x00000000 (O) shell@astar-evb20:/ $ 4、驱动程序:ov2640.c及其V4L2的适配层。 配置ov2640.c的编译选项,只需要修改device目录中的Makefile打开ov5640(默认打开)即可: R:\wyb\wen_ov5640_r16\lichee\linux-3.4\drivers\media\video\sunxi-vfe\device\ov5640.c R:\wyb\wen_ov5640_r16\lichee\linux-3.4\drivers\media\video\sunxi-vfe\device\Makefile obj-m += ov2640.o R:\wyb\wen_ov5640_r16\lichee\linux-3.4\drivers\media\video\sunxi-vfe\Kconfig R:\wyb\wen_ov5640_r16\lichee\linux-3.4\drivers\media\video\sunxi-vfe\Makefile 5、 R:\wyb\wen_ov5640_r16\lichee\tools\pack\chips\sun8iw5p1\configs\evb-20\sys_config.fex ;-------------------------------------------------------------------------------- ;vip (video input port) configuration ;vip_used: 0:disable 1:enable ;vip_mode: 0:sample one interface to one buffer 1:sample two interface to one buffer ;vip_dev_qty: The quantity of devices linked to capture bus ; ;vip_define_sensor_list: If you want use sensor detect function, please set vip_define_sensor_list = 1, and ; verify that file /system/etc/hawkview/sensor_list_cfg.ini is properly configured! ; ;vip_dev(x)_pos: sensor position, "rear" or "front", if vip_define_sensor_list = 1,vip_dev(x)_pos must be configured! ; ;vip_dev(x)_isp_used 0:not use isp 1:use isp ;vip_dev(x)_fmt: 0:yuv 1:bayer raw rgb ;vip_dev(x)_stby_mode: 0:not shut down power at standby 1:shut down power at standby ;vip_dev(x)_vflip: flip in vertical direction 0:disable 1:enable ;vip_dev(x)_hflip: flip in horizontal direction 0:disable 1:enable ;vip_dev(x)_iovdd: camera module io power handle string, pmu power supply ;vip_dev(x)_iovdd_vol: camera module io power voltage, pmu power supply ;vip_dev(x)_avdd: camera module analog power handle string, pmu power supply ;vip_dev(x)_avdd_vol: camera module analog power voltage, pmu power supply ;vip_dev(x)_dvdd: camera module core power handle string, pmu power supply ;vip_dev(x)_dvdd_vol: camera module core power voltage, pmu power supply ;vip_dev(x)_afvdd: camera module vcm power handle string, pmu power supply ;vip_dev(x)_afvdd_vol: camera module vcm power voltage, pmu power supply ;x indicates the index of the devices which are linked to the same capture bus ;fill voltage in uV, e.g. iovdd = 2.8V, vip_devx_iovdd_vol = 2800000 ;fill handle string as below: ;axp22_eldo3 ;axp22_dldo4 ;axp22_eldo2 ;fill handle string "" when not using any pmu power supply ;-------------------------------------------------------------------------------- [csi0] vip_used = 1 vip_mode = 0 vip_dev_qty = 1 vip_define_sensor_list = 0 vip_csi_pck = port:PE00 vip_csi_mck = port:PE01 vip_csi_hsync = port:PE02 vip_csi_vsync = port:PE03 vip_csi_d0 = port:PE04 vip_csi_d1 = port:PE05 vip_csi_d2 = port:PE06 vip_csi_d3 = port:PE07 vip_csi_d4 = port:PE08 vip_csi_d5 = port:PE09 vip_csi_d6 = port:PE10 vip_csi_d7 = port:PE11 vip_csi_sck = port:PE12 vip_csi_sda = port:PE13 vip_dev0_mname = "ov5640" vip_dev0_pos = "rear" vip_dev0_lane = 1 vip_dev0_twi_id = 2 vip_dev0_twi_addr = 0x78 vip_dev0_isp_used = 0 vip_dev0_fmt = 0 vip_dev0_stby_mode = 0 vip_dev0_vflip = 0 vip_dev0_hflip = 0 vip_dev0_iovdd = "axp22_dldo3" vip_dev0_iovdd_vol = 2800000 vip_dev0_avdd = "" vip_dev0_avdd_vol = 2800000 vip_dev0_dvdd = "" vip_dev0_dvdd_vol = 1800000 vip_dev0_afvdd = "" vip_dev0_afvdd_vol = 2800000 vip_dev0_power_en = vip_dev0_reset = port:PE14 vip_dev0_pwdn = port:PE15 vip_dev0_flash_en = vip_dev0_flash_mode = vip_dev0_af_pwdn = 6、开发板上摄像头的I2C挂载在TWI2上面了,逻辑是需要打开的(但是不打开也能够用,很奇怪!): ;---------------------------------------------------------------------------------- ;i2c configuration ; twi_used = twix enable ;---------------------------------------------------------------------------------- [twi0] twi_used = 1 twi_scl = port:PH02 twi_sda = port:PH03 [twi1] twi_used = 1 twi_scl = port:PH04 twi_sda = port:PH05 [twi2] twi_used = 0 twi_scl = port:PE12 twi_sda = port:PE13 直接配置摄像头的I2C了: vip_csi_sck = port:PE12 vip_csi_sda = port:PE13 不过奇怪的是,摄像头并没有向其它平台那样生成这个设备节点: /sys/class/i2c-adapter/i2c-2/2-0030 shell@octopus-f1:/ $ shell@octopus-f1:/ $ cd /sys/class/i2c-adapter/i2c-2/ shell@octopus-f1:/sys/class/i2c-adapter/i2c-2 $ shell@octopus-f1:/sys/class/i2c-adapter/i2c-2 $ ll drwxr-xr-x root root 1970-01-02 08:06 2-003b --w------- root root 4096 1970-01-02 08:06 delete_device lrwxrwxrwx root root 1970-01-02 08:06 device -> ../../twi.2 -r--r--r-- root root 4096 1970-01-02 08:06 name --w------- root root 4096 1970-01-02 08:06 new_device drwxr-xr-x root root 1970-01-02 08:06 power lrwxrwxrwx root root 1970-01-02 08:06 subsystem -> ../../../../bus/i2c -rw-r--r-- root root 4096 1970-01-02 08:06 uevent shell@octopus-f1:/sys/class/i2c-adapter/i2c-2 $ 可能是ov2640的驱动程序不完整,没有过i2c_detect来注册2-003c这个节点。 直接在驱动程序中读取I2C,还是对的。device ID = 0x5640。 7、摄像头使用的是客户提供: 设置为VGA分辨率是: vsync=7.5hz href=15khz xclk=24mhz pclk=85mhz

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值