Текущее время: 28 мар 2024, 11:37 • Часовой пояс: UTC + 3 часа
Сообщения без ответов | Активные темы

Тюнер X7

Начать новую темуОтветить на тему Страница 2 из 14 [ Сообщений: 204 ] На страницу   Пред.  1, 2, 3, 4, 5 ... 14  След.
Версия для печати Пред. тема | След. тема
АвторСообщение
Сообщение Добавлено: 28 сен 2009, 10:35. Заголовок сообщения: 
Зарегистрирован:
    28 сен 2009, 04:10
Сообщения: 3
писал(а):
2Alexryba: патчи надо накладывать на свежескачанный video4linux репозиторий. Как взять его свежий хорошо описано здесь: http://www.linuxtv.org/wiki/index.php/H ... _Mercurial
Волонтеры для тестов все еще ищутся...

Спасибо за ответ, ступил - забил обновить из репов меркурием.
Все пошло, сорь :)
Профиль 
Сообщение Добавлено: 28 сен 2009, 11:19. Заголовок сообщения: 
Зарегистрирован:
    28 сен 2009, 04:10
Сообщения: 3
писал(а):
2ks5: первый патч включен, см тут http://linuxtv.org/hg/v4l-dvb/rev/632aed299270
...
Волонтеры для тестов все еще ищутся...

Вот что получилось.

Module Size Used by
binfmt_misc 16776 1
ppdev 15620 0
bridge 56212 0
stp 10500 1 bridge
bnep 20224 2
input_polldev 11912 0
video 25360 0
output 11008 1 video
lp 17156 0
parport 42220 2 ppdev,lp
saa7134_alsa 20384 0
ir_kbd_i2c 16400 0
xc5000 19848 1
tuner 30216 1
snd_hda_intel 434100 3
snd_pcm_oss 46336 0
snd_mixer_oss 22656 1 snd_pcm_oss
snd_pcm 83076 3 saa7134_alsa,snd_hda_intel,snd_pcm_oss
snd_seq_dummy 10756 0
snd_seq_oss 37760 0
saa7134 163404 1 saa7134_alsa
snd_seq_midi 14336 0
ir_common 51204 2 ir_kbd_i2c,saa7134
snd_rawmidi 29696 1 snd_seq_midi
joydev 18496 0
v4l2_common 25344 2 tuner,saa7134
videodev 44704 3 tuner,saa7134,v4l2_common
snd_seq_midi_event 15104 2 snd_seq_oss,snd_seq_midi
snd_seq 56880 6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event
hid_apple 14336 0
v4l1_compat 21636 1 videodev
videobuf_dma_sg 20484 2 saa7134_alsa,saa7134
videobuf_core 26244 2 saa7134,videobuf_dma_sg
x38_edac 12552 0
fglrx 1974216 30
snd_timer 29704 2 snd_pcm,snd_seq
snd_seq_device 14988 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq
usbhid 42336 0
tveeprom 20228 1 saa7134
edac_core 47404 1 x38_edac
serio_raw 13444 0
pcspkr 10496 0
agpgart 42696 1 fglrx
snd 62756 16 saa7134_alsa,snd_hda_intel,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
iTCO_wdt 19108 0
soundcore 15200 1 snd
iTCO_vendor_support 11652 1 iTCO_wdt
snd_page_alloc 16904 2 snd_hda_intel,snd_pcm
usb_storage 99648 0
ohci1394 38576 0
ieee1394 94660 1 ohci1394
sky2 54916 0
fbcon 46112 0
tileblit 10752 1 fbcon
font 16384 1 fbcon
bitblit 13824 1 fbcon
softcursor 9984 1 bitblit

TVTIME тормозит жутко, каналов скан не находит...
Ща буду рыть дальше. Вообще любое обращение к тюнеру вызывает подвисы...
Профиль 
Сообщение Добавлено: 29 сен 2009, 03:05. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
Для работы ВЧ блока в тюнер необходимо загрузить прошивку. Взять ее можно здесь http://www.kernellabs.com/firmware/xc50 ... 1.6.114.fw , для автоматической загрузки скаченный файл надо положить в /lib/modules

