Penguin

Turbocomm IA310 HOWTO


Hardware Requirements:

  • Turbocomm IA310 Internal ADSL Modem
  • Spare PCI slot

Software Requirements:

  • Kernel 2.4.2 or 2.4.16+
  • PPP-2.4.x compiled with LinuxPPPoA support

Optional Software:

  • linux atm packages (atm-tools deb in Debian) - I do not know if this is necessary or not - need to double check.

The driver for the IA310 is not in the kernel source, and is not distributed as source code. The best place I found for drivers is http://www.nzdsl.co.nz/software/other/Default.htm.

My Setup:

  • Debian 3.0 (Woody/Stable)
  • Linux Kernel 2.4.19
  • ppp 2.4.0b1

Kernel Requirements:

Code Maturity Level Options

  • Prompt for development and/or incomplete code/drivers [Y?

Networking Options

  • Packet Socket [Y?
  • Packet Socket: mmapped IO [Y?
  • Asynchronous Transfer Mode (ATM) (EXPERIMENTAL) [Y?
  • RFC 1483/2684 Bridged protocols [Y?

Network Device Support

  • PPP (Point-to-Point Protocol) Support [Y?
  • PPP Deflate Compression [Y?
  • PPP Over Ethernet (EXPERIMENTAL) [Y?
  • PPP Over ATM (EXPERIMENTAL) [Y?

Once You have restarted with the new kernel, it's time to install the binary module. The tarball I downloaded was Kernel-2.4.16.tar.gz. It has a few files, however the only ones you need are:

Kernel-2.4.16/2684-PPPoA-PPPoE/2684-PPPoA-PPPoE-User-Guide.pdf
Kernel-2.4.16/2684-PPPoA-PPPoE/itex1577-2.4.16.o

I decided the best place to put the driver was in /lib/modules/2.4.19/kernel/net/drivers. As the module is not compiled for the correct kernel version, you have to force the module to be loaded.

insmod -f itex1577-2.4.16

You should see the following in your messages logfile
Jan 27 16:23:28 dbx-akl-1 kernel: itexadsl: version= 2.2.7.ITEXPC86.0005 , built date= Thu Feb 7 11:16:17 PST 2002 Jan 27 16:23:28 dbx-akl-1 kernel: itexadsl: card# 0, ix=0x0, bus=0x0, fn=0x78, ven=0x1471, dev=0x188 Jan 27 16:23:28 dbx-akl-1 kernel: itexadsl: total 1 card(s) found. Jan 27 16:23:28 dbx-akl-1 kernel: itexadsl: irq=0xc, ioaddr=0xe000, membase=0xd9000000 Jan 27 16:23:28 dbx-akl-1 kernel: itexadsl: card #0 - MAC: 00:30:eb:c0:8b:d7 from eeprom. Jan 27 16:23:28 dbx-akl-1 kernel: itexadsl: ITeX i90234 chip. Jan 27 16:23:28 dbx-akl-1 kernel: init_module: cardcnt = 1 Jan 27 16:23:28 dbx-akl-1 kernel: Into the GenCRC10Table Jan 27 16:23:28 dbx-akl-1 kernel: Finished the GenCRC10Table Jan 27 16:23:30 dbx-akl-1 kernel: itexadsl: modem line disconnected. Jan 27 16:23:34 dbx-akl-1 kernel: card #0 - current modem state : INITIALIZING. Jan 27 16:23:42 dbx-akl-1 kernel: itexadsl: modem line connected. (card_no: 0) Jan 27 16:23:42 dbx-akl-1 kernel: itexadsl: upstream latency - interleaved Jan 27 16:23:42 dbx-akl-1 kernel: itexadsl: downstream latency - interleaved Jan 27 16:23:42 dbx-akl-1 kernel: itexadsl: card #0 - data rate: 800 / 5344 (line rate: 960 / 6296) kbps Jan 27 16:23:42 dbx-akl-1 kernel: connect_bh:tx cell per msec 2 Jan 27 16:23:42 dbx-akl-1 kernel: connect_bh: upstream rate 800 Jan 27 16:23:42 dbx-akl-1 kernel: card #0 - current modem state : SHOWTIME_L0.

At this point, the driver has loaded and is waiting for pppd to be started.

I attempted to find ppp-2.4.1 with LinuxPPPoA support, but this proved to be an impossibility. I found a patch to ppp-2.4.0 and attempted to port it to ppp-2.4.1, but failed. The version of ppp I ended up using was ppp-2.4.0b1. mattb has created a Debian package of the latest pppd with PPPoA support - see the LinuxPPPoA page for details.

The last thing that needed to be done was setup the relevant ppp files.

/etc/ppp/options

  1. Standard Options

lock crtscts hide-password modem lcp-echo-interval 60 lcp-echo-failure 4 noipx noauth defaultroute

  1. This commented out as I use my own DNS server
  2. usepeerdns

proxyarp asyncmap 0

  1. If connection dies, reconnect

persist name yourusername@yourisp user yourusername@yourisp

  1. Required for PPPoA Support

plugin /usr/lib/pppd/plugins/pppoatm.so

  1. VPI/VCI - these are for NZ

0.100

/etc/ppp/pap-secrets

  1. Username Provider Password

yourusername@yourisp * yourpassword

The * means that this password will be used for all connections where the username is yourusername@yourisp. Next? Start pppd from the command line, and all things going well, boom shanka, you will have the following appear in your messages log
Jan 27 16:23:45 dbx-akl-1 kernel: itex_open: opening vpi.vci 0.100 on 0 NIC card Jan 27 16:23:45 dbx-akl-1 kernel: itex_open: target cell rate (UBR) = 0 0 0 on 0 NIC card. Jan 27 16:23:45 dbx-akl-1 kernel: InsertOAMF5Info: Vpi = 0, Vci = 100 Jan 27 16:23:45 dbx-akl-1 kernel: Finish InsertOAMF5Info Jan 27 16:23:45 dbx-akl-1 kernel: Into the CAtmOAMF5Init Jan 27 16:23:45 dbx-akl-1 kernel: Finish CAtmOAMF5Init

and you will have a ppp network device, and a connection to your ISP.