isp_fastpost_complete function to include a handle. Do some
isr register debouncing. Use new inline functions for xflist
handle storage. Remove isp_dumpxflist function. Do some fixups
of NVRAM from some broken cards. Use Full Login after LIP option
for FC cards if f/w < 1.17 - there's a f/w bug that causes the
port database to not be actually refreshed for local loop devices!
Do the appropriate endian swizzling for the ICB. Ditto for SNS structures
(these are no-ops until UltraSparc PCI needs them).
defines to get max luns for a card. Make sure the RESULT_QUEUE_LEN is not less
than 64- I've seen breakage with that. Move the temp port database stuff
into the softc (ick). Remove most of the target mode stuff. Make xflist
storage an external outer layer thing (since it will now be allocated based
upon the maximum commands that this HBA can support rather than request
queue size).
the correct "read eeprom" opcode on the RoadRunner (which has a larger
EEPROM, and thus needs a different opcode to make room for the larger
offsets).
- Reset and enable the MII before probing for PHYs, and reset and enable
the MII in epinit().
- Be more conservative when resetting the interface after a transmit error.
Based on PR #8331, from Ryoji KATO.
Closer on 3c574, probably will work fine with the 3CCFEM556BI (which
won't have an older rev TDK Semi PHY, and which was tested by the author
of the PR).
- Mute wave output, not the mixer output, on changing CODEC settings.
- Add support for muting wave output while playback or monitoring is inactive.
- Change formula of calculating gain so that all the levels should be
used equally (the old code uses the min/max gain only at 0/255).
- Cleanup
- In dpt_intr(), if no interrupt is signalled but the HBA has indicated
that more data will be available soon (HA_ST_MORE), save a context switch
and wait for the data.
to the SCSIPI subsystem.
- Determine more characteristics about the board, including the number
of concurrent commands that the processor can execute at a time.
- Rework memory allocation strategy so that we can do dynamic pre-allocation
of resources according to workload.
Thanks to the Linux Buslogic driver for having some useful comments.
until Matt Jacob has a change to update the driver for the latest
firmware, etc. since update device parameters seems to fail once the
system is really up and running, and eventually causes the controller
to wedge. This may be due to a firmware bug.
Per discussion with Matt.
- 82C115 has a 128-bit multicast hash table, not 512-bit.
- Correct the way the MAC address is read from the SROM, after re-reading
the MX98715A Application Note.
Other semi-related changes:
- Differentiate between MX98715 and MX98715A.
- Improve the Macronix link-up/link-down detection.
this by frobbing the 10TCTL register minimally, toggling only the bit we
care about (and hoping that link-capability advertisement happens correctly).
MX98715 can talk to the network now.
- Add a comment about the Macronix MX98713 -- it's almost exactly like
a 21140A, and doens't have the Nway registers that the other Macronix
chips have.
- Bus specific front-end is now responsible for reading EATA configuration
- EATA configuration data is now saved in the softc
- Make synchronous writes work properly
- Don't ignore HBA timeouts in dpt_cmd()
- Prefix eata_cfg's members with `ec_', not `dc_'