В dmesg должно быть видно, что прошивка найдена и загружена в тюнер.
Профиль 
Сообщение Добавлено: 29 сен 2009, 20:24. Заголовок сообщения: 
Аватара пользователя
Зарегистрирован:
    10 сен 2009, 13:02
Сообщения: 8
писал(а):
скаченный файл надо положить в /lib/modules

Эм... А чуть конкретнее можно? Там кууча разных папочек :oops:
Профиль 
Сообщение Добавлено: 30 сен 2009, 01:46. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
Надо в /lib/modules сделать каталог firmware если его нет и положить прошивку в него. Т.е. она будет лежать в /lib/modules/firmware/
Профиль 
Сообщение Добавлено: 05 окт 2009, 22:36. Заголовок сообщения: 
Зарегистрирован:
    26 авг 2009, 21:18
Сообщения: 37
Откуда: г.Саранск
писал(а):
2ks5: первый патч включен, см тут http://linuxtv.org/hg/v4l-dvb/rev/632aed299270

Цитата:
Для работы ВЧ блока в тюнер необходимо загрузить прошивку. Взять ее можно здесь http://www.kernellabs.com/firmware/xc50 ... 1.6.114.fw , для автоматической загрузки скаченный файл надо положить в /lib/modules

В dmesg должно быть видно, что прошивка найдена и загружена в тюнер.

Так, проясните пожалуйста:
1) Если патч включен, он уже в ядре? (для X7 -в каком по номеру?)

2) Загрузка прошивки - это особенность X7 ? Прошивку необходимо загружать в дополнение к прикомпиляции к патчу? (В Ubuntu 9.04 папка firmware c различными файлами *.fw , в том числе v4l*.fw находится в /lib/ )

И третий вопрос - у кого получилось запустить X7 (особенно под Ubuntu) - поделитесь пожалуйста.
Последний раз редактировалось ks5 10 окт 2009, 11:25, всего редактировалось 1 раз.
Профиль 
Сообщение Добавлено: 06 окт 2009, 09:27. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
Патчи по Х7 включены в основную ветку video4linux, но не включены в ядро, на данный момент. Поэтому можно взять ядро 2.6.30 и свежий срез video4linux из репозитория чтобы заработало.

В ядре 2.6.31.1 сломаны i2c пульты, починены в 2.6.31.2.
Профиль 
Сообщение Добавлено: 07 окт 2009, 02:55. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
В основную ветку video4linux включены патчи по поддержке FM радио, начало поддержки DVB-T.

Проверку работоспособности DVB-T надо проверять Kaffeine версией не ниже 1.0 pre1, где исправлена ошибка сканирования каналов DVB-T.

tvtime/gradio с X7 работают замечательно.
Профиль 
Сообщение Добавлено: 07 окт 2009, 22:10. Заголовок сообщения: 
Зарегистрирован:
    26 авг 2009, 21:18
