Other Parts Discussed in Thread: TVP5146, PCA9306
Hi,
Recently I am engaged in the work of add the ov7670 driver to L138 evm board .The figure below shows a block diagram of the system. Motherboard is LOGIC L138EVM board,I design a daughter board connect to the pin of J29 . The daughter board connect a OV7670 camera as the Video Input.
The main file In dvsdk_ompla38-evm_04_03_00_06 Software Development Kit I modify is :
First: add the ov7670 driver when make menuconfig.
Second: modify the board initialization file of board da850-evm.c add the ov7670 struct information to replace the mt9t031 camera infomation.
Third: modfiy the psp/linux-2.6.37-psp03.21.00.04.sdk/drivers/media/video/davinci/vpif_capture.c
file function of
static __init int vpif_probe(struct platform_device *pdev) to register the ov7670 device.
But when I loaded the modified kernel into board ,it comes follows error ,the log is follows,
we cannot register the ov7670 device successfully .could you explain it or how to make the ov7670
camera work with the L138EVM .
Thanks very much.
log session :
Linux video capture interface: v2.00 vpif_capture vpif_capture: Error registering v4l2 subdevice Unable to handle kernel NULL pointer dereference at virtual address 00000000 pgd = c0004000 [00000000] *pgd=00000000 Internal error: Oops: 5 [#1] PREEMPT last sysfs file: Modules linked in: CPU: 0 Not tainted (2.6.37 #0) PC is at __wake_up_common+0x14/0x7c LR is at complete_all+0x58/0x8c pc : [<c00416a8>] lr : [<c00445ec>] psr: 60000093 sp : c7827d70 ip : c7827da0 fp : c7827d9c r10: 00000000 r9 : 00000003 r8 : c04b9ce4 r7 : c79e6c00 r6 : 00000000 r5 : c04ca9a4 r4 : 00000000 r3 : 00000000 r2 : 00000000 r1 : 00000003 r0 : c79f1cb4 Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel Control: 0005317f Table: c0004000 DAC: 00000017 Process swapper (pid: 1, stack limit = 0xc7826270) Stack: (0xc7827d70 to 0xc7828000) 7d60: 00000000 60000013 c04ca9a4 00000000 7d80: c79e6c00 c04b9ce4 00000000 00000000 c7827dbc c7827da0 c00445ec c00416a4 7da0: 00000000 c7827db0 c03953d4 c79f1c50 c7827dd4 c7827dc0 c01eaf68 c00445a4 7dc0: c79f1c50 c79f1c50 c7827df4 c7827dd8 c01e30dc c01eaf5c c79f1c50 c79f1600 7de0: c04fd9f4 c79e6c00 c7827e0c c7827df8 c01e3224 c01e30b0 c79f1c48 c79f1600 7e00: c7827e24 c7827e10 c026c1a0 c01e3220 c79f1c00 c79f1600 c7827e3c c7827e28 7e20: c0271558 c026c15c c79f1c00 c79f1600 c7827e5c c7827e40 c0271778 c02714dc 7e40: c79b3f20 00000000 00000002 c79e6c00 c7827ea4 c7827e60 c002074c c027175c 7e60: 00000000 00000001 c04b4f00 c04b999c c7850200 00000001 c7827e94 c04b4f08 7e80: c04b4f08 c04e2c64 c79ea660 c04ca630 00000000 00000000 c7827eb4 c7827ea8 7ea0: c01e6af8 c00201d8 c7827ed4 c7827eb8 c01e5a54 c01e6ae8 c04b4f08 c04b4f3c 7ec0: c04e2c64 c79ea660 c7827ef4 c7827ed8 c01e5b84 c01e5988 00000000 c01e5b1c 7ee0: c04e2c64 c79ea660 c7827f1c c7827ef8 c01e518c c01e5b2c c7837038 c7856930 7f00: c019c858 c0029088 c00083ac c04e2c64 c7827f2c c7827f20 c01e586c c01e514c 7f20: c7827f5c c7827f30 c01e4a5c c01e585c c0448345 c7827f40 c0029088 c00083ac 7f40: c04e2c64 00000013 c00201ac 00000000 c7827f84 c7827f60 c01e5ec4 c01e49b8 7f60: c0029088 c00083ac c004b2c4 00000013 c00201ac 00000000 c7827f94 c7827f88 7f80: c01e6f9c c01e5e24 c7827fa4 c7827f98 c00201c0 c01e6f60 c7827fdc c7827fa8 7fa0: c0032420 c00201bc 000000f5 c00083ac c004b2c4 00000013 c0029088 c00083ac 7fc0: c004b2c4 00000013 00000000 00000000 c7827ff4 c7827fe0 c0008448 c0032360 7fe0: 00000000 c00083ac 00000000 c7827ff8 c004b2c4 c00083bc 00000000 00000000 Backtrace: [<c0041694>] (__wake_up_common+0x0/0x7c) from [<c00445ec>] (complete_all+0x58/0x8c) [<c0044594>] (complete_all+0x0/0x8c) from [<c01eaf68>] (device_pm_remove+0x1c/0x60) r4:c79f1c50 [<c01eaf4c>] (device_pm_remove+0x0/0x60) from [<c01e30dc>] (device_del+0x3c/0x170) r5:c79f1c50 r4:c79f1c50 [<c01e30a0>] (device_del+0x0/0x170) from [<c01e3224>] (device_unregister+0x14/0x20) r7:c79e6c00 r6:c04fd9f4 r5:c79f1600 r4:c79f1c50 [<c01e3210>] (device_unregister+0x0/0x20) from [<c026c1a0>] (video_unregister_device+0x54/0x5c) r5:c79f1600 r4:c79f1c48 [<c026c14c>] (video_unregister_device+0x0/0x5c) from [<c0271558>] (v4l2_device_unregister_subdev+0x8c/0x98) r5:c79f1600 r4:c79f1c00 [<c02714cc>] (v4l2_device_unregister_subdev+0x0/0x98) from [<c0271778>] (v4l2_device_unregister+0x2c/0x7c) r5:c79f1600 r4:c79f1c00 [<c027174c>] (v4l2_device_unregister+0x0/0x7c) from [<c002074c>] (vpif_probe+0x584/0x6b0) r7:c79e6c00 r6:00000002 r5:00000000 r4:c79b3f20 [<c00201c8>] (vpif_probe+0x0/0x6b0) from [<c01e6af8>] (platform_drv_probe+0x20/0x24) [<c01e6ad8>] (platform_drv_probe+0x0/0x24) from [<c01e5a54>] (driver_probe_device+0xdc/0x1a4) [<c01e5978>] (driver_probe_device+0x0/0x1a4) from [<c01e5b84>] (__driver_attach+0x68/0x8c) r7:c79ea660 r6:c04e2c64 r5:c04b4f3c r4:c04b4f08



