summaryrefslogtreecommitdiff
path: root/sys/dev/ic
AgeCommit message (Collapse)Author
2004-12-26Make debug less verbose. Prompted by mickey@Marco Peereboom
And for the archives: * Peruse the handshake mechanism between driver and firmware from the Linux driver which is maintained by LSI. * Copy only the first 16 bytes of the mailbox (under heavy IO overwriting the 17th byte could cause the firmware to crash). * Limit ULTRA HBAs (a.k.a. schwartz) to one single LD (Logical Drive) because for some reason having more than 1 ccb causes the firmware to hang. Whenever the driver limits the LDs it issues a warning in dmesg.
2004-12-26This should fix long outstanding issues with ami(4). The reportedMarco Peereboom
symptoms that were fixed are: * Very slow throughput * ccb timeout (i.e. ami0: timeout ccb 1) * All IO to ami devices hangs * Only 1 LD (Logical Drive) can be accessed at the same time * System hangs/freezes when running IO to ami cards. Issues it doesn't fix: * Really old ULTRA-2 controllers still crash whenever more than 1 LD are accessed at the same time therefore the driver limits the maximum LDs to 1. Tested by several folks and ok beck@ mickey@
2004-12-25Do not allow loading a font in an used font slot; discussed with and ok mickey@Miod Vallat
2004-12-24Kill bit of ahc cruft. Elminate lots of leading spaces. Other KNF. NoKenneth R Westerback
functional change.
2004-12-23change FXPF_UCODE to mean "firmware load attempted". if the firstTheo de Raadt
loadfirmware() fails because the file is missing, we do not want to try again when the first softclock -> fxp_stats_update -> fxp_init happens later. calling namei in that context is really bad; tested by mcbride
2004-12-23make com[123] work for console on i386, but allow override with CONADDR/CONUNITMarkus Friedl
ok mickey, deraadt
2004-12-22Use vfs firmware loader for fxp(4) interrupt coalescing microcode.Alexander Yurchenko
Initial work by Dmitry Bogdan <bogdan@eastonline.ru> with a help from me and Theo. ok deraadt@
2004-12-22Do a COR reset on prism cards too in the watchdog reset. Helps recoverTodd C. Miller
things when older prism firmware gets wedged.
2004-12-20In the rare case that SCSI_RESET is set, ensure that xs->stimeout isKenneth R Westerback
valid and don't call ahd_setup_data() after ahd_execute_scb() may have freed the scb.
2004-12-20Activate packetized status handling.Kenneth R Westerback
ok tdeval@.
2004-12-19Reduce delta to FreeBSD by adding and using ahd_alloc() rather thanKenneth R Westerback
manually reproducing bits in ahd_pci.c. Just as in ahc, avoid allocating and freeing zero length bits of memory for platform data. Don't try to free all or part of ahd_softc, but correctly free allocated memory for seep_config if necessary. Add a final few fields to ahd_softc and scb in preparation for updating/fixing timeout handling. No functional changes.
2004-12-18Use SIU_TASKMGMT_* defines from scsi_all.h rather than local duplicates.Kenneth R Westerback
2004-12-18use tick instead of ticks. thanks to hannes at mehnert dot org.Reyk Floeter
2004-12-17add missing braces.Brad Smith
From FreeBSD
2004-12-16Delete VL/EISA cruft left over from ahc.Kenneth R Westerback
2004-12-13Oops. Missed one chunk when sync'ing with FreeBSD r1.30.Kenneth R Westerback
2004-12-13Use millisends rather than microseconds in parameters to timerKenneth R Westerback
functions, and ultra-conservative calculations, to avoid possible overflow issues. Also consistant with values passed in scsi requests. Whitespace and comment tweaks. Update FreeBSD tags now that we are sync'd to the latest version. From FreeBSD aic79xx.c r1.33, aic79xx.h r1.23, aic_osm_lib.h r1.4.
2004-12-11Invert the polarity of two tests in the recovery code that could causeKenneth R Westerback
the driver to issue a bus reset more quickly than intended. We want to wait if we find another SCB that could be the cause of this timeout, not proceed to a bus reset. This code is currently inside an #ifdef 0/#endif pair. From FreeBSD aic79xx.c r1.32.
2004-12-11Correct a very rare case where command ordering could be compromisedKenneth R Westerback
by a transaction performing a driver handled message sequence (an scb with the MK_MESSAGE flag set). Full details on changes in FreeBSD commit message. From FreeBSD aic79xx.c r1.30, using microcode generated from just committed new source. Tested in August by marco@.
2004-12-10Factor out repeated code into ahd_done_with_status().Kenneth R Westerback
From FreeBSD aic79xx.h r1.20 and aic79xx.c r1.30.
2004-12-10Include scsi id in debug message for queued SCB's.Kenneth R Westerback
From FreeBSD aic79xx_inline.h r1.16.
2004-12-08Defer reinitialisation of the RU until after the interrupt handler has hadChristopher Pascoe
a chance to process all pending packets, otherwise the chip may overwrite their mbuf clusters after we have freed them. Eliminates a race that can cause random pool corruption when reconfiguring an interface under heavy network load. ok brad@ mcbride@ beck@ deraadt@ dlg@
2004-12-02rev 1.126Brad Smith
Ignore CSR13, CSR14, CSR15 'Media Specific Data' registers for 21143 based cards which use SIA mode. This fixes 10mbit mode for ZNYX ZX346Q cards and other 21143 based cards. rev 1.108 Only use a SIA/SYM media info block if no MII block is detected. The submitter of PR 32118 told me that this patch also fixes autoselecting for znyx 4 port cards (10baseT, 100baseTX did work already). From FreeBSD ok deraadt@
2004-11-28rev 1.74Brad Smith
Fix if_timer logic to make sure that there is always a timeout pending if there are packets queued for transmission. From FreeBSD ok deraadt@
2004-11-24Long time not accurate anymore.Miod Vallat
2004-11-23replace old net/if_ieee80211.h header with the net80211 ones, kernel part.Federico G. Schwindt
millert@ mcbride@ jsg@
2004-11-23store number of supported gpio pinsReyk Floeter
2004-11-23support the gpio found on ath(4) devices.Reyk Floeter
ok grange@
2004-11-23More FreeBSD delta reduction. Use aic_* defines rather than ahd_* oneKenneth R Westerback
line and zero line functions. Fix a potential bug (ahd_set_transaction_status was used where ahd_set_scsi_status was intended) inside a currently #ifdef 0/#endif section of code. No functional changes intended except for a bit of extra locking via ahd_list_lock*. ok marco@.
2004-11-22ad1981 does not like init; from fgsch@Michael Shalayeff
2004-11-21revert part of rev 1.29 which caused a severe performance drop.Brad Smith
ok mcbride@
2004-11-21Fix theo's amd64Marco Peereboom
Fix vmware
2004-11-18a few more codecs from nbsdMichael Shalayeff
2004-11-18More NetBSD cruft removal/FreeBSD delta reduction. Whitespace, function and ↵Kenneth R Westerback
variable shuffle. No functional change.
2004-11-16if_dc.c rev 1.56Brad Smith
Do not call mii_pollstat() from within device tick routines; the status information is updated by mii_tick(). dcphy.c rev 1.13 Work around an Intel 21143 chip bug. Rev 1.56 of if_dc.c removed calls to mii_pollstat() from the dc_tick() routine. dc_tick() is called regularly to detect link up and link down status, especially when autonegotiating. The expectation was that mii_tick() (which is still called from dc_tick()) would update status information automatically in all cases where it would be sensible to do so. Unfortunately, with authentic 21143 chips this is not the case, and the driver never successfully autonegotiates. This is because (despite what it says in the 21143 manual) the chip always claims that link is not present while the autonegotiation enable bit is set. Autonegotation takes place and succeeds, but the driver tests the link bits before it switches off the autonegotiation enable bit, and success is not recognised. The simplest solution is to call dcphy_status() more often for MII_TICK calls by dropping out of the switch statement instead of exiting when we are autonegotiating and link appears to not be present. When autonegotiation succeeds, dcphy_status() will note the speed and fdx/hdx state and turn off the autonegotiation enable bit. The next call to dcphy_status() will notice that link is present, and the dc driver code will be notified. Macronix chips also use this code, but implement link detection as described in the manual, and hence don't need this patch. However, tests on a Macronix 98715AEC-C show that it does not adversely affect them. From FreeBSD ok deraadt@
2004-11-14More NetBSD cruft removal, starting with 'struct ahd_pci_busdata' andKenneth R Westerback
the fallout from that. Ensure pcireg_t variables are being used with pci_conf_read/write functions - found one uint16_t variable (pcix_status) being used to store and restore (32 bit) pcireg_t values. Some KNF. No functional changes.
2004-11-13Eliminate a structure member introduced via NetBSD, now superfluous.Kenneth R Westerback
2004-11-13Eliminate more cruft that crept in during FreeBSD -> NetBSD -> OpenBSDKenneth R Westerback
travels. Simplify create_dmamem/free_dmamem api.
2004-11-11some fixes for beeing compatible with gcc3 as noticed by some people.Reyk Floeter
thanks to Joerg Sonnenberger and Nathan Binkert.
2004-11-08use __packed instead of __attribute__ ((__packed__)) (ok miod@), checkReyk Floeter
possible NULL mac in the keycache function.
2004-11-07struct ucode.length should be in number of elements (u_int32_t), notDaniel Hartmeier
number of bytes. reported by Pyun YongHyeon, patch from mickey@, ok deraadt@
2004-11-06sync pci idsReyk Floeter
2004-11-04fix memory leak on deleting a screen; from janjaap@stack.nl via pr3977Michael Shalayeff
2004-11-03register typoReyk Floeter
2004-11-03oops missed to set devtype here rather than in sti_sgc.c:1.23Michael Shalayeff
2004-11-03knf, use positive error values (suggested by miod@)Reyk Floeter
2004-11-03Revert to 3.6-current code since IBM onboard mpt's act up. Found by pval & ↵Marco Peereboom
deraadt no cookie for me...
2004-11-02Remove __HAVE_NWSCONS and related remnants of pre-wscons days; no functionalMiod Vallat
change.
2004-11-02spacing, beautify dmesg outputReyk Floeter
2004-11-02removed some printfsReyk Floeter