Сообщения: 37
Откуда: г.Саранск
В вышедшей недавно бэта-версии Ubuntu 9.10 ядро 2.6.31.2 ( http://www.ubuntu.com/testing/karmic/beta )
29 октября ожидается выход релиза.
2Support: вопрос - есть-ли вероятность, что в релиз войдет ядро / V4L с патчами для X7 ?
Профиль 
Сообщение Добавлено: 08 окт 2009, 02:03. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
Скорей всего нет. Реально может быть в 2.6.32
Профиль 
Сообщение Добавлено: 11 окт 2009, 23:58. Заголовок сообщения: 
Зарегистрирован:
    11 окт 2009, 23:30
Сообщения: 9
Доброго времени суток.
Господа разработчики, не могли бы Вы опубликовать конфигурацию
стенда на котором тестировались патчи отправленные в videolinux?

Поясню суть просьбы: 2-ю неделю бьюсь с попыткой прикрутить X7 в
Ubuntu 9.0.4. Собственно, само прикручивание проходит "на ура".
Последний V.linux дергается Меркурием. Ядро 2.6.30-02063009-generic
с сайта разработчика. Прошивка скачивается и заливается в firmware.
Проверил v4l-dvb - там уже есть "ваш" кусок про X7.
make, make install - все норм, и прошивка всасывается.
Tvtime нормально стартует, ВЧ-блок запускается, кино крутится, звук
есть... Но все это только один раз - второй запуск возможен только после ребута.
Если выйти из Tvtime и стартануть его снова, то будет
только черный экран. Просмотр логов дает 2 ошибки: i2c конфликт и
сообщение что "источник видео-сигнала не найден". Точнее говоря,
антенный вход не обнаруживается и софтина тупо зависает.
Tvtime нормально кэнселится, но после трех-четырех раз подобных
"тыканий" без ребута дело доходит до появления: "Loading AppArmor
module" c фэйлом, что естественно кончается принудительной проверкой системного диска.

И дело не в самом ядре или Tvtime. Этот вывод я делаю на основании
того, что при втыкании в машину другого тюнера (древнего 7130) все
становится на свои места: никаких ошибок и "AppArmor" на той же
сборке.

На всякий случай мое железо: Asus p5e, 4gb, X7, ATI-4770.
Остальное, вроде бы, неважно...
Буду рад любому совету по поводу сложившейся ситуации - уж очень
надоело переключаться в форточки ради просмотра TV :)
Профиль 
Сообщение Добавлено: 12 окт 2009, 04:38. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
Такие симптомы может вызвать следующая ситуация. Драйвера для ВЧ тюнера XC5000 переводят тюнер в режим сна когда никто не использует /dev/video0, в режим сна они переводят его коротким дерганьем ножки RESET чипа, по описанию компании Xciev это должно переводит его в режим сна, но сейчас это тупо сбрасывает чип в ноль. Чтобы тюнер снова заработал он проверяет ответ ВЧ части, если она не отвечает, то снова грузит прошивку и так каждый раз. Загрузка прошивки занимает около 30 сек. Команда программного перевода ВЧ части в режим сна помечена как для удаления поэтому маинтейнер драйвера xc5000 отказался от программного засыпания. Выходом из этой ситуации видится применение опции no_poweroff=1 для модуля xc5000.

Посмотрю какие возможны программные решения. Патч для пробы закину в эту ветку.
Профиль 
Сообщение Добавлено: 12 окт 2009, 05:06. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
Патч сделал, разделил сброс и засыпание. ВЧ часть теперь не сбрасывается, тюнер засыпает, но похоже не просыпается проблема скорей всего в этом. Будем разбираться и исправлять.
Профиль 
Сообщение Добавлено: 12 окт 2009, 06:54. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
Патч для разделения сброса и усыпления ВЧ xc5000, часть отвечающая за усыпление закоментарена. ВЧ тюнер будет работать всегда. Мера временная пока не разберемся с просыпанием.
Код:
diff -r 89b7e6d5854a linux/drivers/media/common/tuners/xc5000.c
--- a/linux/drivers/media/common/tuners/xc5000.c   Tue Oct 06 18:29:59 2009 -0300
+++ b/linux/drivers/media/common/tuners/xc5000.c   Mon Oct 12 07:52:03 2009 +1000
@@ -203,7 +203,7 @@
 static int xc_load_fw_and_init_tuner(struct dvb_frontend *fe);
 static int xc5000_is_firmware_loaded(struct dvb_frontend *fe);
 static int xc5000_readreg(struct xc5000_priv *priv, u16 reg, u16 *val);
-static int xc5000_TunerReset(struct dvb_frontend *fe);
+static int xc5000_TunerReset(struct dvb_frontend *fe, u8 cmd);
 
 static int xc_send_i2c_data(struct xc5000_priv *priv, u8 *buf, int len)
 {
@@ -237,7 +237,7 @@
    msleep(wait_ms);
 }
 
