BinaryDriverHowto

Revision 7 as of 2005-08-01 01:31:40

Clear message

BinaryDriverHowto

Install the ATI (fglrx) Driver if any of these are true:

  • You know you own a "Radeon" card
  • Your card model is an entire number in the 9xxx series, and is equal to or above 9500 (e.g. 9500, 9550, 9600, 9700, 9800), or your card model begins with 'X' (e.g. X300, X600, X700, X800)
  • cat /proc/pci reveals a card with "ATI" in it

  • You need hardware-accelerated 3D support; bearing in mind that the standard driver does 2D perfectly fine.
    • If you own an ATI card that is not on this list, you already have accelerated 3D.

Install the NVIDIA Driver if any of these are true:

  • You know you own a "GeForce" or a "Quadro" graphics card.

  • You know your card model begins with "4", "FX", or "6".
  • cat /proc/pci reveals a card with "NVIDIA" in it

Install the Matrox driver if any of these are true:

  • You know you own a Matrox Parhelia-based (P650, P750 or Parhelia-512) graphics card.
  • When you first turn the computer on you see a flashing logo with Matrox.
  • lspci | grep -i matrox reveals a card "MGA XXX" where XXX is G650, G750 or Parhelia.

ATI (fglrx) Graphics Card

see ["BinaryDriverHowto/ATI"]

NVIDIA Graphics Card

see ["BinaryDriverHowto/Nvidia"]

Matrox (Parhelia-based) Graphics Card

see ["BinaryDriverHowto/MatroxParhelia"]

Note:

This modem is very common on laptop motherboards. It looks something like this when you type "lspci" in a terminal:

0000:00:1f.6 Modem: Intel Corp. 82801DB (ICH4) AC'97 Modem Controller (rev 03)

Modifying your sources

In order to install this driver (and other non-free drivers that Ubuntu does not support), you will need to enable multiverse. See AddingRepostoriesHowTo

Notes

  1. Unlike the above drivers, this driver is provided by Ubuntu in the multiverse repository and unlike drivers from the restricted repository is basically untouched by the Ubuntu development team. Hence you have to do a bit more work to get this one to go. And if you have trouble with it, the fault lies more with Debian than with Ubuntu, but is somewhat up in the air, since noone has the code.

  2. Every time you update your operating system core (called "the kernel"), you're going to have to run through the "Compiling the driver" procedure below again.

Preliminaries

These are steps you will only have to run through the first time you build this driver, we're just making sure you have all the installed packages you need. If any of these packages are already installed, that's fine, but if not, use Synaptic, aptitude or apt-get to install them.

Make sure you have the most up-to-date kernel available unless there's some reason why you want to run a specific kernel. Install the following package:

  1. linux-ARCH (where ARCH is one of 686, 686-smp, k7 or k7-smp if you use Intel, powerpc for PPC...)

Also, you're going to be compiling this driver, and Ubuntu doesn't install the necessary programs for you to do this by default. So first we need to install several packages:

  1. build-essential
  2. linux-headers-2.6-ARCH
  3. fakeroot

These will pull in some other packages too.

You also need to install the source of the SmartLink driver itself:

  1. sl-modem-daemon
  2. sl-modem-source

You can install all packages listed above at the same time.

Compiling the driver

Run the following steps in a console. Note that whatever directory you're working in will be filled with files. It doesn't matter exactly where this is done as long as you have write access in the directory.

  1. tar -xjf /usr/src/sl-modem.tar.bz2 [this command unpacks all the files we will use into the current directory]

  2. cd modules/sl-modem/debian [change to a particular directory where the instructions for building the module are, because we need to fix them to work with Ubuntu rather than Debian

  3. Edit the control.modules.in file in this directory. In this file, there is a line reading:

    • Depends: kernel-image-_KVERS_

    Change this line to read:
    • Depends: linux-image-_KVERS_

  4. cd ..

  5. fakeroot debian/rules kdist KVERS=`uname -r` KSRC=/usr/src/linux-headers-`uname -r` [this does the actual building of the driver against the current running kernel, it has a lot of output]

  6. cd ..

  7. sudo dpkg -i sl-modem-modules-*.deb [this sometimes freezes, canceling it with Ctrl+C and trying again will eventually work]

Getting the modem to work

This driver seems rather finicky. Basically, if it works, a file called /dev/ttySL0 will exist. If it doesn't work, running sudo /etc/init.d/sl-modem-daemon restart may help, as might running modprobe slamr, but it seems somewhat random. A reboot may help too.

See Also: KeyspanDriverHowto