主题 : Tiny6410的opencv问题,求解答。。。急急急 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 62990
精华: 0
发帖: 48
金钱: 250 两
威望: 50 点
综合积分: 96 分
注册时间: 2012-02-12
最后登录: 2017-05-04
楼主  发表于: 2012-08-08 03:51

 Tiny6410的opencv问题,求解答。。。急急急

我将opencv的以及opencv依赖的库ffmepg,xvid,x264交叉编译好,移植到tiny6410当中,测试程序是用opencv进行视频采集,但出现这种错误,同样的方法可以在别的开发板上运行?为什么不能在Tiny6410上运行呢???好疑惑,弄了一天都没成功


[root@FriendlyARM plg]# ./camera -qws
Unable to handle kernel NULL pointer dereference at virtual address

00000000
pgd = cd634000
[00000000] *pgd=5d55c831, *pte=00000000, *ppte=00000000
Internal error: Oops: 17 [#1] PREEMPT
last sysfs file: /sys/devices/virtual/vc/vcsa2/dev
Modules linked in: fa_cpu_pfn(P)
CPU: 0 Tainted: P (2.6.38-FriendlyARM #8)
PC is at s3c_fimc_v4l2_g_input+0x8/0x14
LR is at __video_do_ioctl+0x19dc/0x3db0
pc : [<c044204c>] lr : [<c03c6a84>] psr: a0000013
sp : cd617d98 ip : 22222222 fp : 00000000
r10: c0793a5c r9 : cd601f00 r8 : 80045626
r7 : c058b33c r6 : c0755c48 r5 : 80045626 r4 : cd617e68
r3 : 00000000 r2 : cd617e68 r1 : c0793a5c r0 : 00000000
Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
Control: 00c5387d Table: 5d634008 DAC: 00000015
Process camera (pid: 1032, stack limit = 0xcd616268)
Stack: (0xcd617d98 to 0xcd618000)
7d80: 00000104

00000000
7da0: 00000108 00000000 0000010c 00000000 00000110 00000000 00000114

00000000
7dc0: 00000118 00000000 0000011c 00000000 00000120 00000000 00000124

00000000
7de0: 00000128 00000000 0000012c 00000000 00000130 00000000 00000134

00000000
7e00: 00000138 00000000 0000013c 00000000 c0793a74 c0516098 00000000

c0793a74
7e20: c0793a5c c0441694 c0755c48 c0441600 c0755c50 cd601f00 c055d7e0

80045626
7e40: 80045626 cd617e68 00000000 00000000 000f1534 00000000 00000000

c03c912c
7e60: 00000002 cd601f00 00000000 20676e75 434d4946 69724420 2d633373

636d6966
7e80: 00000030 00000000 00000000 00000000 00000000 00000000 434d4946

42484120
7ea0: 7375622d 00000000 00000001 00000001 cd617ec4 c0183194 c074fc48

60000013
7ec0: 0000001b c0515f04 00000000 c074fc5c 22222222 22222222 22222222

22222222
7ee0: 00000000 c074fc48 80045626 c0755c48 80045626 c074fc48 cd601f00

000f1534
7f00: cd616000 00000000 0000001b c03c4330 cd601f00 000f1534 000f1534

cd13c700
7f20: c0172788 c01efad8 00000420 c017f98c cca67324 00000000 cca67324

00000000
7f40: cd617f50 0000000e cca67324 cca67300 cd601f00 00000020 00000001

00000001
7f60: cd617f74 c0183194 0000000e cd601f00 000f1534 80045626 0000000e

c0172788
7f80: cd616000 c01efb90 0000000e 00000000 000f1534 000f1534 0000000e

0000000e
7fa0: 00000036 c01725e0 000f1534 0000000e 0000000e 80045626 000f1534

04000005
7fc0: 000f1534 0000000e 0000000e 00000036 00000000 00000000 40f1b000

0000001b
7fe0: 00000b50 befe1268 4035ce48 411794ec 80000010 0000000e 00000000

00000000
[<c044204c>] (s3c_fimc_v4l2_g_input+0x8/0x14) from [<c03c6a84>]

(__video_do_ioctl+0x19dc/0x3db0)
[<c03c6a84>] (__video_do_ioctl+0x19dc/0x3db0) from [<c03c912c>]

(video_ioctl2+0x2d4/0x430)
[<c03c912c>] (video_ioctl2+0x2d4/0x430) from [<c03c4330>] (v4l2_ioctl

+0xe0/0x114)
[<c03c4330>] (v4l2_ioctl+0xe0/0x114) from [<c01efad8>] (do_vfs_ioctl

+0x538/0x5bc)
[<c01efad8>] (do_vfs_ioctl+0x538/0x5bc) from [<c01efb90>] (sys_ioctl

+0x34/0x54)
[<c01efb90>] (sys_ioctl+0x34/0x54) from [<c01725e0>] (ret_fast_syscall

+0x0/0x30)
Code: e3a00000 e12fff1e e59130a0 e3a00000 (e5933000)
---[ end trace 89a5423d79da29ab ]---
Segmentation fault
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2012-08-08 06:47
[<c044204c>] (s3c_fimc_v4l2_g_input+0x8/0x14) from [<c03c6a84>]

(__video_do_ioctl+0x19dc/0x3db0)
[<c03c6a84>] (__video_do_ioctl+0x19dc/0x3db0) from [<c03c912c>]

(video_ioctl2+0x2d4/0x430)

从crash的call stack看,问题出在s3c_fimc_v4l2_g_input()函数里。它定义在drivers\media\video\samsung\prebuild.fo里,但友善之臂没有开放这部分源代码。目前来说我想你只有:
1) 把这个问题通过论坛的"友善之臂官方客服中心"版块提交给他们,等待他们解决;
或者
2) 等他们开放这部分源代码之后自己分析解决;
或者
3) 自己找一个S3C6410上的FIMC V4L2驱动(比如光盘上提供的2.6.28内核源代码里的)并整合到你目前用的2.6.38内核里看是否能解决这个问题。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
自由,自强,共享,共创。
级别: 论坛版主
UID: 12573
精华: 27
发帖: 8838
金钱: 46490 两
威望: 9298 点
综合积分: 18216 分
注册时间: 2010-01-09
最后登录: 2019-07-16
2楼  发表于: 2012-08-08 08:56
2.6.28内核中是开源的
新手如何向我们反馈有效的信息,以便解决问题,见此贴:
http://www.arm9home.net/read.php?tid-14431.html

[注]: 此处签名链接仅为指引方向,而非解答问题本身.
级别: 新手上路
UID: 62990
精华: 0
发帖: 48
金钱: 250 两
威望: 50 点
综合积分: 96 分
注册时间: 2012-02-12
最后登录: 2017-05-04
3楼  发表于: 2012-08-08 09:48
问题解决了,原来友善的video是从2开始的,第一个视频设备是video2
级别: 侠客
UID: 60773
精华: 0
发帖: 78
金钱: 395 两
威望: 79 点
综合积分: 156 分
注册时间: 2011-12-16
最后登录: 2013-07-11
4楼  发表于: 2012-08-08 17:11
能不能把测试程序发给我看看邮箱can525127@126.com,最近刚学opencv,谢谢了
级别: 新手上路
UID: 83628
精华: 0
发帖: 1
金钱: 5 两
威望: 1 点
综合积分: 2 分
注册时间: 2012-12-09
最后登录: 2012-12-13
5楼  发表于: 2012-12-10 00:47

 回 4楼(安皮) 的帖子

I have exactly the same problem (but I'm using GStreamer). Is there any fix?