This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Camera ISP Configuration

Other Parts Discussed in Thread: OMAP3530

Hi all,
 
             I am using CM-T3530 Processor with Linux kernel 3.0.68 (Kernel is patched with CM-T3730 patch file) which is avalible in CompuLab websit. I have configured the Linux kernel with OMAP3 Camera support option. Now i want to use the camera in my application using V4l2 sample application. I am going to use the camera ISP interface.
 
The Sensor configuration is,
 
        The camera sensor (Sony ICX659ALA) is connected to the AFE (Analog Front End) chip. We are using FPGA for generating the HSYNC, VSYC and PXL_CLK for getting the inputs from image sensor. The FPGA is continuously reading the frames from the sensor after power-on the unit. The captured analog signals are converted to Digital signal by AFE chip. Finally the digital signal is given to the ISP data lines. I don't have any driver interface to control the Image sensor. But the captured raw data is directly given to the ISP data lines[0-11]. Also i have verified the data lines. The digital data is coming from the AFE chip. 
 
CCDC Register Configuration is,
 
ISP CTRL : 0x20210350
ISPCCDC_SYN_MODE : 0x204a0
ISPCCDC_COLPTN : 0x0
ISPCCDC_BLKCMP : 0x0
ISPCCDC_FPC : 0x0
ISPCCDC_FMTCFG : 0x4000
ISPCCDC_LSC_CONFIG : 0x6600
ISPCCDC_CLAMP : 0x10
ISPCCDC_PIX_LINES : 0x0
ISPCCDC_HD_VD_WID : 0x0
ISPCCDC_CFG : 0x0
ISPCCDC_REC656IF : 0x0
ISPCCDC_SDR_ADDR : 0x0
ISPCCDC_HSIZE_OFF : 0x480
ISPCCDC_SDOFST : 0x0
ISPCCDC_FMT_HORZ : 0x0
ISPCCDC_FMT_VERT : 0x0
ISPCCDC_VP_OUT : 0x0
 
 
Now as per camera usage procedure, i have created the pipeline in the following method,
 
root@cm-t3730:/#media-ctl -r -l '"OMAP3 ISP CCDC":1->"OMAP3 ISP CCDC output":0[1]'

root@cm-t3730:/#media-ctl -f '"OMAP3 ISP CCDC":1 [SGRBG10 4096x4096]'
 
 
The path is created successfully. After that i am trying to read the RAW data (12- bit) from the CCDC memory using the capture_mmap application (V4l2 Sample Applications).
 
 
root@cm-t3730:/# ./capturer_mmap
 
But it is giving the following error,
 
 
root@cm-t3730:/# ./capturer_mmap

