<!-- index.php3 -->
<?php
	$head = "LARTware - Ethernet boards";
	$title = $head;
	$thispage = "ethernet";
	require("table-top.php3");
	require("sidebar.php3");
	require("table-mid.php3");
?>

<h2>Specs</h2>

<p>
The Ethernet is a simple 10Base-T adapter for the LART. It connects through the 
Kitchen Sink Board. The core of the board is a <a href="http://www.crystal.com">
Crystal</a> <a href="http://www.cirrus.com/products/overviews/cs8900a.html">CS8900A</a>
Ethernet chip, which is supported by Linux. There's also the provision for a bootrom.
As there was some room left on the PCB, I added footprints for some FIFOs and a CPLD,
offering an 8-bit parallel output port suitable for, say, digital video I/O.

<h2>Schematics</h2>

<p>
<?php	dlist("ether*"); ?>



<h2>Drivers</h2>

<p>
Both the Ethernet board and the built-in Ethernet on the rev4 KSB need a modified 
Linux kernel driver.

<p>
<?php	dlist("cs89x0*"); ?>

<h2>Usage</h2>

<p>
To use the Ethernet interface, you need to get an Ethernet address. An Ethernet
address, also known as MAC or hardware address, is a unique 48-bit number that
identifies a particular network interface (see 
<a href="http://www.google.com/search?q=ethernet+mac+address">here</a> for more info).
48-bit Ethernet addresses are usually written down as six two-digit hexadecimal numbers 
separated by colons (example: 12:34:56:78:90:AB).
<br>There are two ways to get an Ethernet address for your LART. The safest way is to take an 
old, unused PC Ethernet card and to copy its Ethernet address. The not-so-safe way is to copy
the address from an Ethernet card which is in use on a network that you are 
<em>absolutely sure</em> the LART will never be connected to.
<br><br>Apart from the Ethernet address you will need an IP address, a broadcast address and a
netmask. See <a href="http://www.ibiblio.org/mdw/HOWTO/Net-HOWTO/">the Linux Networking
HOWTO</a> for details. Given these four addresses, you can enable the Ethernet interface with three
commands:
<br><ul>
  <li> insmod cs89x0.o <em>(to insert the driver into the kernel)</em>
  <li> ifconfig eth0 hw ether xx:xx:xx:xx:xx:xx <em>(where xx...xx is your Ethernet address)</em>
  <li> ifconfig eth0 IPADDR broadcast BCAST netmask NETMASK
</ul>

Below is a sample of what it looks like. Ignore the "eth1:" messages; the driver is trying to find
a second Ethernet interface, loudly complaining about its absence.

<?php	hrow("");
	lrow('<pre>
lart #insmod cs89x0.o                                                           
Using cs89x0.o                                                                  
eth0: cs8900 rev H found at 0xf6008300                                          
cs89x0: No EEPROM, relying on command line....                                  
cs89x0 media RJ-45,<4>cs89x0: Unable to autoprobe IRQ                           
what the heck, we just use IRQ 0                                                
 IRQ 0, programmed I/O, MAC 00:00:00:00:00:00                                   
eth1: incorrect signature 0x1c0                                                 
eth1: incorrect signature 0x4848                                                
eth1: incorrect signature 0x4848                                                
cs89x0: probing 0x00008300                                                      
eth1: request_region(0xf6008300, 0x10) failed                                   
cs89x0: probing 0x0000a300                                                      
eth1: incorrect signature 0xffff                                                
cs89x0: probing 0x0000c300                                                      
eth1: incorrect signature 0x21                                                  
cs89x0: probing 0x0000e300                                                      
eth1: incorrect signature 0x0                                                   
cs89x0: no cs8900 or cs8920 detected.  Be sure to disable PnP with SETUP        
lart #ifconfig eth0 hw ether xx:xx:xx:xx:xx:xx                                  
lart #ifconfig eth0 IPADDR broadcast BCAST netmask NETMASK
eth0: using half-duplex 10Base-T (RJ-45)                                        
lart #</pre>', "", "");
	erow();
?>

<br>Note that all you will be able to do at this point is to <em>ping</em> the LART; 
if you want services like a webserver, you will need to install them.


<?php	require("table-btm.php3"); ?>
