home | feed | david-web@bubblycloud.com

Debian sarge on Shuttle SN45G

Including Hauppauge Nova-T DVB PCI card notes.

This page is mostly for my benefit but it may be of use to someone.

Installing Debian sarge on my Shuttle SN45G

Initial installation and network

I installed from a netinst cd - the first stable sarge release, Debian 3.1rc0a.

With the default 2.4 kernel installer, the netinst CD didn't detect the nVidia nForce onboard ethernet. Needed to boot with the 2.6 installer (used expert26 at boot prompt).

The 2.6 kernel installer detected the network hardware but then the network wouldn't work when it started trying to use DHCP or download packages. There is an eth0 interface shown by ifconfig, but that seems to be the firewire port. I had to go to a shell and do modprobe forcedeth, before the installer got on to network configuration. That gave me an eth1 interface. I can't remember if I had to set up routes on it.

Once I could see the eth1 interface, the installer gave me a choice between eth0 and eth1, so I could just pick eth1 and the network was fine after that.

Video - GeForce2 MX-400

I had no installation problems using the nv driver. It seems to be fine for desktop work, slow for 3d. I'll probably get round to trying nVidia's driver at some point, but I don't use much 3d so I'm not in a hurry.


I had a go with an intel chipset audio driver ?i810-something that the internet seemed to think might work with the nForce chipset. It didn't seem to work, and neither did snd_something that I saw mentioned too. Nothing would give me a /dev/dsp.

I got the nForce drivers from nVidia. The installer needed to compile a module so I had to get the kernel headers package from apt. The package was kernel-headers-2.6.8-2-386, that being the default kernel that had been installed. The nVidia installer found these straight away once they were installed. I just installed the sound driver, not the network driver, since forcedeth seemed to be working fine (and has done since).

After installing I think I had to modprobe nvsound. The sound worked, but after a reboot it had gone silent - I eventually worked out that I had to run nvmixer and turn up the volume. It seems to have kept that setting since.

Booting with combined IDE and SATA

I started with a new SATA disc which I installed onto. Then I wanted to put in an IDE disc out of my old machine. The BIOS recognised both discs but wouldn't boot the SATA disc when the IDE disc was connected, even though the boot order in the BIOS had the SATA disc first.

The only way I managed to get this working was to put the IDE disc back into the old machine and make it bootable by putting grub on it. grub still seems to find its boot menu from the SATA disc.

I think this is an actual motherboard misfeature. Some searching found one or two people with similar problems although not specifically on Shuttle motherboards.

It could just be that I confused the original grub config somehow by adding an extra drive. If so, it stopped it displaying any sign that grub had started.

As you can tell I'm not very clear on what went on here.

TV - Hauppauge Nova-T PCI card.

I seem to need the modules budget, grundig_29504_401, saa7146, and the others they depend on. It isn't obvious that you need budget because lsmod says nothing is using it, but it didn't seem to work without it.

I believe newer Nova-T cards use Philips instead of Grundig, so don't rely on this just because you have a Nova-T.

The default Debian install uses udev. Unfortunately it doesn't seem to create nodes in /dev for the DVB card. I believe this is because the drivers don't support SYSFS. This problem might go away in future if they are upgraded.

To create the device nodes I added the following to /etc/udev/links.conf:

D dvb
D dvb/adapter0
M dvb/adapter0/video0   c 212 0
M dvb/adapter0/audio0   c 212 1
M dvb/adapter0/frontend0        c 212 3
M dvb/adapter0/demux0   c 212 4
M dvb/adapter0/dvr0     c 212 5
M dvb/adapter0/ca0      c 212 6
M dvb/adapter0/net0     c 212 7
M dvb/adapter0/osd0     c 212 8

links.conf is pretty much undocumented - the D's are basically mkdir and the M's are basically mknod.

The major device number 212 is for DVB (n.b. it used to be 250 but has changed). The minor numbers I just copied from what they were on the machine that I used to have the card in.

This was just about right - I also added an init script to do

chgrp video /dev/dvb/adapter0/*
chmod 660 /dev/dvb/adapter0/*

after udev starts. So I end up with:

djf@reginald:~$ ls -l /dev/dvb/adapter0/
total 0
crw-rw----  1 root video 212, 1 2005-06-19 13:20 audio0
crw-rw----  1 root video 212, 6 2005-06-19 13:20 ca0
crw-rw----  1 root video 212, 4 2005-06-19 13:20 demux0
crw-rw----  1 root video 212, 5 2005-06-19 13:20 dvr0
crw-rw----  1 root video 212, 3 2005-06-19 13:20 frontend0
crw-rw----  1 root video 212, 7 2005-06-19 13:20 net0
crw-rw----  1 root video 212, 8 2005-06-19 13:20 osd0
crw-rw----  1 root video 212, 0 2005-06-19 13:20 video0

which seems to work.