Environment: (H2+) + linux-sunxi + ov5640
It can be registered by kernel ,but I can't capture any picture from camera .
Here is my kernel demsg:
=====================================================================================
# dmesg |grep VFE
[ 1.720292] [VFE]cci probe start cci_sel = 0!
[ 1.720328] [VFE]cci probe end cci_sel = 0!
[ 1.720359] [VFE]cci_init end
[ 1.720372] [VFE]Welcome to Video Front End driver
[ 1.720514] [VFE_DEBUG]vfe_probe
[ 1.720638] [VFE]pdev->id = 0
[ 1.720644] [VFE]dev->mipi_sel = 0
[ 1.720650] [VFE]dev->vip_sel = 0
[ 1.720655] [VFE]dev->isp_sel = 0
[ 1.720662] [VFE_DEBUG]fetch sys_config1
[ 1.720670] [VFE_DEBUG]dev->ccm_cfg[0] = d70a0508
[ 1.720678] [VFE_DEBUG]dev->ccm_cfg[1] = d70a0814
[ 1.720690] [VFE_DEBUG]vip0 vip_dev_qty=1
[ 1.720698] [VFE_DEBUG]vip0 vip_define_sensor_list=0
[ 1.720759] [VFE_DEBUG]fetch vip_dev0_flash_en from sys_config failed
[ 1.720773] [VFE_DEBUG]fetch vip_dev0_flash_mode from sys_config failed
[ 1.720785] [VFE_DEBUG]fetch vip_dev0_af_pwdn from sys_config failed
[ 1.720803] [VFE_DEBUG]dev->ccm_cfg[0]->ccm = ov5640
[ 1.720812] [VFE_DEBUG]dev->ccm_cfg[0]->twi_id = 2
[ 1.720821] [VFE_DEBUG]dev->ccm_cfg[0]->i2c_addr = 78
[ 1.720828] [VFE_DEBUG]dev->ccm_cfg[0]->is_isp_used = 1
[ 1.720835] [VFE_DEBUG]dev->ccm_cfg[0]->is_bayer_raw = 1
[ 1.720843] [VFE_DEBUG]dev->ccm_cfg[0]->vflip = 0
[ 1.720850] [VFE_DEBUG]dev->ccm_cfg[0]->hflip = 0
[ 1.720858] [VFE_DEBUG]dev->ccm_cfg[0]->iovdd_str =
[ 1.720865] [VFE_DEBUG]dev->ccm_cfg[0]->avdd_str =
[ 1.720872] [VFE_DEBUG]dev->ccm_cfg[0]->dvdd_str =
[ 1.720879] [VFE_DEBUG]dev->ccm_cfg[0]->afvdd_str =
[ 1.720887] [VFE_DEBUG]dev->ccm_cfg[0]->act_used = 1
[ 1.720894] [VFE_DEBUG]dev->ccm_cfg[0]->act_name = ad5820_act
[ 1.720902] [VFE_DEBUG]dev->ccm_cfg[0]->act_slave = 0x18
[ 1.726942] [VFE_WARN]vfe vpu clock is null
[ 1.726950] [VFE_DEBUG]get io resource num = 3
[ 1.726958] [VFE_DEBUG]get resource, name = csi
[ 1.726970] [VFE_DEBUG]dev->regs.csi_regs = f1cb0000
[ 1.726977] [VFE_DEBUG]get resource, name = isp
[ 1.726986] [VFE_DEBUG]dev->regs.isp_regs = f1cb8000
[ 1.915506] [VFE_DEBUG]isp load paddr = 5890a000
[ 2.011208] [VFE_DEBUG]isp load dma_addr = 1890a000
[ 2.041942] [VFE_DEBUG]isp load addr = d890a000
[ 2.046967] [VFE_DEBUG]isp saved paddr = 5890b000
[ 2.052205] [VFE_DEBUG]isp saved dma_addr = 1890b000
[ 2.057710] [VFE_DEBUG]isp saved addr = d890b000
[ 2.062843] [VFE_DEBUG]get irq resource
[ 2.067119] [VFE_DEBUG]clock resource
[ 2.071223] [VFE_DEBUG]vfe core clk = 600000000
[ 2.076259] [VFE_DEBUG]get pin resource
[ 2.087109] [VFE]..........................vfe clk open!.......................
[ 2.095253] [VFE_DEBUG]vfe dphy clock is null
[ 2.100104] [VFE_DEBUG]vfe mipi csi clock is null
[ 2.109647] [VFE]vfe_init end
[ 2.112973] [VFE]probe_work_handle start!
[ 2.117425] [VFE_DEBUG]v4l2_device_register
[ 2.130426] [VFE_DEBUG]v4l2 subdev register
[ 2.188045] [VFE]v4l2 subdev register input_num = 0
[ 2.193475] [VFE]vfe sensor detect start! input_num = 0
[ 2.199280] [VFE_WARN]Camer detect "YUV" fmt is different from sys_config!
[ 2.206924] [VFE_WARN]Apply detect fmt = 0 replace sys_config fmt = 1!
[ 2.214300] [VFE]Find sensor name is "ov5640", i2c address is 78, type is "YUV" !
[ 2.231983] [VFE]Sub device register "ov5640" i2c_addr = 0x78 start!
[ 2.307854] [VFE_DEBUG]ccm_cfg pt = d70a0508
[ 2.312611] [VFE_DEBUG]ccm_cfg->sd = (null)
[ 2.317449] [VFE_DEBUG]module vflip = 0 hflip = 0
[ 2.322678] [VFE_DEBUG]module vflip_thumb = 0 hflip_thumb = 0
[ 2.329052] [VFE_DEBUG]module is_isp_used = 1 is_bayer_raw= 0
[ 2.335444] [VFE_ERR]Error registering v4l2 subdevice No such device!
[ 2.342605] [VFE_WARN]vfe sensor register check error at input_num = 0
[ 2.349853] [VFE_DEBUG]dev->ccm_cfg[0] = d70a0508
[ 2.355092] [VFE_DEBUG]dev->ccm_cfg[0]->sd = (null)
[ 2.360710] [VFE_DEBUG]dev->ccm_cfg[0]->power.iovdd = (null)
[ 2.367186] [VFE_DEBUG]dev->ccm_cfg[0]->power.avdd = (null)
[ 2.373575] [VFE_DEBUG]dev->ccm_cfg[0]->power.dvdd = (null)
[ 2.379949] [VFE_DEBUG]dev->ccm_cfg[0]->power.afvdd = (null)
[ 2.386813] [VFE]V4L2 device registered as video2
[ 2.392083] [VFE]..........................vfe clk close!.......................
[ 2.400332] [VFE_DEBUG]vfe dphy clock is null
[ 2.405166] [VFE_DEBUG]vfe mipi csi clock is null
[ 2.410397] [VFE]probe_work_handle end!
===============================================================================================
But there are many error when I capture picture from camera.
===============================================================================================
# fswebcam -d /dev/video2 --no-banner -r 320x240 capture.jpg
--- Opening /dev/video2...
[ 1805.085820] [VFE]vfe_open
Trying source module v4l2...[ 1805.091463] [VFE]..........................vfe clk open!.......................
[ 1805.102490] [VFE_DEBUG]vfe dphy clock is null
[ 1805.107797] [VFE_DEBUG]vfe mipi csi clock is null
[ 1805.113473] [VFE_DEBUG]tasklet init !
[ 1805.117708] [VFE]vfe_open ok
[ 1805.121105] [VFE_ERR]input index(0) > dev->dev_qty(1)-1 invalid!, device_valid_flag[0] = 0
/dev/video2 opened.
No [ 1805.130706] [VFE]vfe_close
input was specified, using the f[ 1805.136267] [VFE]vfe select input flag = 0, s_input have not be used .
irst.
Unable to query [ 1805.146328] [VFE]..........................vfe clk close!.......................
input 0.
VIDIOC_ENUMIN[ 1805.157302] [VFE_DEBUG]vfe dphy clock is null
PUT: Invalid argument
[ 1805.164902] [VFE_DEBUG]vfe mipi csi clock is null
[ 1805.172467] [VFE]vfe_close end
=================================================================================================
How can I fix it ?