LINUX.ORG.RU

2.6.8.1, 2.6.9 + SkyStar1 (DVB)


0

0

Народ, в чем баг? Никак не могу заставить работать сабж
Карта установлена правильно:

lspci
...
00:09.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)
...

При попытке подгрузить модуль к ядру:

modprobe dvb-ttpci

Module                  Size  Used by
dvb-ttpci              79500  0 
dvb-core               77288  1 dvb-ttpci
saa7146_vv             46656  1 dvb-ttpci
video-buf              16868  1 saa7146_vv
saa7146                15396  2 dvb-ttpci,saa7146_vv
v4l1-compat            13092  1 saa7146_vv
v4l2-common             4896  1 saa7146_vv
videodev                7168  1 saa7146_vv
firmware_class          7232  1 dvb-ttpci
ttpci-eeprom            2176  1 dvb-ttpci
...

при этом в /var/log/messages можно прочитать:

Oct 19 12:48:09 NetSex kernel: Linux video capture interface: v1.00
Oct 19 12:48:09 NetSex kernel: saa7146: register extension 'dvb'.
Oct 19 12:48:09 NetSex kernel: ACPI: PCI interrupt 0000:00:09.0[A] -> GSI 17 (level, low) -> IRQ 17
Oct 19 12:48:09 NetSex kernel: saa7146: found saa7146 @ mem e0da8000 (revision 1, irq 17) (0x13c2,0x0000).
Oct 19 12:48:09 NetSex kernel: DVB: registering new adapter (Siemens/Technotrend/Hauppauge PCI rev1.3).
Oct 19 12:48:09 NetSex kernel: Siemens/Technotrend/Hauppauge PCI rev1.3 adapter 0 has MAC addr = 00:d0:5c:03:3a:8d
Oct 19 12:48:09 NetSex kernel: gpioirq unknown type=0 len=0
Oct 19 12:48:09 NetSex kernel: DVB: AV7111(0) - firm f0240009, rtsl b0250018, vid 71010068, app 8000261c
Oct 19 12:48:09 NetSex kernel: DVB: AV7111(0) - firmware supports CI link layer interface
Oct 19 12:48:09 NetSex kernel: av7110(0): Crystal audio DAC detected
Oct 19 12:48:09 NetSex kernel: videodev: "av7110" has no release callback. Please fix your driver for proper sysfs support, see http://lwn.net/Articles/36850/
Oct 19 12:48:09 NetSex kernel: saa7146_vv: saa7146 (0): registered device video0 [v4l2]
Oct 19 12:48:09 NetSex kernel: av7110: found av7110-0. 

создается только /dev/video0, больше ничего, а должно быть куча устройств в /dev/dvb/
Что я делаю не так? Linux Mandrake Community 10.1 Kernel 2.6.8.1 (все нужные параметры включены)

пробую создать устройства принудительно:

if [ -e /dev/.devfsd ]; then
        echo "It seems you are using devfs. Good!"
	exit 0
fi

# get rid of old DVB API devices; do it twice for good measure...
rm -rf /dev/ost
rm -rf /dev/ost
rm -rf /dev/dvb
rm -rf /dev/dvb

