soeti Posted July 30, 2010 Posted July 30, 2010 В ядре версии 2.6 есть втроенные дрова. На этапе тестирования они вроде как рабочие из коробки. Но меня смущает отсутствие именно skystar2 драйвера, по умолчанию есть только b2c2 В тоже время, в руководствах по настройке рекомендуют пересобрать дрова с опцией конфига: CONFIG_DVB_B2C2_SKYSTAR=m Это необходимость или формальная рекомендация? И еще по поводу драйверов с v4l Стоит ли заморачиваться с их сборкой или того, что есть, вполне хватит? Вставить ник Quote
zevgen Posted July 30, 2010 Posted July 30, 2010 (edited) У меня эта карточка обнаружилась после установки дров linuxtv (v4l). И даже работала, но криво. Криво в том смысле, что например невозможно было от сканировать транспондер в котором идет больше 4-5 потоков. Например мне нужно было забрать поток с IntelSat 904 в котором вещаются 15 радиостанции, я провоевал с картой три дня, и плюнул на это дело. Хотя с пакетами поменьше, все прекрасно работает. Самое интересно что сканирование запускалось и выполнялось при одновременном запуске утилиты szap. Темные электрические силы. Edited July 30, 2010 by zevgen Вставить ник Quote
soeti Posted July 30, 2010 Author Posted July 30, 2010 Насколько я понимаю, количество каналов зависит от скорости, а SkyStar2 вроде как не поддерживает большие скоростя выше 30к Вставить ник Quote
soeti Posted July 31, 2010 Author Posted July 31, 2010 Тааак.....вылетела такая бага: После этого b2c2-flexcop: CX24113 successfully attached Jul 28 21:56:24 ubuntu kernel: [76465.213969] b2c2-flexcop: ISL6421 successfully attached Jul 28 21:56:24 ubuntu kernel: [76465.213970] b2c2-flexcop: found 'Conexant CX24123/CX24109' . Jul 28 21:56:24 ubuntu kernel: [76465.213974] DVB: registering adapter 4 frontend 0 (Conexant CX24123/CX24109)... Jul 28 21:56:24 ubuntu kernel: [76465.214033] b2c2-flexcop: initialization of 'Sky2PC/SkyStar 2 DVB-S rev 2.8' at the 'PCI' bus controlled by a 'FlexCopIIb' complete Jul 28 21:56:47 ubuntu kernel: [76487.709249] Contunuity error flag is set Jul 28 21:56:47 ubuntu kernel: [76487.709253] 0 valid irq took place so far Jul 28 21:56:47 ubuntu kernel: [76487.709260] 0 valid irq took place so far Jul 28 21:56:47 ubuntu kernel: [76487.711220] 0 valid irq took place so fa ядро начало лихорадочно сыпать последней фразой и в какой то момент комп ушел в халт. В исходинике драйвера нашел такие строки: /* errors */ + /* errors */ if (v.irq_20c.Data_receiver_error) deb_chk("data receiver error\n"); if (v.irq_20c.Continuity_error_flag) @@ -165,24 +164,29 @@ static irqreturn_t flexcop_pci_isr(int irq, void *dev_id) deb_chk("Transport error\n"); if ((fc_pci->count % 1000) == 0) - deb_chk("%d valid irq took place so far\n",fc_pci->count); + deb_chk("%d valid irq took place so far\n", fc_pci->count); Судя из лога, указатель fc_pci->count пустой fc_pci описывается так: struct flexcop_pci *fc_pci = fc->bus_specific; bus_specific как void* bus_specific; и потом struct flexcop_device *flexcop_device_kmalloc(size_t bus_specific_len) { void *bus; struct flexcop_device *fc = kzalloc(sizeof(struct flexcop_device), GFP_KERNEL); if (!fc) { err("no memory"); return NULL; } bus = kzalloc(bus_specific_len, GFP_KERNEL); if (!bus) { err("no memory"); kfree(fc); return NULL; } fc->bus_specific = bus; return fc; } В гугле подобная проблема не обозначена, кто шарит в си, объясните, где затык. я так понимаю, какая то проблема с выделением памяти Вставить ник Quote
Снежкин Posted July 31, 2010 Posted July 31, 2010 (edited) проблема номер раз: у чипа b2c2 аппаратный демультиплексор, который физически не может прокачать больше 39 PID-ов (9 телеканалов с одной звуковой дорожкой). проблема номер два: чип b2c2 не может прокачать через себя поток больше 35 мегабит (27500, FEC3/4) без потерь. в вашем случае ключевая фраза Jul 28 21:56:47 ubuntu kernel: [76487.709249] Contunuity error flag is set что означает обрыв потока.какое условие у вас не выполняется? Edited July 31, 2010 by Снежкин Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.