Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
TI(4)			    Kernel Interfaces Manual			 TI(4)

NAME
       ti -- Alteon Networks Tigon I and Tigon II Gigabit Ethernet driver

SYNOPSIS
       To  compile  this  driver into the kernel, place	the following lines in
       your kernel configuration file:

	     device ti
	     options TI_PRIVATE_JUMBOS
	     options TI_JUMBO_HDRSPLIT

       Alternatively, to load the driver as a module at	boot time,  place  the
       following line in loader.conf(5):

	     if_ti_load="YES"

DESCRIPTION
       The  ti driver provides support for PCI Gigabit Ethernet	adapters based
       on the Alteon Networks Tigon Gigabit  Ethernet  controller  chip.   The
       Tigon  contains	an  embedded R4000 CPU,	gigabit	MAC, dual DMA channels
       and a PCI interface unit.  The Tigon II contains	 two  R4000  CPUs  and
       other  refinements.   Either  chip  can	be  used in either a 32-bit or
       64-bit PCI slot.	 Communication with  the  chip	is  achieved  via  PCI
       shared  memory and bus master DMA.  The Tigon I and II support hardware
       multicast address filtering, VLAN tag  extraction  and  insertion,  and
       jumbo  Ethernet	frames	sizes up to 9000 bytes.	 Note that the Tigon I
       chipset is no longer in active production: all new adapters should come
       equipped	with Tigon II chipsets.

       While the Tigon chipset supports	10, 100	and 1000Mbps  speeds,  support
       for  10	and 100Mbps speeds is only available on	boards with the	proper
       transceivers.  Most adapters are	only designed  to  work	 at  1000Mbps,
       however	the driver should support those	NICs that work at lower	speeds
       as well.

       Support for jumbo frames	is provided via	 the  interface	 MTU  setting.
       Selecting  an  MTU  larger than 1500 bytes with the ifconfig(8) utility
       configures the adapter to receive and  transmit	jumbo  frames.	 Using
       jumbo frames can	greatly	improve	performance for	certain	tasks, such as
       file transfers and data streaming.

       Header  splitting support for Tigon 2 boards (this option has no	effect
       for the Tigon 1)	can be turned on with  the  TI_JUMBO_HDRSPLIT  option.
       See  zero_copy(9)  for  more discussion on zero copy receive and	header
       splitting.

       The ti driver normally uses jumbo  receive  buffers  allocated  by  the
       sendfile(2) buffer allocator, but can be	configured to use its own pri-
       vate  pool of jumbo buffers that	are contiguous instead of buffers from
       the jumbo allocator, which are made up of multiple page	sized  chunks.
       To turn on private jumbos, use the TI_PRIVATE_JUMBOS option.

       Support	for  vlans is also available using the vlan(4) mechanism.  See
       the vlan(4) man page for	more details.

       The ti driver supports the following media types:

       autoselect	     Enable autoselection of the media	type  and  op-
			     tions.  The user can manually override the	autos-
			     elected  mode  by	adding	media  options	to the
			     /etc/rc.conf file.

       10baseT/UTP	     Set 10Mbps	operation.  The	 mediaopt  option  can
			     also  be  used  to	 select	 either	full-duplex or
			     half-duplex modes.

       100baseTX	     Set  100Mbps  (Fast  Ethernet)  operation.	   The
			     mediaopt option can also be used to select	either
			     full-duplex or half-duplex	modes.

       1000baseSX	     Set  1000Mbps (Gigabit Ethernet) operation.  Only
			     full full-duplex mode is supported	at this	speed.

       The ti driver supports the following media options:

       full-duplex	     Force full	duplex operation

       half-duplex	     Force half	duplex operation.

       For more	information on configuring this	device,	see ifconfig(8).

HARDWARE
       The ti driver supports Gigabit Ethernet adapters	based  on  the	Alteon
       Tigon I and II chips.  The ti driver has	been tested with the following
       adapters:

          3Com	3c985-SX Gigabit Ethernet adapter (Tigon 1)
          3Com	3c985B-SX Gigabit Ethernet adapter (Tigon 2)
          Alteon AceNIC V Gigabit Ethernet adapter (1000baseSX)
          Alteon AceNIC V Gigabit Ethernet adapter (1000baseT)
          Digital EtherWORKS 1000SX PCI Gigabit adapter
          Netgear GA620 Gigabit Ethernet adapter (1000baseSX)
          Netgear GA620T Gigabit Ethernet adapter (1000baseT)

       The  following  adapters	should also be supported but have not yet been
       tested:

          Asante GigaNIX1000T Gigabit Ethernet	adapter
          Asante PCI 1000BASE-SX Gigabit Ethernet adapter
          Farallon PN9000SX Gigabit Ethernet adapter
          NEC Gigabit Ethernet
          Silicon Graphics PCI	Gigabit	Ethernet adapter