mkdir /dev/dvb
chmod 755 /dev/dvb

	mkdir /dev/dvb/adapter0
	chmod 755 /dev/dvb/adapter0
	mknod -m 0660 /dev/dvb/adapter0/video0    c 212   0
	mknod -m 0660 /dev/dvb/adapter0/audio0    c 212   1
	mknod -m 0660 /dev/dvb/adapter0/frontend0 c 212   3
	mknod -m 0660 /dev/dvb/adapter0/demux0    c 212   4
	mknod -m 0660 /dev/dvb/adapter0/dvr0      c 212   5
	mknod -m 0660 /dev/dvb/adapter0/ca0       c 212   6
	mknod -m 0660 /dev/dvb/adapter0/net0      c 212   7
	mknod -m 0660 /dev/dvb/adapter0/osd0      c 212   8
	chown root.video /dev/dvb/adapter0/*

девайсы появляются
пробуем ./szap -n 2

reading channels from file '/root/.szap/channels.conf'
zapping to 2 'ZDF':
sat 0, frequency = 11954 MHz H, symbolrate 27500000, vpid = 0x006e, apid = 0x0078
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
opening frontend failed: No such device
anonymous

Ответ на: комментарий от anonymous

Повторяю. Берёшь их скрипт для создания файлов устройств и заменяешь в нём число 250 на 212 и запускаешь его заново. Прикол в том, что устройствам dvb выделили официальный вышеупомянутый major number.

timur_dav ☆☆☆☆☆
()
Ответ на: комментарий от timur_dav

Что ты так невнимательно читаешь? смотри: это выдержка из моего первого поста:

пробую создать устройства принудительно:

if [ -e /dev/.devfsd ]; then
        echo "It seems you are using devfs. Good!"
exit 0
fi

# get rid of old DVB API devices; do it twice for good measure...
rm -rf /dev/ost
rm -rf /dev/ost
rm -rf /dev/dvb
rm -rf /dev/dvb

mkdir /dev/dvb
chmod 755 /dev/dvb

mkdir /dev/dvb/adapter0
chmod 755 /dev/dvb/adapter0
mknod -m 0660 /dev/dvb/adapter0/video0    c 212   0
mknod -m 0660 /dev/dvb/adapter0/audio0    c 212   1
mknod -m 0660 /dev/dvb/adapter0/frontend0 c 212   3
mknod -m 0660 /dev/dvb/adapter0/demux0    c 212   4
mknod -m 0660 /dev/dvb/adapter0/dvr0      c 212   5
mknod -m 0660 /dev/dvb/adapter0/ca0       c 212   6
mknod -m 0660 /dev/dvb/adapter0/net0      c 212   7
mknod -m 0660 /dev/dvb/adapter0/osd0      c 212   8
chown root.video /dev/dvb/adapter0/*

anonymous
()
Ответ на: комментарий от timur_dav

А у тебя ядро какое? одно из этих? и работает? как ты его инитишь? или ты в ядро все модули... опиши плиз как у тебя все работает. и желательно содержимое Modules.conf поглядеть ну и все эти из /etc/Modules*

anonymous
()
Ответ на: комментарий от anonymous

/etc/rc.d/init.d/dvb_modules ->

#!/bin/bash

case "$1" in

start)
/sbin/modprobe dvb-core
/sbin/modprobe dvb-ttpci
/sbin/modprobe stv0299
;;

stop)
/sbin/modprobe -r stv0299
/sbin/modprobe -r dvb-ttpci
/sbin/modprobe -r dvb-core
;;

restart)
$0 stop
$0 start
;;

*)
echo "Usage: `basename $0` start | stop | restart"
;;

esac

/etc/rc.d/init.d/dvb_net ->

#!/bin/sh

DIR=/usr/local
PID=3074
DEV_NAME=dvb0_0
IP_ADDR=192.168.0.100
MAC_ADDR=это тебе не нужно, пропиши свой
    
cd $DIR/bin

case "$1" in

start)
$DIR/bin/szap -c /etc/channels.conf -n 1 -x
$DIR/bin/dvbnet -p $PID
/sbin/ifconfig $DEV_NAME $IP_ADDR
/sbin/ifconfig $DEV_NAME hw ether $MAC_ADDR
echo 0 > /proc/sys/net/ipv4/conf/dvb0_0/rp_filter
;;

stop)
/usr/bin/killall szap
/sbin/ifconfig $DEV_NAME down
$DIR/bin/dvbnet -d 0
;;

restart)
$0 stop
$0 start
;;

*)
echo "Usage: `basename $0` start | stop | restart"
;;

esac

Я понимаю, что метод достаточно глуп, но я себе поставил так.
Будет время, тогда переделаю.

timur_dav ☆☆☆☆☆
()
Ответ на: комментарий от timur_dav

так нифига и не запустил я ничего жаль, не буду наверное пользовать пока линух, пока это дело не пофиксят (грешу на то что это все-таки Мандрейк, 10.1 да еще и Комьюнити)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.