[an error occurred while processing this directive] [an error occurred while processing this directive]
[an error occurred while processing this directive]

Conexant ADSL PCI Cards and debian


As I no longer have a Conexant card (it died), I haven't been maintaining this page. You may find that http://www.mikebanahan.com/Linux/conexant_adsl.php provides more up-to-date information on Conexant cards and debian, and http://www.zweije.nl.eu.org/~vzweije/accessrunner/ provides the latest 2.6 drivers.

Original Article:

I bought a Dabs value PCI ADSL card, which is powered by the Conexant chipset. This card is supported under Linux via a binary only driver. This page details my attempts to get it working with Debian Sarge.

For this I'm assuming you're using the standard debian kernel. I've got 2.4.27-1 on my machine, but this page applies to any version similar to that. You'll need the matching kernel headers installed, and symlinked as /usr/src/linux

There are also a few more debian packages you'll need. Ensure you have libatm, libatm-dev, atm-dev and atm-tools. (You don't need br2684ctl in the UK. That handles RFC 2684 bridging over ATM, which isn't used here. Instead, we use PPP over ATM)

First up, you need the binary drivers and their wrapper. There is a version on your install cd - it's a 2.4.3 version zip file, which has a .tar.gz file inside it. However, that version won't work with new kernels, and is a lot of hassle to get working. Instead, you're much better off getting a newer version for the card from Vincent's site. The versions from there work much better, and as of 2009 are still being frequently updated. If you do want to use the old versions, unhide the instructions.

According to this page, you then need to edit LnxDefs.h, and drop in just before the last ifdef #define ENOMEM 12. I've done it and everything works fine, but I don't know for sure if it's needed!

Before running make install, create the directories /etc/rc.d/ and /etc/rc.d/init.d/. Run make install, then delete these. Now, grab the startup script here and pop it in /etc/init.d/. You may wish to use "update-rc.d cnxadslctl start 42 S . stop 42 0 6 ." to make it automatically start up.

Now, you need to configure pppd. At the bottom of /etc/ppp/pap-secrets, add a line of the form
<your user name> <friendly provider name> <password>
(without any quotes, brackets or anything). Now, grab this as /etc/ppp/options. Ensure it points to the right pppoatm plugin. Also, change the username to match your own (user ...), and your providers friendly name from pap-secrets (remotename ....)

For your first connection, you probably want to enable "kdebug 1" in ppp options. Then, tail /var/log/messages and /var/log/debug, and finally run "/etc/init.d/cnxadslctl start"
If you have problems connecting, one of the two log files should tell you what's up.


I have found the following pages useful in writing this:

Questions / Comments

If you have any questions or comments on this page, I hide at Email Address. I can't promise to have answers, but I might know where to start looking!

[an error occurred while processing this directive]