-static int xc5000_TunerReset(struct dvb_frontend *fe)
+static int xc5000_TunerReset(struct dvb_frontend *fe, u8 cmd)
 {
    struct xc5000_priv *priv = fe->tuner_priv;
    int ret;
@@ -249,7 +249,7 @@
                   fe->dvb->priv :
                   priv->i2c_props.adap->algo_data,
                   DVB_FRONTEND_COMPONENT_TUNER,
-                  XC5000_TUNER_RESET, 0);
+                  cmd, 0);
       if (ret) {
          printk(KERN_ERR "xc5000: reset failed\n");
          return XC_RESULT_RESET_FAILURE;
@@ -313,7 +313,7 @@
       len = i2c_sequence[index] * 256 + i2c_sequence[index+1];
       if (len == 0x0000) {
          /* RESET command */
-         result = xc5000_TunerReset(fe);
+         result = xc5000_TunerReset(fe, XC5000_TUNER_RESET);
          index += 2;
          if (result != XC_RESULT_SUCCESS)
             return result;
@@ -980,7 +980,7 @@
    /* According to Xceive technical support, the "powerdown" register
       was removed in newer versions of the firmware.  The "supported"
       way to sleep the tuner is to pull the reset pin low for 10ms */
-   ret = xc5000_TunerReset(fe);
+   ret = xc5000_TunerReset(fe, XC5000_TUNER_SLEEP);
    if (ret != XC_RESULT_SUCCESS) {
       printk(KERN_ERR
          "xc5000: %s() unable to shutdown tuner\n",
diff -r 89b7e6d5854a linux/drivers/media/common/tuners/xc5000.h
--- a/linux/drivers/media/common/tuners/xc5000.h   Tue Oct 06 18:29:59 2009 -0300
+++ b/linux/drivers/media/common/tuners/xc5000.h   Mon Oct 12 07:52:03 2009 +1000
@@ -35,6 +35,7 @@
 
 /* xc5000 callback command */
 #define XC5000_TUNER_RESET      0
+#define XC5000_TUNER_SLEEP      1
 
 /* Possible Radio inputs */
 #define XC5000_RADIO_NOT_CONFIGURED      0
diff -r 89b7e6d5854a linux/drivers/media/video/saa7134/saa7134-cards.c
--- a/linux/drivers/media/video/saa7134/saa7134-cards.c   Tue Oct 06 18:29:59 2009 -0300
+++ b/linux/drivers/media/video/saa7134/saa7134-cards.c   Mon Oct 12 07:52:03 2009 +1000
@@ -6591,6 +6591,15 @@
          msleep(10);
          saa_writeb(SAA7134_SPECIAL_MODE, 0x01);
          msleep(10);
+      }
+      if (command == XC5000_TUNER_SLEEP) {
+      /* Down and UP pheripherial RESET pin for sleep the XC5000 tuner */
+#if 0
+         saa_writeb(SAA7134_SPECIAL_MODE, 0x00);
+         msleep(3);
+         saa_writeb(SAA7134_SPECIAL_MODE, 0x01);
+         msleep(3);
+#endif
       }
       break;
    default:
Профиль 
Сообщение Добавлено: 12 окт 2009, 12:46. Заголовок сообщения: 
Зарегистрирован:
    11 окт 2009, 23:30
Сообщения: 9
Сыпасиба за патчик. Ща ядрышко по-новой соберу и потестим.
Вы практически спасли меня от тихого сумашествия - после всех этих
2-х недельных танцев с бубном я уже начал подозревать себя в
тотальном слабоумии :)
Профиль 
Показать сообщения за:  Поле сортировки:    
Начать новую темуОтветить на тему  Страница 2 из 14  [ Сообщений: 204 ]  На страницу   Пред.  1, 2, 3, 4, 5 ... 14  След.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения
Найти:  
Перейти: