S2API-Liplianin - DVB-S/S2 драйвера с новым S2API от Igor M. Liplianin - авторский топик

  • Попытался сравнить коды stb6100.c от STM с кодами Ману.
    Функции
    int stb6100_set_freqency (...);
    int stb6100_get_freqency (...);
    Похоже что-то здесь не так.
    Нет ли возможности проверить функцию stb6100_set_freqency ?

  • Мне помогло в мантис увеличение задержки в stb6100.c функция
    static int stb6100_set_frequency(struct dvb_frontend *fe, u32 frequency)
    ....


    regs[STB6100_VCO] &= ~STB6100_VCO_OCK; /* VCO fast search */
    if ((rc = stb6100_write_reg(state, STB6100_VCO, regs[STB6100_VCO])) < 0)
    return rc;


    // msleep(10); /* wait for LO to lock */
    msleep(30); /* wait for LO to lock */

  • а это лечится ? видимо, я что-то накосячил когда переходил на 2.6.27 ядро и собирал deb пакет из исходников для него.



    у меня нет директории /usr/src/linux-kbuild-2.6.27 (после самосборки нового ядра)
    а для предыдущих ядер был такой deb пакет linux-kbuild-2.6.26 в котором и есть /usr/src/linux-kbuild-2.6.26/scripts/genksyms
    а в дебиан-репо нет еще linux-kbuild-2.6.27

  • вылечил сам - не знаю правильно ли
    скопировал 2 файла - genksyms и modpost из usr/src/linux-headers-2.6.27.1 в /usr/src/linux-2.6.27.1
    - усе собралось



    игорь
    ты cx24116 фиксы от Даррона (что уже есть в v4l-dvb) планируешь добавлять ?

  • Сам я сижу сейчас на 2.6.27.3, но Slackware. Перешел на это ядро с трудом, make oldconfig давал потом ядро выдающее kernel panic. Вышел из положения, взяв заведомо рабочую конфигурацию у добрых людей и подправив для себя.


    Пробовал 2.6.28-rc1. Не смог преодолеть через make oldconfig. Комп не грузится - просто висит на определении разделов sda. Опять ядро перелопатили :evil:



    Да я добавлю, но по понятной причине, не так часто буду добавлять. Но помногу :)

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем igorli ().

  • Может не в тему, но может подскажите каким образом с помощью VLC можно принимать S2 каналы?


    Стоит TT-Budget S2-3200/liplianindvb/Debian 2.6.26-1-686/.


    Каналы лочатся, но в VLC пишется следующее:
    [00000275] main input debug: creating access 'dvb' path=''
    [00000287] main access debug: looking for access2 module: 6 candidates
    [00000287] dvb access debug: Opening device /dev/dvb/adapter0/frontend0
    [00000287] dvb access debug: Frontend Info:
    [00000287] dvb access debug: name = STB0899 Multistandard
    [00000287] dvb access debug: type = QPSK (DVB-S)



    Как можно vlc сказать что нужно принимать S2?
    В инете нашел патчик для vlc, но после сборки он не принимает ряд основных параметров (типа --ts-es-id-pid и --sout-standard-access=rtp) Как с этим бороться не понимаю.


    P.S. Если не сюда, извиняйте. Буду рад если направите в правильное место.

  • вам для начала c разработчиками vlc надо решить вопрос - поддерживает ли vlc новое s2 api. Что нужно для этого сделать ? Если установить патч, тогда надо найти такой патч, установить его, скомпилировать патченный vlc и потом уже переходить к следующему шагу.

  • Цитата

    Со слов пользователя Goga777
    Игорь - а ты бы не мог протестировать scan-s2 от Ales на cx24116 картах c дайсеком. У меня что-то этот scan не заработал - пробовал на твоих дровах, на v4l-dvb c моей hvr4000.
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    Может, есть какие особенности с этими картами ? Все 3 положительных отзыва о работе scan2 были от владельцев stb0899 карт


    и не забудь плиз про av7110 патч про который тебе напомнили в листе - без него твой репо у меня не собрался.


    Обновил свой комп. Теперь E7200.
    Обновил репозитарий. Теперь отличия от v4l-dvb - только Mantis, stb6100, stb0899, tda8261. Проверил, что можно. Вроде ничего не поломал.
    Остальное по мере возможности.

  • kernel 2.6.27.4
    Prof Red 7300
    Собрался с последнего repo S2API igorli
    проблемка:


    x88[0]/2: cx2388x 8802 Driver Manager
    vendor=8086 device=244e
    cx88-mpeg driver manager 0000:07:06.2: PCI INT A -> GSI 18 (level, low) -> IRQ 18
    cx88[0]/2: found at 0000:07:06.2, rev: 5, irq: 18, latency: 32, mmio: 0xfd000000
    cx8802_probe() allocating 1 frontend(s)
    vendor=8086 device=244e
    cx8800 0000:07:06.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
    cx88[0]/0: found at 0000:07:06.0, rev: 5, irq: 18, latency: 32, mmio: 0xfc000000
    cx88[0]/0: registered device video1 [v4l2]
    cx88[0]/0: registered device vbi1
    cx88/2: cx2388x dvb driver version 0.0.6 loaded
    cx88/2: registering cx8802 driver, type: dvb access: shared
    cx88[0]/2: subsystem: b033:3033, board: Prof 7300 DVB-S/S2 [card=75]
    cx88[0]/2: cx2388x based DVB/ATSC card
    Invalid probe, probably not a CX24116 device
    cx88[0]/2: frontend initialization failed
    cx88[0]/2: dvb_register failed (err = -22)
    cx88[0]/2: cx8802 probe failed, err = -22


  • Сейчас же посмотрю на это.
    edimode, если ты минчанин, можем по телефону.
    И вообще, охота услышать какого-то линуксоида в живую.

  • давайте скооперируемся - c каким линуксовым софтом можно пообщаться голосом вживую в прямом эфире c коллегами по цеху ?

  • Я не к тому, что лезть сюда буду, а просто отвечая на вопрос, скажу, что пользуюсь Skype.
    Но он, кажется, нормально работает только в 32-битной системе.
    В 64-битной слышно нормально, а тебя вообще не поймут.

  • Пр поводу захвата высокоскоросных каналов.
    Хорошо бы проверить по документации следующий момент
    stb6100.c функции
    static int stb6100_set_frequency(struct dvb_frontend *fe, u32 frequency)
    static int stb6100_get_frequency(struct dvb_frontend *fe, u32 *frequency)


    Частота расчитывается по такой формуле
    frequency= ( Fxtal*(psd2+1) *(Ni+Nf/512))/(2*(odiv+1))

    Смущает разрядность Nf (по тексту nfrac). Он 10-ти разрядный.
    Исходя из разрядности логичнее было бы


    frequency= ( Fxtal*(psd2+1) *(Ni+Nf/1024))/(2*(odiv+1))


    Попробовал.


    fvco = (frequency << (10 + 1 + odiv -psd2 ))/state->reference;
    nfrac = fvco & 0x3ff;
    nint = fvco >> 10;


    regs[STB6100_NF_LSB] = nfrac & 0xff;
    regs[STB6100_K] = (regs[STB6100_K] & ~(STB6100_K_NF_MSB | STB6100_K_PSD2)) | ((nfrac >> 8) & STB6100_K_NF_MSB) | (psd2 << STB6100_K_PSD2_SHIFT);
    regs[STB6100_NI] = nint;


    Проблемы с высокоскоростными каналами (53e и 80e) исчезла.
    Но появились проблемы с низкосортными каналами - нужно сместить на несколько МГц. Может не хватает полосы захвата.

  • Пока (до послезавтра) я буду менять антенну с 0.8м на 1.1м. А потом увидим, что получится.

  • igorli, я минчанин, спасибо за отличную работу.
    Проблема была в конфликте с картой LifeView FlyDVBS. У меня серверная материнка и эта карта стояла на другом PCIX(64bit/100Mhz) мосту. ProfRed 7300 стоит на стандартном PCI32/33. LifeView достал - и frontend cx8802 поднялся. В голове не укладывается как они при этом не поделили ресурсы(кернел 2.6.27?). Кстати, может кому пригодится, ProfRed 7300 не заводится в принципе на PCI-X 64bit/100-133Mhz, я так полагаю, и другие клоны на Conexant'е.


    З.Ы. szap-s2 работает замечательно - отсканил на 60e STV. На винде и у меня и у многих других с этой картой этот транспондер не лочится S.

  • edimode
    Чудесно.
    Китайцы сейчас делают PCIe вариант. Скоро получу. Я понял, что названия еще не имеет, но тоже решение на конексанте. Наверное в массы пойдет опять под разными псевдонимами :)






    skype: liplianin
    mts: 7094515

    Сообщение было отредактировано 2 раз, последнее редактирование пользователем igorli ().

  • Цитата

    Со слов пользователя Goga777
    давайте скооперируемся - c каким линуксовым софтом можно пообщаться голосом вживую в прямом эфире c коллегами по цеху ?


    Есть ещё teamspeak Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу. я надеюсь что он ещё работает и можно канал под это дело запустить.

  • Цитата

    Со слов пользователя schpuntik


    Есть ещё teamspeak Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу. я надеюсь что он ещё работает и можно канал под это дело запустить.


    Дык он Windows, что ли?