freebsd-skq/sys/dev/hfa
harti 4bd81e8df0 Make the driver to work with firmware version 4.1.12 (other 4.X.Y should
also do it). Three problems have been encountered:

1. The initialisation command does not work in interrupt mode. Whether
   this is a firmware bug or a feature is not clear. The original Fore
   drivers execute the initialize command always in polling mode, so
   it appears that this behaviour is expected. When we detect a 4.X.Y
   firmware do busy wait on the command status.

2. The command code of the GET_PROM command has changed. This is an
   unofficial command anyway. What was GET_PROM in 3.X.Y is CLEAR_STATS
   in 4.X.Y (although unimplemented in the firmware). We need to
   use the correct code depending on the firmware.

3. The 4.X.Y firmware can set the error flag in the command status
   without also setting the completion flag (as the documenation says).
   Check both variants.

An additional field in the per-card structure fu_ft4 is TRUE when we have
detected a 4.X.Y firmware. Otherwise it is false. The behaviour of the
driver when using a 3.X.Y firmware should be identical to the previous
behaviour.

This change will enable traffic shaping of (at least one) CBR channels.
2003-07-31 14:20:07 +00:00
..
fore_aali.h Make the driver to work with firmware version 4.1.12 (other 4.X.Y should 2003-07-31 14:20:07 +00:00
fore_buffer.c Replace (ab)uses of "NULL" where "0" is really meant. 2002-08-22 21:24:01 +00:00
fore_command.c Make the driver to work with firmware version 4.1.12 (other 4.X.Y should 2003-07-31 14:20:07 +00:00
fore_globals.c - Turn the hea and hfa HARP storage pools into UMA zones and insert 2002-06-14 16:59:38 +00:00
fore_if.c Use a size_t where a buffer length is meant. 2003-07-29 13:33:14 +00:00
fore_include.h - Turn the hea and hfa HARP storage pools into UMA zones and insert 2002-06-14 16:59:38 +00:00
fore_init.c Make the driver to work with firmware version 4.1.12 (other 4.X.Y should 2003-07-31 14:20:07 +00:00
fore_intr.c Make the driver to work with firmware version 4.1.12 (other 4.X.Y should 2003-07-31 14:20:07 +00:00
fore_load.c Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
fore_output.c Adjust some casts to quiet warnings. 2002-11-06 22:58:55 +00:00
fore_receive.c Update netisr handling; Each SWI now registers its queue, and all queue 2003-03-04 23:19:55 +00:00
fore_slave.h
fore_stats.c - Remove DMA_* macros as only one, DMA_GET_ADDR, was used. 2002-06-24 05:03:44 +00:00
fore_stats.h
fore_timer.c
fore_transmit.c - Remove DMA_* macros as only one, DMA_GET_ADDR, was used. 2002-06-24 05:03:44 +00:00
fore_var.h Make the driver to work with firmware version 4.1.12 (other 4.X.Y should 2003-07-31 14:20:07 +00:00
fore_vcm.c
fore.h
hfa_eisa.c - Convert the 'hfa' ATM interface driver to newbus. 2002-04-17 00:26:09 +00:00
hfa_freebsd.c Use more standard variable names for modevent functions. 2002-10-02 04:47:52 +00:00
hfa_freebsd.h - Convert the 'hfa' ATM interface driver to newbus. 2002-04-17 00:26:09 +00:00
hfa_pci.c - Don't call pci_enable_io() in drivers (unless needed for resume). 2003-04-16 03:16:57 +00:00
hfa_sbus.c - Convert the 'hfa' ATM interface driver to newbus. 2002-04-17 00:26:09 +00:00