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

Linux и Beholder Columbus PCMCIA TVFM card

Начать новую темуОтветить на тему Страница 1 из 5 [ Сообщений: 66 ] На страницу   1, 2, 3, 4, 5  След.
Версия для печати Пред. тема | След. тема
АвторСообщение
Сообщение Добавлено: 14 апр 2006, 09:12. Заголовок сообщения:  Linux и Beholder Columbus PCMCIA TVFM card
Зарегистрирован:
    14 апр 2006, 08:30
Сообщения: 3
Откуда: Rostov-na-Donu
Попробовал сделать как было описано для 409го, на первый взгляд отличие только в тюнере, для Columbus он ALPS TSEZ1. Порывшись в инете нашел
инфу что это интерфейс этого тюнера такой же как и у ALPS TSBE5 (http://www.spinics.net/lists/vfl/msg15149.html).
Соответственно внес следующие строки в saa7134-cards.c в структуру struct saa7134_board saa7134_boards[]:

Код:
[SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM] = {
      /* maxix */
      .name           = "Beholder Columbus TVFM",
      .audio_clock    = 0x00187de7,
      .tuner_type     = TUNER_ALPS_TSBE5_PAL,
      .radio_type     = UNSET,
      .tuner_addr     = ADDR_UNSET,
      .radio_addr     = ADDR_UNSET,
      .tda9887_conf   = TDA9887_PRESENT,
      .inputs         = {{
           .name = name_tv,
           .vmux = 3,
           .amux = TV,
           .tv   = 1,
      },{
           .name = name_comp1,
           .vmux = 1,
           .amux = LINE1,
      },{
           .name = name_svideo,
           .vmux = 8,
           .amux = LINE1,
      }},
      .radio = {
           .name = name_radio,
           .amux = LINE2,
          },
   },

и соответственно в структуру struct pci_device_id saa7134_pci_tbl[] = {
Код:
   },{
      .vendor       = PCI_VENDOR_ID_PHILIPS,
      .device       = PCI_DEVICE_ID_PHILIPS_SAA7133,
      .subvendor    = 0x0000,
      .subdevice    = 0x5201,
      .driver_data  = SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM,
   },{


После загрузки драйвера ядро сообщает следующее:
Код:
saa7130/34: v4l2 driver version 0.2.14 loaded
ACPI: PCI Interrupt 0000:03:00.0[A] -> Link [LNKF] -> GSI 10 (level, low) -> IRQ 10
saa7133[0]: found at 0000:03:00.0, rev: 240, irq: 10, latency: 64, mmio: 0x34000000
saa7133[0]: subsystem: 0000:5201, board: Beholder Columbus TVFM [card=85,autodetected]
saa7133[0]: board init: gpio is c000
input: saa7134 IR (Beholder Columbus T as /class/input/input3
tuner 1-0060: TEA5767 detected.
tuner 1-0060: chip found @ 0xc0 (saa7133[0])
tuner 1-0060: type set to 62 (Philips TEA5767HN FM Radio)
saa7133[0]: i2c eeprom 00: 00 00 01 52 54 20 00 00 00 00 00 00 00 00 00 01
saa7133[0]: i2c eeprom 10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
aa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
saa7133[0]: registered device radio0

Ну типа все найдено, но нифига при этом не видно через tvtime например...
Стоит отметить, что в винде при запуске устройства на борту Behold Columbus зажигается синяя лампочка.. В Linux такого не происходит, скорее всего дело в активации устройства в момент инициализации, как например это делается в том же коде для SAA7134_BOARD_CINERGY400_CARDBUS:
Код:
case SAA7134_BOARD_CINERGY400_CARDBUS:
      /* power-up tuner chip */
      saa_andorl(SAA7134_GPIO_GPMODE0 >> 2,   0x00040000, 0x00040000);
      saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0x00040000, 0x00000000);


Только вот как это сделать для Columbus.
Ктонибудь, чтонибудь знает про это?
Или ктонибудь пробовал Columbus под Linux.
--------------------------------
ядро 2.6.16 дистриб Fedora Core 5.
----------------------------------
maxix
Профиль 
Сообщение Добавлено: 14 апр 2006, 16:15. Заголовок сообщения:  "синяя лампочка"
Зарегистрирован:
    14 апр 2006, 08:30
Сообщения: 3
Откуда: Rostov-na-Donu
Нашел я на форуме две ссылки на сайт xbt:
http://www.ixbt.com/monitor/behold-columbus.shtml
http://www.ixbt.com/monitor/aver-cardbus-plus.shtml
Посвященную собсно Colambus и очень похожей на нее карточки AVerTV Cardbus Plus.
Она тоже как выяснилось должна активироваться, "включаться по питанию", в момент запуска модуля.
в ядре для нее есть соответствующая строка, куда я и подвязал ранее определенный идентификатор карты Columbus:
Код:
   case SAA7134_BOARD_AVERMEDIA_CARDBUS:
   case SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM:      
      /* power-up tuner chip */
      saa_andorl(SAA7134_GPIO_GPMODE0 >> 2,   0xffffffff, 0xffffffff);
      saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0xffffffff, 0xffffffff);
      msleep(1);
      break;

После запуска модуля карточка активировалась, и даже появился сигнал TV в tvtime. Однако печалит полное отсутствие звука...
И ко всему прочему dmesg дает следующее:

Код:
saa7130/34: v4l2 driver version 0.2.14 loaded
ACPI: PCI Interrupt 0000:03:00.0[A] -> Link [LNKF] -> GSI 10 (level, low) -> IRQ 10
saa7133[0]: found at 0000:03:00.0, rev: 240, irq: 10, latency: 64, mmio: 0x34000000
saa7133[0]: subsystem: 0000:5201, board: Beholder Columbus TVFM [card=85,autodetected]
saa7133[0]: board init: gpio is effffff
tuner 1-0060: Returned more than 5 bytes. It is not a TEA5767
tuner 1-0060: chip found @ 0xc0 (saa7133[0])
tuner 1-0060: type set to 12 (Alps TSBE5)
tuner 1-0061: chip found @ 0xc2 (saa7133[0])
tda9887 1-0042: chip found @ 0x84 (saa7133[0])
saa7133[0]: i2c eeprom 00: 00 00 01 52 54 20 00 00 00 00 00 00 00 00 00 01
saa7133[0]: i2c eeprom 10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
saa7133[0]: registered device radio0


Из всего этого напрягает строка:

Код:
tuner 1-0060: Returned more than 5 bytes. It is not a TEA5767


Ранее отлично определяемый TEA5767, теперь уже не определился.
Похоже что такое включение все же не совсем корректно....
Интересно, а у нашего глубокоуважаемого, производителя нельзя получить такую документацию на програмный интерфейс к этой карточке(порты IO, базовые адреса и пр.)?

PS: Помогите сообществу Linux обзавестись информацией по програмным интерфейсам к вашей продукции, ведь это же и в Ваших интересах.
----------------------------------
maxix
Профиль 
Сообщение Добавлено: 04 июн 2006, 13:40. Заголовок сообщения:  Re: "синяя лампочка"
Зарегистрирован:
    04 июн 2006, 13:24
Сообщения: 1
Здравствкйте.
Скажите, смогли вы разобраться со сзвуком и как?
Профиль 
Сообщение Добавлено: 20 янв 2007, 21:38. Заголовок сообщения: 
Зарегистрирован:
    20 янв 2007, 21:27
Сообщения: 1
Настройка ТV тюнера Behold TV Columbus PCMCIA.
Чипсет SAA7135HL/101
ВЧ-модуль ALPS TSEZ1
FM-радио TEA5767

Этот тюнер практически аналог AverMedia Cardbus E500.
Добавляем в modprobe.conf (статья http://www.linuxtv.org/v4lwiki/index.ph ... Plus_E501R)

options saa7134 card=46 tuner=12 alsa=1
options tda9887 secam=d
install saa7134 /sbin/modprobe tda9887; /sbin/modprobe --ignore-install saa7134; /sbin/modprobe saa7134-alsa && /usr/sbin/alsactl restore >/dev/null 2>&1 || : remove saa7134-alsa { /usr/sbin/alsactl store >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove saa7134-alsa

Используем следующую команду для просмотра TV:

mplayer -vo xv -ao alsa -tv driver=v4l2:device=/dev/video0:width=720:height=576:normid=5:chanlist=russia:immediatemode=0:alsa:adevice=hw.1,0:audiorate=32000:input=1 tv://1

tv://1 - номер канала,
normid=5 - SECAM,
input=1 - номер выхода (composite, tv, s-video).

PS: Иногда пропадает звук, надо вынуть и снова вставить карту.
Профиль 
Сообщение Добавлено: 29 апр 2007, 20:50. Заголовок сообщения:  Проблема со звуком
Зарегистрирован:
    29 апр 2007, 12:35
Сообщения: 1
Спасибо, Дмитрий, огромное :) Но вот у меня проблема. в mplayer'e звук есть, но звук и изображение идут с задержкой в ~1 секунду, что для меня неприемлемо, т.к. использую тюнер как временное решение для игры в XBox360, в других программах(tvtime, kdetv) такой задержки нет, но нет и звука... :( настроить не удалось. Кто-нить знает решение? :)
PS: Под Windows на PAL-60 картинка как-то смазывалась, починить так же не смог, тут всё Ок, очень рад)
Профиль ICQ 
Сообщение Добавлено: 21 июн 2008, 09:57. Заголовок сообщения: 
Зарегистрирован:
    21 июн 2008, 09:44
Сообщения: 9
Доброго всем времени суток!

Использую gentoo с ядром 2.6.25-tuxonice-r4 на ноуте HP 530
Купил вчера сего зверька и ура запустился в tvtime, но без звука!
Предложенное выше не проходит.

pccard: CardBus card inserted into slot 0
yenta EnE: chaning testregister 0xC9, 04 -> 04
Linux video capture interface: v2.00
saa7130/34: v4l2 driver version 0.2.14 loaded
PCI: Enabling device 0000:03:00.0 (0000 -> 0002)
ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 18 (level, low) -> IRQ 18
saa7133[0]: found at 0000:03:00.0, rev: 209, irq: 18, latency: 0, mmio: 0x44000000
PCI: Setting latency timer of device 0000:03:00.0 to 64
saa7133[0]: subsystem: 0000:5201, board: Beholder BeholdTV Columbus TVFM [card=128,autodetected]
saa7133[0]: board init: gpio is 8000
saa7133[0]: i2c eeprom 00: 00 00 01 52 54 20 00 00 00 00 00 00 00 00 00 01
saa7133[0]: i2c eeprom 10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom f0: 42 54 56 30 35 30 30 ff ff ff ff ff ff ff ff ff
tuner' 0-0042: chip found @ 0x84 (saa7133[0])
tda9887 0-0042: tda988[5/6/7] found
Returned more than 5 bytes. It is not a TEA5767
tuner' 0-0060: chip found @ 0xc0 (saa7133[0])
tuner-simple 0-0060: type set to 12 (Alps TSBE5)
tuner' 0-0061: chip found @ 0xc2 (saa7133[0])
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
saa7133[0]: registered device radio0
saa7134 ALSA driver for DMA sound loaded
saa7133[0]/alsa: saa7133[0] at 0x44000000 irq 18 registered as card -1

lsmod | grep alsa
saa7134_alsa 10048 0
saa7134 119380 1 saa7134_alsa
videobuf_dma_sg 9604 2 saa7134_alsa,saa7134
snd_pcm 51332 3 snd_pcm_oss,saa7134_alsa,snd_hda_intel
snd 39076 11 snd_pcm_oss,snd_mixer_oss,snd_seq_oss,snd_seq,snd_seq_device,saa7134_alsa,snd_hda_intel,snd_pcm,snd_timer

Как понял, прочитав эту статью
http://www.pctuner.ru/forums-m-posts-q-3894.html

звук не заработает?

И вообще есть ли пользователи на линукс с этим устройством?
Профиль 
Сообщение Добавлено: 21 июн 2008, 10:22. Заголовок сообщения: 
Зарегистрирован:
    21 июн 2008, 09:44
Сообщения: 9
Ура Звук заработал Когда пересобрал sox и
запустил
sox -c 2 -s -w -r 32000 -t ossdsp /dev/dsp1 -t ossdsp -w -r 32000 /dev/dsp
Профиль 
Сообщение Добавлено: 21 июн 2008, 13:09. Заголовок сообщения: 
Зарегистрирован:
    21 июн 2008, 09:44
Сообщения: 9
А вот как поступить с радио? Как заставить его звучать?

устовлена прога gnomeradio.
Профиль 
Сообщение Добавлено: 23 июн 2008, 15:19. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
писал(а):
А вот как поступить с радио? Как заставить его звучать?

Модуль ядра загружать с такими параметрами:

modprobe saa7134 alsa=1 secam=d

Для запуска радио использовать такой скрипт. Тюнер встает как третья карта в системе, первая обычная звуковая карта, второй у меня винмодем, третья тюнер. Если винмодема нет заменить hw:2,0 на hw:1,0

#!/bin/sh

if [ -f /usr/bin/arecord ]; then
arecord -q -D hw:2,0 -r 32000 -c 2 -f S16_LE | aplay -q - &
fi

if [ -f /usr/bin/gradio ]; then
gradio -f 102.6
fi

pid=`pidof arecord`

if [ $pid ]; then
kill -9 $pid
fi
Профиль 
Сообщение Добавлено: 23 июн 2008, 17:26. Заголовок сообщения: 
Зарегистрирован:
    21 июн 2008, 09:44
Сообщения: 9
Почему то ничего не ловится и постоянные помехи...

Хотя tvtime ловит супер и блекс :-)

