Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:2
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:6
Форум » starterkit.ru » Отладочные платы » SK-AT91SAM9260-SIMXXX
подключение SK-VideoADC-Plug
Slavian
Добавлено 06.08.2010 12:55 Сообщение: 31
Slavian
0

Пункты: 1888
Регистрация: 21.05.2010
Цитата
Взял Ваш драйвер (до этого "самодельный" был) - ядро нормально загрузилось:[code]i2c /dev entries driver


там в драйвере есть ошибка в функциях
static int atmel_isi_capture_close (struct inode *inode, struct file *file)
static int atmel_isi_capture_open (struct inode *inode, struct file *file)
static int atmel_isi_stream_close (struct inode *inode, struct file *file)
static int atmel_isi_stream_open (struct inode *inode, struct file *file)

уберите первый параметр struct inode *inode,
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 06.08.2010 13:08 Сообщение: 32
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
Далее, собрал capture отсюда
Запускаю, получаю:
Код
# ./capt -d /dev/video0 -o data.dat
Unable to handle kernel NULL pointer dereference at virtual address 0000000c
pgd = c3914000
[0000000c] *pgd=722fb031, *pte=00000000, *ppte=00000000
Internal error: Oops: 17 [#2]
last sysfs file: /sys/devices/virtual/video4linux/video1/dev
Modules linked in:
CPU: 0 Tainted: G D (2.6.34.1 #65)
PC is at video_devdata+0x0/0x24
LR is at atmel_isi_capture_open+0x14/0xe4
pc : [<c033b0c4>] lr : [<c0346694>] psr: a0000013
sp : c391be18 ip : c224c474 fp : 00000001
r10: c3c0c220 r9 : 00000024 r8 : 00000000
r7 : c3ceb4c0 r6 : c2267638 r5 : c3ceb4c0 r4 : c2267630
r3 : c0346680 r2 : 00000001 r1 : 00000000 r0 : 00000000
Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
Control: 0005317f Table: 73914000 DAC: 00000015
Process capt (pid: 937, stack limit = 0xc391a270)
Stack: (0xc391be18 to 0xc391c000)
be00: c386b6a8 c2267630
be20: c3ceb4c0 c2267638 c3ceb4c0 00000024 c3c0c220 c033b8f0 00000000 c2253c20
be40: c383e6c8 c021b8dc c391be98 c0220588 c2c0b898 c3ceb4c0 c383e6c8 c021b840
be60: c2e14b18 c0216c1c c2e14b18 c3ceb4c0 c3c17180 00000000 00000000 00000024
be80: c391a000 c0217d18 c3c17180 c0221a84 00000000 00000000 c391bef0 c0221e78
bea0: 0000005c c3c17180 c0498e18 00000000 00000000 c391bef0 c3919000 00000000
bec0: c391a000 c0222f68 00000000 c3919000 c391bfb0 c391bf50 00000000 ffffff9c
bee0: 00000000 000a5000 c386b758 c048fd48 c3c0c220 c2e14b18 d9d3cd40 00000006
bf00: c3919005 c3c0c7a0 c2c01798 00000101 00000000 00000000 00084000 00100077
bf20: c38b61e0 00000021 00000084 000a5000 00000000 c020d7a0 00100077 00000001
bf40: 00000000 c3ceb4c0 c3c1ac80 00000003 c3c0c220 c2e14b18 00000000 00000000
bf60: 00000000 ffffff9c 00000000 c01b6fa8 00000003 c3919000 bed3ca5c c0216a84
bf80: 00000000 c38b6214 00000000 00082188 00000000 00000005 c01b6fa8 c391a000
bfa0: 00000000 c01b6e00 00000000 00082188 00083f80 00000000 00000000 ffffffff
bfc0: 00000000 00082188 00000000 00000005 0000939c 00009354 00000000 bed3ca5c
bfe0: 00000000 bed3ca20 00008b38 0001932c 60000010 00083f80 67ee519f c852c72d
[<c033b0c4>] (video_devdata+0x0/0x24) from [<c0346694>] (atmel_isi_capture_open+0x14/0xe4)
[<c0346694>] (atmel_isi_capture_open+0x14/0xe4) from [<c033b8f0>] (v4l2_open+0x70/0x88)
[<c033b8f0>] (v4l2_open+0x70/0x88) from [<c021b8dc>] (chrdev_open+0x9c/0x160)
[<c021b8dc>] (chrdev_open+0x9c/0x160) from [<c0216c1c>] (__dentry_open+0xb4/0x250)
[<c0216c1c>] (__dentry_open+0xb4/0x250) from [<c0217d18>] (nameidata_to_filp+0x50/0x58)
[<c0217d18>] (nameidata_to_filp+0x50/0x58) from [<c0221e78>] (do_last+0x2a0/0x5a4)
[<c0221e78>] (do_last+0x2a0/0x5a4) from [<c0222f68>] (do_filp_open+0x178/0x4b0)[<c0222f68>] (do_filp_open+0x178/0x4b0) from [<c0216a84>] (do_sys_open+0x5c/0x114)
[<c0216a84>] (do_sys_open+0x5c/0x114) from [<c01b6e00>] (ret_fast_syscall+0x0/0x2c)
Code: e8bd87f0 e3a00001 e8bd87f0 e12fff1e (e590200c)
---[ end trace f0af9532f8e73d60 ]---
Segmentation fault


Цитата
там в драйвере есть ошибка в функциях
static int atmel_isi_capture_close (struct inode *inode, struct file *file)
static int atmel_isi_capture_open (struct inode *inode, struct file *file)
static int atmel_isi_stream_close (struct inode *inode, struct file *file)
static int atmel_isi_stream_open (struct inode *inode, struct file *file)
Убрал из объявления функций struct inode *inode, повторяю попытку, на сей раз без сегментейшн фаулт, но так же по таймауту вылетает:
Код
# ./capt -d /dev/video0 -o data.dat
Failed to open video device: Connection timed out
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 06.08.2010 13:11 Сообщение: 33
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
Хотя ... разок выдала (после ттого как видеокабель выдернул-вставил):
Код
# ./capt -d /dev/video0 -o data.dat
Pb no camera found!!!

И счетчик прерываний ISI инкрементировался.
Спуститься к концу Подняться к началу
Персональная информация
Slavian
Добавлено 06.08.2010 13:20 Сообщение: 34
Slavian
0

Пункты: 1888
Регистрация: 21.05.2010
[quote]Хотя ... разок выдала (после ттого как видеокабель выдернул-вставил):
Код
# ./capt -d /dev/video0 -o data.dat
Pb no camera found!!!

И счетчик прерываний ISI инкрементировался.[/quote]

Это уже немного радует, в том плане что у нас одинаковые результаты на разных платах вполне возможно проблемы именно софтварные, вы не пробывали запускать i2ctool -ы ?

Может проблема в драйвере ADC7180, я залогировал его вызовы у меня он ни разу не вызывался.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 06.08.2010 13:24 Сообщение: 35
sasamy
4.70

Пункты: 77333
Регистрация: 14.08.2009
Цитата

скорее всего на
if (kfifo_alloc(&isi->grabq, sizeof(int) * video_buffers, GFP_KERNEL))


Да - у меня там ошибки при запросе fifo - я не посмотрел что в структуре isi fifo лежит в виде структуры а не указателя и сделал так:
kfifo_alloc(isi->grabq, sizeof(int) * video_buffers, GFP_KERNEL);
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 06.08.2010 13:30 Сообщение: 36
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
Цитата
Это уже немного радует, в том плане что у нас одинаковые результаты на разных платах вполне возможно проблемы именно софтварные, вы не пробывали запускать i2ctool -ы ?

Может проблема в драйвере ADC7180, я залогировал его вызовы у меня он ни разу не вызывался.
I2C сейчас не нужно трогать, чтобы избавиться хотяб от одной глюкозависимости.
По умолчанию, плаг вываливает данные на 28МГц, все синхры на месте, единственно, в моем случае, ISI_MCK почему то меньше 1В, что говорит о том что этот пин у контроллера каким то чудом по факту на выход настроен.
Спуститься к концу Подняться к началу
Персональная информация
Slavian
Добавлено 06.08.2010 13:51 Сообщение: 37
Slavian
0

Пункты: 1888
Регистрация: 21.05.2010
Цитата
I2C сейчас не нужно трогать, чтобы избавиться хотяб от одной глюкозависимости.
По умолчанию, плаг вываливает данные на 28МГц, все синхры на месте, единственно, в моем случае, ISI_MCK почему то меньше 1В, что говорит о том что этот пин у контроллера каким то чудом по факту на выход настроен.


А неможет быть ошибка в этом

at91_set_A_periph(AT91_PIN_PB31, 0);

На пине PB31 в периферии А сидит ISI_MCK, а в периферии В PCK1.
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 06.08.2010 13:58 Сообщение: 38
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
В доке на 9G45 однозначно сказано PB31 периферия А - ISI_MCK
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 06.08.2010 13:59 Сообщение: 39
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
Блин, точно, это я пины попутал надо было ISI_PCK заводить (ISI_MCK - выход) ...
Спуститься к концу Подняться к началу
Персональная информация
Slavian
Добавлено 06.08.2010 14:01 Сообщение: 40
Slavian
0

Пункты: 1888
Регистрация: 21.05.2010
Цитата
Блин, точно, это я пины попутал надо было ISI_PCK заводить (ISI_MCK - выход) ...


Ну что у вас заработало ?
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Отладочные платы » SK-AT91SAM9260-SIMXXX