IOCTLS
       In addition to the standard socket(2)  ioctl(2)	calls  implemented  by
       most  network  drivers,	the ti driver also includes a character	device
       interface that can be used for  additional  diagnostics,	 configuration
       and  debugging.	 With this character device interface, and a specially
       patched version of gdb(1), the user can debug firmware running  on  the
       Tigon board.

       These ioctls and	their arguments	are defined in the <sys/tiio.h>	header
       file.

       TIIOCGETSTATS	 Return	 card statistics DMAed from the	card into ker-
			 nel memory approximately every	2 seconds.  (That time
			 interval  can	be  changed  via  the	TIIOCSETPARAMS
			 ioctl.)  The argument is struct ti_stats.

       TIIOCGETPARAMS	 Get  various  performance-related firmware parameters
			 that largely affect  how  interrupts  are  coalesced.
			 The argument is struct	ti_params.

       TIIOCSETPARAMS	 Set  various  performance-related firmware parameters
			 that largely affect  how  interrupts  are  coalesced.
			 The argument is struct	ti_params.

       TIIOCSETTRACE	 Tell the NIC to trace the requested types of informa-
			 tion.	The argument is	ti_trace_type.

       TIIOCGETTRACE	 Dump the trace	buffer from the	card.  The argument is
			 struct	ti_trace_buf.

       ALT_ATTACH	 This  ioctl  is  used for compatibility with Alteon's
			 Solaris driver.  They apparently only have one	 char-
			 acter	interface  for debugging, so they have to tell
			 it which Tigon	instance they  want  to	 debug.	  This
			 ioctl is a noop for FreeBSD.

       ALT_READ_TG_MEM	 Read  the  requested  memory  region  from  the Tigon
			 board.	 The argument is struct	tg_mem.

       ALT_WRITE_TG_MEM	 Write to the requested	memory	region	on  the	 Tigon
			 board.	 The argument is struct	tg_mem.

       ALT_READ_TG_REG	 Read  the requested register on the Tigon board.  The
			 argument is struct tg_reg.

       ALT_WRITE_TG_REG	 Write to the requested	register on the	 Tigon	board.
			 The argument is struct	tg_reg.

FILES
       /dev/ti[0-255]  Tigon driver character interface.

DIAGNOSTICS
       ti%d: couldn't map memory  A fatal initialization error has occurred.

       ti%d:  couldn't	map  interrupt	  A fatal initialization error has oc-
       curred.

       ti%d: no	memory for softc struct!  The driver failed to allocate	memory
       for per-device instance information during initialization.

       ti%d: failed to enable memory mapping!  The driver failed to initialize
       PCI shared memory mapping.  This	might happen if	the card is not	 in  a
       bus-master slot.

       ti%d:  no memory	for jumbo buffers!  The	driver failed to allocate mem-
       ory for jumbo frames during initialization.

       ti%d: bios thinks we're in a 64 bit slot, but we	aren't	The  BIOS  has
       programmed  the	NIC  as	 though	 it had	been installed in a 64-bit PCI
       slot, but in fact the NIC is in a 32-bit	slot.  This happens as	a  re-
       sult  of	 a bug in some BIOSes.	This can be worked around on the Tigon
       II, but on the Tigon I initialization will fail.

       ti%d: board self-diagnostics failed!  The ROMFAIL bit in	the CPU	 state
       register	was set	after system startup, indicating that the on-board NIC
       diagnostics failed.

       ti%d:  unknown  hwrev   The driver detected a board with	an unsupported
       hardware	revision.  The ti driver supports revision 4 (Tigon 1) and re-
       vision 6	(Tigon 2) chips	and has	firmware only for those	devices.

       ti%d: watchdog timeout  The device has stopped responding to  the  net-
       work, or	there is a problem with	the network connection (cable).

SEE ALSO
       sendfile(2),  arp(4),  netintro(4),  ng_ether(4), vlan(4), ifconfig(8),
       zero_copy(9)

HISTORY
       The ti device driver first appeared in FreeBSD 3.0.

AUTHORS
       The ti driver was written by Bill Paul  <[email protected]>.   The	header
       splitting  firmware modifications, character ioctl(2) interface and de-
       bugging support were written by Kenneth Merry <[email protected]>.	  Ini-
       tial    zero    copy   support	was   written	by   Andrew   Gallatin
       <[email protected]>.

GNU				 July 16, 2005				 TI(4)

NAME | SYNOPSIS | DESCRIPTION | HARDWARE | IOCTLS | FILES | DIAGNOSTICS | SEE ALSO | HISTORY | AUTHORS

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ti&sektion=4&manpath=FreeBSD+7.2-RELEASE>

home | help