А вот проблемы с пультом...
Как заставить, чтобы появилось утройство /dev/input/eventX

Какие должны быть mask_keycode и mask_keyup ?

При выставленных этих значениях
0x001f00; и 0x004000;
получается как будто кто-то жмет все веремя одну клавишу "~"

case SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM:
ir_codes = ir_codes_manli;
mask_keycode = 0x001f00;
mask_keyup = 0x004000;
polling = 50; // ms
break;
}
if (NULL == ir_codes) {
printk("%s: Oops: IR config error [card=%d]\n",
dev->name, dev->board);
return -ENODEV;
}

Спасибо!
Профиль 
Сообщение Добавлено: 24 июн 2008, 02:28. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
elnone,
Однозначно старая версия ядра и модуля saa7134 в нем. Именно для колумбуса были большие исправления кода для работы пульта изначально он полностью не рабочий. В том же патче прошло исправления для радио, сейчас там неправильно задана частота кварца для чипа FM приемника. Все было исправлено и работает. Предлагаю обновиться.
Профиль 
Сообщение Добавлено: 24 июн 2008, 09:39. Заголовок сообщения: 
Зарегистрирован:
    21 июн 2008, 09:44
Сообщения: 9
Доброе утро!

Обновиться до какой версии?
в настоящий момент у меня стоит tuxonice-sources-2.6.25-r5
>>>
Если в вашем дистррибутиве версия ядра выше 2.6.24rc6 то в основном поддержка тюнеров (кроме H6) уже есть - и ничего делать не надо.
<<<
Радио не работает, как понимаю, из-за
"Returned more than 5 bytes. It is not a TEA5767"
То есть в данном случае нужно откатиться или пропатчить - но чем? Конкретного ответа по данной проблеме в интернете не нашел (и на форуме тоже)