Video bytespreline = 1280
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = ce4e0000
[00000000] *pgd=8e5af831, *pte=00000000, *ppte=00000000
Internal error: Oops: 17 [#1] PREEMPT
Modules linked in:
CPU: 0 Not tainted (3.0.68-cm-t3730 #242)
PC is at ccdc_set_stream+0x5a4/0xce8
LR is at 0x8
pc : [<c03902a8>] lr : [<00000008>] psr: 60000013
sp : ce91d8b0 ip : cf3c6a60 fp : 00000000
r10: 00000001 r9 : ce91d990 r8 : 00000001
r7 : cf3c66f8 r6 : cf3c0000 r5 : cf3c0000 r4 : 00000000
r3 : 00000000 r2 : cf365880 r1 : 00000000 r0 : 00000000
Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
Control: 10c5387d Table: 8e4e0019 DAC: 00000015
Process capturer_mmap (pid: 1103, stack limit = 0xce91c2f0)
Stack: (0xce91d8b0 to 0xce91e000)
d8a0: 00000000 00000020 00404000 00000000
d8c0: 08406000 00000000 00000000 60000093 00000000 00000000 ce91c000 60000093
d8e0: 00000000 00000000 ce91d990 cf3c6e6c 00000001 c009f370 00000001 00000080
d900: 00000000 c038676c 00000000 60000093 cf3c6e5c 00000000 cf3c6e5c 20000013
d920: cf3c6ef0 00000001 cf3c6e5c 20000013 cf3c6e5c cf3c66f8 cf3c0000 cf3c6e5c
d940: 00000000 00000001 ce91d990 cf3c0000 ce92e200 c03867f4 cf3c6e5c 00000001
d960: ce92e218 cf3c6ef0 cf3c6e5c c0386c3c cf3c6ef0 00000000 cf3c6b20 c038afbc
d980: 00000000 cf3c6ea4 00000022 00000000 00000001 00000000 00001000 00001000
d9a0: 0000300a 00000001 00000008 00000000 00000000 00000000 00000000 00000000
d9c0: 00000000 00000000 00000000 00000000 cf3c6b20 00050000 cea1f2c0 00000000
d9e0: 00000000 00000000 ce92e200 cf163200 00096000 c00639a0 00096000 00050000
da00: 00000000 ffffffff 000000d2 cea1f2c0 00000000 ce92e26c ce91c000 60000013
da20: c0389204 c06a67ac ce92e26c c04aa340 00000096 00000000 00000096 ce92e218
da40: ce92e26c cead8a80 d0bfa000 c0389204 ce91c000 60000013 c0388b9c c06a67ac
da60: ce92e26c c04aa340 00000000 04f27ac0 ce91de48 ce92e200 00000000 00000001
da80: ce4851c0 00000000 c04e1e44 00000000 cf3c6b20 c0374670 00000001 c009f370
daa0: 00000001 00000080 00000000 c02e6e5c 00000000 80000013 ce91dc64 ce91dc98
dac0: ce91dc44 0000001a 00000014 0000000e c068e068 80000013 ce91dc84 ce91db04
dae0: c068e068 ce91dcce ce91dc44 c068e054 ce91dc84 ce91dcce cc9ccc9c c02e6f3c
db00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
db20: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000060
db40: 30018000 00010180 00000000 00000002 00000000 00000000 00000000 00000000
db60: ce91c000 60000113 00000002 00000000 ce91c000 c067a728 00000001 c009f370
db80: 00000001 0a0504d6 cea313e0 cf188540 000200da c00cab98 00000041 0000d1b7
dba0: 00000000 c00ccb70 00000041 00000040 64340000 00000003 00000000 00000000
dbc0: 000200da c06a4010 00000000 00000000 00000000 00000000 ce91c000 00000000
dbe0: 00000000 00000080 30018000 1a010180 ce91c000 00000002 00000000 00000000
dc00: ce91de3e 00000000 ce91c000 60000113 00000002 00000000 ce91c000 c067a728
dc20: 00000001 c009f370 00000001 0a05ffff cea313e0 cf188540 00000000 cea403f8
dc40: c068e068 00000000 00000000 cf349400 00000000 0700050a 00000000 ce91c000
dc60: 00000000 c0458350 ce91dcd8 ce91dcf8 00000001 c009f370 00000001 00000001
dc80: ce91dcf8 ce91dcd8 cf188540 cf188554 00340000 ce91dcd8 c069f61c cf349400
dca0: ffffff8f ce91de48 40045612 ce4851c0 00000000 ce92e200 00000001 00000000
dcc0: c0418c04 c009f370 00000001 c069db80 0000000a cf154040 00000000 00000003
dce0: 00000000 00000000 c0679648 ffff050a 0700050a 0000d008 fd010008 00000040
dd00: 80406000 00000006 cea03680 00000000 00000000 00000040 80406000 00000006
dd20: ce91c000 00000000 00000000 00000000 00000001 00000000 ce91c000 60000193
dd40: 00000000 00000000 00000001 cf35b51c 00000001 c009f370 00000001 00000080
dd60: 00000000 c0334b78 00000000 cf35b4c0 cf35b50c 00000000 cf35b50c 60000113
dd80: 00000060 cf35b4c0 cf35b50c 60000113 01000200 00000060 cf35b4c0 00000001
dda0: cf35b50c c04ac5c0 cf35b50c cf35b50c 60000113 c0334ba0 fb052018 00000001
ddc0: 00000010 cf35b5d0 0000012c c06a4100 ffff99c9 00000102 c06a4108 c03fb600
dde0: 00000000 ce91c000 cf09798c 00000001 0000000c 00000040 80406000 00000006
de00: c06b6cc8 00000000 00000000 c0074110 000000e1 00000000 00000000 40045612
de20: ce4851c0 00000000 bed33c68 00000000 ce91de48 c03732ec 00000001 c03736f4
de40: 00000001 00000000 00000001 00000001 00000000 00000000 00000000 00000000
de60: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 00000000
de80: 00000000 00000000 00000000 00000080 00000000 c00e8be8 00000000 c06a67ac
dea0: 60000013 00000000 00000257 000001c2 ce4a8128 ce4a80f8 c06a67ac 00000000
dec0: 00000000 00000000 c00ea054 cf3c6b20 ce4851c0 40045612 bed33c68 ce4851c0
dee0: ce91c000 00000000 00011ca8 c03723e4 00000003 ce4851c0 bed33c68 00000003
df00: ce4851c0 c010df34 00000000 c010e230 00000000 c00ea808 ce4a8144 00000000
df20: ceacbbd8 60000013 00000000 00096000 ce91c000 ceacbbd8 00011ca8 c04abe40
df40: 00000001 00000000 c0278854 ce4a8144 ceacbbd8 60000013 ce4851c0 ce91c000
df60: 40522000 00000000 bed33c68 40045612 00000003 ce4851c0 ce91c000 00000000
df80: 00011ca8 c010e7e8 ceacbb80 00000000 bed33c68 40045612 00000003 00000036
dfa0: c00451e8 c0045040 bed33c68 40045612 00000003 40045612 bed33c68 bed33b74
dfc0: bed33c68 40045612 00000003 00000036 00000000 00009598 00000000 00011ca8
dfe0: 00000001 bed32fc0 000092d4 401cc1cc 60000010 00000003 00000000 00000000
[<c03902a8>] (ccdc_set_stream+0x5a4/0xce8) from [<c03867f4>] (isp_pipeline_enable+0xa0/0x1ac)
[<c03867f4>] (isp_pipeline_enable+0xa0/0x1ac) from [<c0386c3c>] (omap3isp_pipeline_set_stream+0x28/0x34)
[<c0386c3c>] (omap3isp_pipeline_set_stream+0x28/0x34) from [<c038afbc>] (isp_video_streamon+0x460/0x4cc)
[<c038afbc>] (isp_video_streamon+0x460/0x4cc) from [<c0374670>] (__video_do_ioctl+0xf7c/0x643c)
[<c0374670>] (__video_do_ioctl+0xf7c/0x643c) from [<c03732ec>] (video_usercopy+0x12c/0x4c8)
[<c03732ec>] (video_usercopy+0x12c/0x4c8) from [<c03723e4>] (v4l2_ioctl+0x74/0x128)
[<c03723e4>] (v4l2_ioctl+0x74/0x128) from [<c010df34>] (vfs_ioctl+0x30/0x44)
[<c010df34>] (vfs_ioctl+0x30/0x44) from [<c010e230>] (do_vfs_ioctl+0x6c/0x5b0)
[<c010e230>] (do_vfs_ioctl+0x6c/0x5b0) from [<c010e7e8>] (sys_ioctl+0x74/0x7c)
[<c010e7e8>] (sys_ioctl+0x74/0x7c) from [<c0045040>] (ret_fast_syscall+0x0/0x30)
Code: e5832054 ebff859a e597341c e1a01000 (e5900000)
cm-t3730 Intern---[ end trace 7b69f96205090b06 ]---
al error: Oops: 17 [#1] PREEMPT
cm-t3730 Process capturer_mmap (pid: 1103, stack limit = 0xce91c2f0)
cm-t3730 Stack: (0xce91d8b0 to 0xce91e000)
cm-t3730 d8a0: 00000000 00000020 00404000 00000000
cm-t3730 d8c0: 08406000 00000000 00000000 60000093 00000000 00000000 ce91c000 60000093
cm-t3730 d8e0: 00000000 00000000 ce91d990 cf3c6e6c 00000001 c009f370 00000001 00000080
cm-t3730 d900: 00000000 c038676c 00000000 60000093 cf3c6e5c 00000000 cf3c6e5c 20000013
cm-t3730 d920: cf3c6ef0 00000001 cf3c6e5c 20000013 cf3c6e5c cf3c66f8 cf3c0000 cf3c6e5c
cm-t3730 d940: 00000000 00000001 ce91d990 cf3c0000 ce92e200 c03867f4 cf3c6e5c 00000001
cm-t3730 d960: ce92e218 cf3c6ef0 cf3c6e5c c0386c3c cf3c6ef0 00000000 cf3c6b20 c038afbc
cm-t3730 d980: 00000000 cf3c6ea4 00000022 00000000 00000001 00000000 00001000 00001000
cm-t3730 d9a0: 0000300a 00000001 00000008 00000000 00000000 00000000 00000000 00000000
cm-t3730 d9c0: 00000000 00000000 00000000 00000000 cf3c6b20 00050000 cea1f2c0 00000000
cm-t3730 d9e0: 00000000 00000000 ce92e200 cf163200 00096000 c00639a0 00096000 00050000
cm-t3730 da00: 00000000 ffffffff 000000d2 cea1f2c0 00000000 ce92e26c ce91c000 60000013
cm-t3730 da20: c0389204 c06a67ac ce92e26c c04aa340 00000096 00000000 00000096 ce92e218
cm-t3730 da40: ce92e26c cead8a80 d0bfa000 c0389204 ce91c000 60000013 c0388b9c c06a67ac
cm-t3730 da60: ce92e26c c04aa340 00000000 04f27ac0 ce91de48 ce92e200 00000000 00000001
cm-t3730 da80: ce4851c0 00000000 c04e1e44 00000000 cf3c6b20 c0374670 00000001 c009f370
cm-t3730 daa0: 00000001 00000080 00000000 c02e6e5c 00000000 80000013 ce91dc64 ce91dc98
cm-t3730 dac0: ce91dc44 0000001a 00000014 0000000e c068e068 80000013 ce91dc84 ce91db04
cm-t3730 dae0: c068e068 ce91dcce ce91dc44 c068e054 ce91dc84 ce91dcce cc9ccc9c c02e6f3c
cm-t3730 db00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
cm-t3730 db20: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000060
cm-t3730 db40: 30018000 00010180 00000000 00000002 00000000 00000000 00000000 00000000
cm-t3730 db60: ce91c000 60000113 00000002 00000000 ce91c000 c067a728 00000001 c009f370
cm-t3730 db80: 00000001 0a0504d6 cea313e0 cf188540 000200da c00cab98 00000041 0000d1b7
cm-t3730 dba0: 00000000 c00ccb70 00000041 00000040 64340000 00000003 00000000 00000000
cm-t3730 dbc0: 000200da c06a4010 00000000 00000000 00000000 00000000 ce91c000 00000000
cm-t3730 dbe0: 00000000 00000080 30018000 1a010180 ce91c000 00000002 00000000 00000000
cm-t3730 dc00: ce91de3e 00000000 ce91c000 60000113 00000002 00000000 ce91c000 c067a728
cm-t3730 dc20: 00000001 c009f370 00000001 0a05ffff cea313e0 cf188540 00000000 cea403f8
cm-t3730 dc40: c068e068 00000000 00000000 cf349400 00000000 0700050a 00000000 ce91c000
cm-t3730 dc60: 00000000 c0458350 ce91dcd8 ce91dcf8 00000001 c009f370 00000001 00000001
cm-t3730 dc80: ce91dcf8 ce91dcd8 cf188540 cf188554 00340000 ce91dcd8 c069f61c cf349400
cm-t3730 dca0: ffffff8f ce91de48 40045612 ce4851c0 00000000 ce92e200 00000001 00000000
cm-t3730 dcc0: c0418c04 c009f370 00000001 c069db80 0000000a cf154040 00000000 00000003
cm-t3730 dce0: 00000000 00000000 c0679648 ffff050a 0700050a 0000d008 fd010008 00000040
cm-t3730 dd00: 80406000 00000006 cea03680 00000000 00000000 00000040 80406000 00000006
cm-t3730 dd20: ce91c000 00000000 00000000 00000000 00000001 00000000 ce91c000 60000193
cm-t3730 dd40: 00000000 00000000 00000001 cf35b51c 00000001 c009f370 00000001 00000080
cm-t3730 dd60: 00000000 c0334b78 00000000 cf35b4c0 cf35b50c 00000000 cf35b50c 60000113
cm-t3730 dd80: 00000060 cf35b4c0 cf35b50c 60000113 01000200 00000060 cf35b4c0 00000001
cm-t3730 dda0: cf35b50c c04ac5c0 cf35b50c cf35b50c 60000113 c0334ba0 fb052018 00000001
cm-t3730 ddc0: 00000010 cf35b5d0 0000012c c06a4100 ffff99c9 00000102 c06a4108 c03fb600
cm-t3730 dde0: 00000000 ce91c000 cf09798c 00000001 0000000c 00000040 80406000 00000006
cm-t3730 de00: c06b6cc8 00000000 00000000 c0074110 000000e1 00000000 00000000 40045612
cm-t3730 de20: ce4851c0 00000000 bed33c68 00000000 ce91de48 c03732ec 00000001 c03736f4
cm-t3730 de40: 00000001 00000000 00000001 00000001 00000000 00000000 00000000 00000000
cm-t3730 de60: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 00000000
cm-t3730 de80: 00000000 00000000 00000000 00000080 00000000 c00e8be8 00000000 c06a67ac
cm-t3730 dea0: 60000013 00000000 00000257 000001c2 ce4a8128 ce4a80f8 c06a67ac 00000000
cm-t3730 dec0: 00000000 00000000 c00ea054 cf3c6b20 ce4851c0 40045612 bed33c68 ce4851c0
cm-t3730 dee0: ce91c000 00000000 00011ca8 c03723e4 00000003 ce4851c0 bed33c68 00000003
cm-t3730 df00: ce4851c0 c010df34 00000000 c010e230 00000000 c00ea808 ce4a8144 00000000
cm-t3730 df20: ceacbbd8 60000013 00000000 00096000 ce91c000 ceacbbd8 00011ca8 c04abe40
cm-t3730 df40: 00000001 00000000 c0278854 ce4a8144 ceacbbd8 60000013 ce4851c0 ce91c000
cm-t3730 df60: 40522000 00000000 bed33c68 40045612 00000003 ce4851c0 ce91c000 00000000
cm-t3730 df80: 00011ca8 c010e7e8 ceacbb80 00000000 bed33c68 40045612 00000003 00000036
cm-t3730 dfa0: c00451e8 c0045040 bed33c68 40045612 00000003 40045612 bed33c68 bed33b74
cm-t3730 dfc0: bed33c68 40045612 00000003 00000036 00000000 00009598 00000000 00011ca8
cm-t3730 dfe0: 00000001 bed32fc0 000092d4 401cc1cc 60000010 00000003 00000000 00000000
cm-t3730 Code: e5832054 ebff859a e597341c e1a01000 (e5900000)
 
 
So kindly give me the solution for the above error.
 
 
Thanks,
 
Samuthira Pandian T

 
 
Phone : +91 9789799425
 
 
 
  • Hi Samuthira,

    I'll try to search for the reason about this crash. The register's configuration seems correct but you could refer to the TRM of OMAP3530 section - 12.5 Camera ISP Basic Programming Model.

    About the sensor driver - is it some standard camera driver which is tested with other boards or it is custom driver?

    Could you try to start the capturer_mmap application with specified capture device (for example ./capture_mmap -d /dev/video)?

    BR

    Tsvetolin Shulev

  • Hi Tsvetolin Shulev,

                       Thank you for your reply. I have run the application in the following method,

                       ./capturer_mmap -D /dev/video2

    This also giving the same error. Also i given media-ctrl -p option. This is displaying video2 device for the CCDC memory. Thats why i choose the video2 device for my testing. Kindly give me the idea for that.

    Thanks

    Samuthira Pandian T