Blog Archive

Wednesday, 1 September 2004

help with compiling DVB drivers for linux

KERNEL : 2.6.7-1.456_4.rhfc2.at

------------------------------------------------------------------------------------------------------------

case $1 in

unload)

modprobe -r dvb_bt8xx

modprobe -r dst

modprobe -r bttv

;;

load)

#modprobe bttv i2c_hw=1 card=0x71

#modprobe dvb-bt8xx

#modprobe dst dst_type=1

modprobe dvb_core dvb_shutdown_timeout=0

modprobe video-buf

modprobe bttv i2c_hw=1 card=0x71

modprobe bt878

modprobe dst dst_type_flags=4

modprobe dvb-bt8xx

;;

*)

echo "error load or unload dummy"

;;

esac



------------------------------------------------------------------------------------------------------

#!/bin/sh

# Create device nodes for the Linux DVB API with DVB_API_VERSION 2.

# The devices created are suitable for most current PC DVB cards,

# i.e. cards having one frontend, one demux and optionally one

# MPEG decoder.

# The script creates devices for four cards by default.



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



for i in `seq 0 3`; do

echo "Creating DVB devices in /dev/dvb/adapter$i"

mkdir /dev/dvb/adapter$i

chmod 755 /dev/dvb/adapter$i

mknod -m 0666 /dev/dvb/adapter$i/video0 c 250 `expr 64 \* $i + 0`

mknod -m 0666 /dev/dvb/adapter$i/audio0 c 250 `expr 64 \* $i + 1`

mknod -m 0666 /dev/dvb/adapter$i/frontend0 c 250 `expr 64 \* $i + 3`

mknod -m 0666 /dev/dvb/adapter$i/demux0 c 250 `expr 64 \* $i + 4`

mknod -m 0666 /dev/dvb/adapter$i/dvr0 c 250 `expr 64 \* $i + 5`

mknod -m 0666 /dev/dvb/adapter$i/ca0 c 250 `expr 64 \* $i + 6`

mknod -m 0666 /dev/dvb/adapter$i/net0 c 250 `expr 64 \* $i + 7`

mknod -m 0666 /dev/dvb/adapter$i/osd0 c 250 `expr 64 \* $i + 8`

chown root.video /dev/dvb/adapter$i/*

done



---------------------------------------------------------------------------------------------------

Patching/updating your kernel source:

1. Download video4linux snapshot from http://dl.bytesex.org/cvs-snapshots/

2. Unpack into a temp directory.

3. Copy the files under video4linux/ to drivers/media/video,

owerwrite anything that is there.

4. Update to latest dvb-kernel CVS and use makelinks to patch your kernel.



Building the modules outside the kernel:

1. Download video4linux snapshot from http://dl.bytesex.org/cvs-snapshots/

2. Unpack into a temp directory.

3. Run make in the video4linux directory, and copy the modules to:

/lib/modules/{kernel-version}/kernel/drivers/media/video

4. Update to latest dvb-kernel CVS

5. Apply the attached patch to dvb-kernel, and copy bttv.h from the

video4linux directory to build-2.6.

6. Run make in build-2.6.