Спасибо
Профиль 
Сообщение Добавлено: 24 июн 2008, 13:33. Заголовок сообщения: 
Зарегистрирован:
    21 июн 2008, 09:44
Сообщения: 9
Посмотреле еще раз патч

http://www.igk.ru/linux/files/v4l/v4l2- ... -all.patch
всес изменение
+#if 0 /* Not working for TEA5767 in Beholder Columbus card */
/* It seems that tea5767 returns 0xff after the 5th byte */
if ((buffer[5] != 0xff) || (buffer[6] != 0xff)) {
printk(KERN_WARNING "Returned more than 5 bytes. It is not a TEA5767\n");
return EINVAL;
}
+#endif

Что именно дает эта запись?

Теперь определяется в dmesg
tea5767 0-0060: type set to Philips TEA5767HN FM Radio

Но результат нулевой, не ловиться ни одна радио станция...

BTW: gradio не скачать... и его вообще выкинули из репозитория gentoo/
Профиль 
Сообщение Добавлено: 24 июн 2008, 13:43. Заголовок сообщения: 
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:51
Сообщения: 396
Эта запись это определение чипа FM радио. Патч был для нее, вот полный комплект патчей которые были сделаны 23 апреля. Полная поддержка пультов, радио и ТВ в тюнерах кроме H6. Большие исправления для колумбуса:

diff -r 59987f33c150 linux/drivers/media/video/saa7134/saa7134-i2c.c
--- a/linux/drivers/media/video/saa7134/saa7134-i2c.c Sat Apr 12 15:04:50 2008 +0000
+++ b/linux/drivers/media/video/saa7134/saa7134-i2c.c Wed Apr 23 14:21:08 2008 +1000
@@ -140,6 +140,8 @@ static inline int i2c_is_busy(enum i2c_s
{
switch (status) {
case BUSY:
+ case TO_SCL:
+ case TO_ARB:
return true;
default:
return false;

Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d>

diff -r 59987f33c150 linux/drivers/media/video/tea5767.c
--- a/linux/drivers/media/video/tea5767.c Sat Apr 12 15:04:50 2008 +0000
+++ b/linux/drivers/media/video/tea5767.c Wed Apr 23 14:21:08 2008 +1000
@@ -400,11 +400,13 @@ int tea5767_autodetection(struct i2c_ada
return EINVAL;
}

+#if 0 /* Not working for TEA5767 in Beholder Columbus card */
/* It seems that tea5767 returns 0xff after the 5th byte */
if ((buffer[5] != 0xff) || (buffer[6] != 0xff)) {
printk(KERN_WARNING "Returned more than 5 bytes. It is not a TEA5767\n");
return EINVAL;
}
+#endif

#if 0 /*Sometimes, this code doesn't work */
/* Sets tuner at some freq (87.5 MHz) and see if it is ok */

Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d>

diff -r 59987f33c150 linux/drivers/media/common/ir-keymaps.c
--- a/linux/drivers/media/common/ir-keymaps.c Sat Apr 12 15:04:50 2008 +0000
+++ b/linux/drivers/media/common/ir-keymaps.c Wed Apr 23 14:21:08 2008 +1000
@@ -2089,6 +2089,76 @@ IR_KEYTAB_TYPE ir_codes_behold[IR_KEYTAB

EXPORT_SYMBOL_GPL(ir_codes_behold);

+/* Beholder Intl. Ltd. 2008
+ * Dmitry Belimov d.belimov@google.com
+ * Keytable is used by BeholdTV Columbus
+ * The "ascii-art picture" below (in comments, first row
+ * is the keycode in hex, and subsequent row(s) shows
+ * the button labels (several variants when appropriate)
+ * helps to descide which keycodes to assign to the buttons.
+ */
+IR_KEYTAB_TYPE ir_codes_behold_columbus[IR_KEYTAB_SIZE] = {
+
+ /* 0x13 0x11 0x1C 0x12 *
+ * Mute Source TV/FM Power *
+ * */
+
+ [0x13] = KEY_MUTE,
+ [0x11] = KEY_PROPS,
+ [0x1C] = KEY_TUNER, /* KEY_TV/KEY_RADIO */
+ [0x12] = KEY_POWER,
+
+ /* 0x01 0x02 0x03 0x0D *
+ * 1 2 3 Stereo *
+ * *
+ * 0x04 0x05 0x06 0x19 *
+ * 4 5 6 Snapshot *
+ * *
+ * 0x07 0x08 0x09 0x10 *
+ * 7 8 9 Zoom *
+ * */
+ [0x01] = KEY_1,
+ [0x02] = KEY_2,
+ [0x03] = KEY_3,
+ [0x0D] = KEY_SETUP, /* Setup key */
+ [0x04] = KEY_4,
+ [0x05] = KEY_5,
+ [0x06] = KEY_6,
+ [0x19] = KEY_BOOKMARKS, /* Snapshot key */
+ [0x07] = KEY_7,
+ [0x08] = KEY_8,
+ [0x09] = KEY_9,
+ [0x10] = KEY_ZOOM,
+
+ /* 0x0A 0x00 0x0B 0x0C *
+ * RECALL 0 ChannelUp VolumeUp *
+ * */
+ [0x0A] = KEY_AGAIN,
+ [0x00] = KEY_0,
+ [0x0B] = KEY_CHANNELUP,
+ [0x0C] = KEY_VOLUMEUP,
+
+ /* 0x1B 0x1D 0x15 0x18 *
+ * Timeshift Record ChannelDown VolumeDown *
+ * */
+
+ [0x1B] = KEY_REWIND,
+ [0x1D] = KEY_RECORD,
+ [0x15] = KEY_CHANNELDOWN,
+ [0x18] = KEY_VOLUMEDOWN,
+
+ /* 0x0E 0x1E 0x0F 0x1A *
+ * Stop Pause Previouse Next *
+ * */
+
+ [0x0E] = KEY_STOP,
+ [0x1E] = KEY_PAUSE,
+ [0x0F] = KEY_PREVIOUS,
+ [0x1A] = KEY_NEXT,
+
+};
+EXPORT_SYMBOL_GPL(ir_codes_behold_columbus);
+
/*
* Remote control for the Genius TVGO A11MCE
* Adrian Pardini <pardo>
diff -r 59987f33c150 linux/drivers/media/video/saa7134/saa7134-cards.c
--- a/linux/drivers/media/video/saa7134/saa7134-cards.c Sat Apr 12 15:04:50 2008 +0000
+++ b/linux/drivers/media/video/saa7134/saa7134-cards.c Wed Apr 23 14:21:08 2008 +1000
@@ -30,6 +30,7 @@
#include "tuner-xc2028.h"
#include <media>
#include <media>
+#include "tea5767.h"

/* commly used strings */
static char name_mute[] = "mute";
@@ -1049,7 +1050,7 @@ struct saa7134_board saa7134_boards[] =
},
[SAA7134_BOARD_MANLI_MTV002] = {
/* Ognjen Nastic <ognjen> */
- .name = "Manli MuchTV M-TV002/Behold TV 403 FM",
+ .name = "Manli MuchTV M-TV002",
.audio_clock = 0x00200000,
.tuner_type = TUNER_PHILIPS_PAL,
.radio_type = UNSET,
@@ -1076,7 +1077,7 @@ struct saa7134_board saa7134_boards[] =
},
[SAA7134_BOARD_MANLI_MTV001] = {
/* Ognjen Nastic <ognjen> UNTESTED */
- .name = "Manli MuchTV M-TV001/Behold TV 401",
+ .name = "Manli MuchTV M-TV001",
.audio_clock = 0x00200000,
.tuner_type = TUNER_PHILIPS_PAL,
.radio_type = UNSET,
@@ -2198,6 +2199,8 @@ struct saa7134_board saa7134_boards[] =
},
[SAA7134_BOARD_BEHOLD_409FM] = {
/* <http>, Sergey <skiv> */
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 409 FM",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
@@ -2205,6 +2208,7 @@ struct saa7134_board saa7134_boards[] =
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_tv,
.vmux = 3,
@@ -3615,12 +3619,15 @@ struct saa7134_board saa7134_boards[] =
}},
},
[SAA7134_BOARD_BEHOLD_401] = {
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 401",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_PHILIPS_FQ1216ME,
.radio_type = UNSET,
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_svideo,
.vmux = 8,
@@ -3641,12 +3648,15 @@ struct saa7134_board saa7134_boards[] =
},
},
[SAA7134_BOARD_BEHOLD_403] = {
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 403",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_PHILIPS_FQ1216ME,
.radio_type = UNSET,
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_svideo,
.vmux = 8,
@@ -3663,12 +3673,15 @@ struct saa7134_board saa7134_boards[] =
}},
},
[SAA7134_BOARD_BEHOLD_403FM] = {
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 403 FM",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_PHILIPS_FQ1216ME,
.radio_type = UNSET,
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_svideo,
.vmux = 8,
@@ -3689,6 +3702,8 @@ struct saa7134_board saa7134_boards[] =
},
},
[SAA7134_BOARD_BEHOLD_405] = {
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 405",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
@@ -3696,6 +3711,7 @@ struct saa7134_board saa7134_boards[] =
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_svideo,
.vmux = 8,
@@ -3713,6 +3729,8 @@ struct saa7134_board saa7134_boards[] =
},
[SAA7134_BOARD_BEHOLD_405FM] = {
/* Sergey <skiv> */
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 405 FM",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
@@ -3720,6 +3738,7 @@ struct saa7134_board saa7134_boards[] =
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_svideo,
.vmux = 8,
@@ -3740,6 +3759,8 @@ struct saa7134_board saa7134_boards[] =
},
},
[SAA7134_BOARD_BEHOLD_407] = {
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 407",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
@@ -3747,7 +3768,7 @@ struct saa7134_board saa7134_boards[] =
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
- .gpiomask = 0xc0c000,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_svideo,
.vmux = 8,
@@ -3767,6 +3788,8 @@ struct saa7134_board saa7134_boards[] =
}},
},
[SAA7134_BOARD_BEHOLD_407FM] = {
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 407 FM",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
@@ -3774,7 +3797,7 @@ struct saa7134_board saa7134_boards[] =
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
- .gpiomask = 0xc0c000,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_svideo,
.vmux = 8,
@@ -3799,6 +3822,8 @@ struct saa7134_board saa7134_boards[] =
},
},
[SAA7134_BOARD_BEHOLD_409] = {
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 409",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
@@ -3806,6 +3831,7 @@ struct saa7134_board saa7134_boards[] =
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_tv,
.vmux = 3,
@@ -3822,6 +3848,8 @@ struct saa7134_board saa7134_boards[] =
}},
},
[SAA7134_BOARD_BEHOLD_505FM] = {
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 505 FM/RDS",
.audio_clock = 0x00200000,
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
@@ -3829,6 +3857,7 @@ struct saa7134_board saa7134_boards[] =
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_tv,
.vmux = 3,
@@ -3853,6 +3882,8 @@ struct saa7134_board saa7134_boards[] =
},
},
[SAA7134_BOARD_BEHOLD_507_9FM] = {
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV 507 FM/RDS / BeholdTV 509 FM",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
@@ -3860,6 +3891,7 @@ struct saa7134_board saa7134_boards[] =
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
+ .gpiomask = 0x00008000,
.inputs = {{
.name = name_tv,
.vmux = 3,
@@ -3880,6 +3912,8 @@ struct saa7134_board saa7134_boards[] =
},
},
[SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM] = {
+ /* Beholder Intl. Ltd. 2008 */
+ /*Dmitry Belimov <d> */
.name = "Beholder BeholdTV Columbus TVFM",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_ALPS_TSBE5_PAL,
@@ -3887,23 +3921,28 @@ struct saa7134_board saa7134_boards[] =
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
- .inputs = {{
- .name = name_tv,
- .vmux = 3,
- .amux = TV,
- .tv = 1,
- },{
- .name = name_comp1,
- .vmux = 1,
- .amux = LINE1,
- },{
- .name = name_svideo,
- .vmux = 8,
- .amux = LINE1,
- }},
- .radio = {
- .name = name_radio,
- .amux = LINE2,
+ .gpiomask = 0x000A8004,
+ .inputs = {{
+ .name = name_tv,
+ .vmux = 3,
+ .amux = TV,
+ .tv = 1,
+ .gpio = 0x000A8004,
+ }, {
+ .name = name_comp1,
+ .vmux = 1,
+ .amux = LINE1,
+ .gpio = 0x000A8000,
+ }, {
+ .name = name_svideo,
+ .vmux = 8,
+ .amux = LINE1,
+ .gpio = 0x000A8000,
+ } },
+ .radio = {
+ .name = name_radio,
+ .amux = LINE2,
+ .gpio = 0x000A8000,
},
},
[SAA7134_BOARD_BEHOLD_607_9FM] = {
@@ -5574,7 +5613,6 @@ int saa7134_board_init1(struct saa7134_d
case SAA7134_BOARD_AVERMEDIA_CARDBUS:
case SAA7134_BOARD_AVERMEDIA_CARDBUS_506:
case SAA7134_BOARD_AVERMEDIA_M115:
- case SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM:
case SAA7134_BOARD_AVERMEDIA_A16D:
#if 1
/* power-down tuner chip */
@@ -5586,6 +5624,20 @@ int saa7134_board_init1(struct saa7134_d
saa_andorl(SAA7134_GPIO_GPMODE0 >> 2, 0xffffffff, 0xffffffff);
saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0xffffffff, 0xffffffff);
msleep(10);
+ break;
+ case SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM:
+#if 1
+ /* power-down tuner chip */
+ saa_andorl(SAA7134_GPIO_GPMODE0 >> 2, 0x000A8004, 0x000A8004);
+ saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0x000A8004, 0);
+#endif
+ msleep(10);
+ /* power-up tuner chip */
+ saa_andorl(SAA7134_GPIO_GPMODE0 >> 2, 0x000A8004, 0x000A8004);
+ saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0x000A8004, 0x000A8004);
+ msleep(10);
+ /* remote via GPIO */
+ dev->has_remote = SAA7134_REMOTE_GPIO;
break;
case SAA7134_BOARD_RTD_VFG7350:

@@ -5875,6 +5927,20 @@ int saa7134_board_init2(struct saa7134_d
break;
}
break;
+ case SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM:
+ {
+ struct v4l2_priv_tun_config tea5767_cfg;
+ struct tea5767_ctrl ctl;
+
+ dev->i2c_client.addr = 0xC0;
+ /* set TEA5767(analog FM) defines */
+ memset(&ctl, 0, sizeof(ctl));
+ ctl.xtal_freq = TEA5767_HIGH_LO_13MHz;
+ tea5767_cfg.tuner = TUNER_TEA5767;
+ tea5767_cfg.priv = &ctl;
+ saa7134_i2c_call_clients(dev, TUNER_SET_CONFIG, &tea5767_cfg);
+ }
+ break;
}

if (dev->tuner_type == TUNER_XC2028) {
diff -r 59987f33c150 linux/drivers/media/video/saa7134/saa7134-input.c
--- a/linux/drivers/media/video/saa7134/saa7134-input.c Sat Apr 12 15:04:50 2008 +0000
+++ b/linux/drivers/media/video/saa7134/saa7134-input.c Wed Apr 23 14:21:08 2008 +1000
@@ -331,6 +331,11 @@ int saa7134_input_init1(struct saa7134_d
break;
case SAA7134_BOARD_MANLI_MTV001:
case SAA7134_BOARD_MANLI_MTV002:
+ ir_codes = ir_codes_manli;
+ mask_keycode = 0x001f00;
+ mask_keyup = 0x004000;
+ polling = 50; /* ms */
+ break;
case SAA7134_BOARD_BEHOLD_409FM:
case SAA7134_BOARD_BEHOLD_401:
case SAA7134_BOARD_BEHOLD_403:
@@ -343,7 +348,13 @@ int saa7134_input_init1(struct saa7134_d
case SAA7134_BOARD_BEHOLD_505FM:
case SAA7134_BOARD_BEHOLD_507_9FM:
ir_codes = ir_codes_manli;
- mask_keycode = 0x001f00;
+ mask_keycode = 0x003f00;
+ mask_keyup = 0x004000;
+ polling = 50; /* ms */
+ break;
+ case SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM:
+ ir_codes = ir_codes_behold_columbus;
+ mask_keycode = 0x003f00;
mask_keyup = 0x004000;
polling = 50; // ms
break;
diff -r 59987f33c150 linux/include/media/ir-common.h
--- a/linux/include/media/ir-common.h Sat Apr 12 15:04:50 2008 +0000
+++ b/linux/include/media/ir-common.h Wed Apr 23 14:21:08 2008 +1000
@@ -142,6 +142,7 @@ extern IR_KEYTAB_TYPE ir_codes_tt_1500[I
extern IR_KEYTAB_TYPE ir_codes_tt_1500[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_fusionhdtv_mce[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_behold[IR_KEYTAB_SIZE];
+extern IR_KEYTAB_TYPE ir_codes_behold_columbus[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_pinnacle_pctv_hd[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_genius_tvgo_a11mce[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_powercolor_real_angel[IR_KEYTAB_SIZE];

Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d>

Все эти изменения в том патче таки есть, специально проверил. После его применения при установке карты в слот появится новой устройство /dev/input/eventX с которого пойдут данные от пульта.
Профиль 
Сообщение Добавлено: 24 июн 2008, 15:46. Заголовок сообщения: 
Зарегистрирован:
    21 июн 2008, 09:44
Сообщения: 9
Взял ядро tuxonice-sources-2.6.24-r9
Наложил выше указанны патч,
cd /usr/src/linux/
patch -p1 v4l...patch
лег без сучка :-)

Заработал пульт!!!
по ТВ поймать без кабеля ничего не получилось, буду дома с кабелем стараться...
А вот радио стало г*вниться

Получаю следующую запись
tda9887: ... i2c i/o error: rc == -5 (should be 4)

Что бы это могло бы значить?
Профиль 
Показать сообщения за:  Поле сортировки:    
Начать новую темуОтветить на тему  Страница 1 из 5  [ Сообщений: 66 ]  На страницу   1, 2, 3, 4, 5  След.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 20
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения
Найти:  
Перейти: