summaryrefslogtreecommitdiffstats
path: root/sys/dev
Commit message (Collapse)AuthorAgeFilesLines
* Possess some work from OpenBSD, with some local additions.glebius2006-06-152-293/+382
| | | | | | | | | | | | | | | | | - Add more device IDs, ASIC revisions and chip IDs. - Rewrite a bit code that picks the description for device. - Introduce several macros to shorten quirks for bugs and features.[*] - Use some magic values, that OpenBSD has successfully possessed from Linux (Broadcom supplied) driver. - Remove disabled code that tried to access VPD. [*] The macro that matches Jumbo capable NICs is rewritten to preserve our current behavior. I need clarify whether our or theirs is correct. PR: 68351 (and may be others) Obtained from: OpenBSD, brad@ mostly
* Much to my surprise, IFQ_DRV_DEQUEUE() can return a null mbuf even ifgallatin2006-06-141-13/+11
| | | | | | | | !IFQ_DRV_IS_EMPTY(). Taking this into account, I re-structured the transmit routine so as to avoid adding another if/then in the critical path. Thanks to brueffer for showing my how to test with altq/pf.
* Replace a sc->ifp->if_snd.ifq_drv_maxlen with IFQ_SET_MAXLEN(),gallatin2006-06-141-1/+2
| | | | | | and call IFQ_SET_READY(). Submitted by: brueffer
* Remove the initial myri10ge driver, now that it has beengallatin2006-06-146-4335/+0
| | | | renamed mxge.
* Update the mxge driver.gallatin2006-06-145-1704/+2005
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Update the firmware to the latest released firmware (1.4.3), which corresponds to the firmware in the latest shipping drivers from Myricom. This firmware fixes several bugs in the firmware's PCI-e implementation, and it also changes the driver/firmware interface: o TSO was added, and changed the format of the transmit descriptors. o The firmware no longer counts transmits descriptors, but frames. So the driver needs to keep a count of the number of frames sent. o The weird interrupt strategy changed to a normal receive return ring. This ring is much bigger, and we may be able to support DEVICE_POLLING. o Myricom's header files changed the name of firmware related #define's and enums (s/_MCP_/FW_). - Stopped spamming the console with lots of printfs unless mxge_verbose (or bootverbose) is set. - Made additional information available via sysctl, including the results of a PCI-e DMA benchmark run at device reset. - Decreased the excessively long timeouts when sending commands from 2 seconds to 20ms. Sponsored by: Myricom Inc.
* Fix missing \n and when there are no arg's that means just print outambrisko2006-06-131-8/+11
| | | | | | the description so we don't have to do any more queries. Disable the event query code until it figured out since but it is similar to the AEN detail so we should be able to get that working.
* - Complete the myri10ge -> mxge name change by doing a mechanicalgallatin2006-06-133-443/+425
| | | | | | s/myri10ge/mxge/g replacement in the myri10ge files. A few contuation lines were joined because of the regained columns. - Hook the mxge driver back to the build.
* Need machine/bus.h here tooimp2006-06-121-0/+1
|
* Check in file missed in last commit. It made it into the MFC properlynjl2006-06-121-1/+1
| | | | though.
* MFp4: need machine/bus.h here since we use bus space macros. It used toimp2006-06-121-0/+1
| | | | | | be brought in by name-space polluted sys/rman.h. Pointy hat to: imp
* MFp4:imp2006-06-123-3/+26
| | | | | | | | | | | | o Implement a bunch of sysctl's to report the information that's now always reported. Mvoe reporting of that info to bootverbose, but maybe it can go away entirely. dev.ed.X.type: string name dev.ed.X.TxMem: amount of memory used for tx side of the card dev.ed.X.RxMem: amount of memory used for rx side of the card dev.ed.X.Mem: Total amount of mem on card. o Better comments about where NE-2000 (and clones) gets their MAC address from.
* Better printfimp2006-06-121-1/+1
|
* Minor cleanup of CIS parsing.imp2006-06-121-5/+1
|
* Better error message when the CIS is a non-standards conforming '0'.imp2006-06-121-1/+3
|
* When we can't parse the CIS, note with a warning that the bogus CISimp2006-06-121-5/+2
| | | | | was ignored, rather than freaking out. In the past, it wasn't possible to not parse the CIS, so this changes no behavior.
* Make cm(4) driver MPSAFE.fjoe2006-06-114-234/+164
|
* By default, don't disable ACPI during reboot. This appears to hang somenjl2006-06-111-3/+13
| | | | | | | | | systems. Introduce a new sysctl "hw.acpi.disable_on_reboot" that allows users to re-enable the old behavior in case it's needed for some systems. We never disable in the power-off path. Original approach submitted by Alexander Logvinov <abuse@akavia.ru> with reworking by Jung-uk Kim and myself.
* Add PCI ids for the FC919Xmjacob2006-06-101-0/+8
| | | | MFC after: 1 week
* Hold on to firmware images until the interface detaches sinceiedowse2006-06-102-5/+17
| | | | | | | | | firmware_get() will not work while resuming. Note that we can't simply drop the FIRMWARE_UNLOAD flag, because that will result in a firmware image that can never be unloaded by the user since the firmware subsystem will hold a linker reference to it (it's not clear that firmware_put() without FIRMWARE_UNLOAD ever does quite what you'd want).
* Minor sysctl cleanup. The RW flag means read|write and so it is redundantnjl2006-06-103-10/+8
| | | | to add the RD flag. Also, the debug node does not need to be writable.
* Add ability to reset individual devices and fix SCSI speed negotiation.jkim2006-06-091-50/+48
| | | | Reviewed by: mjacob (initial version)
* Log:davidch2006-06-081-13/+27
| | | | | | | | | | - Removed updates to if_ibytes, if_obytes, if_imcasts, and if_omcasts. These should not be handled by the driver. - Add code to handle excessively fragmented mbufs when mapping TX frames. Reviewed by: ps Approved by: ps (mentor) MFC after: 1 week
* Whitespace.glebius2006-06-081-9/+9
|
* u_intXX -> uintXXglebius2006-06-081-139/+139
|
* Fix the last commit.glebius2006-06-082-3/+8
| | | | | Submitted by: jhb Pointy hat to: glebius
* - style(9) cleanup.glebius2006-06-071-442/+267
| | | | - Fix comments and printf()s about allocating jumbo buffers.
* bandaid type coercion for ia64sam2006-06-071-2/+2
| | | | Submitted by: marcel
* Add device IDs for Linksys PCMPC200 Cardbus card.glebius2006-06-072-0/+12
| | | | | PR: kern/75582 Submitted by: Gary Palmer
* Fix watchdog timeout errors seen on a few systems.yongari2006-06-071-6/+13
| | | | | | | | | | | | | | | | | | SK-NET GENESIS document says reading SK_ISSR should stop generating further interrupts(Since we drop a driver lock before invoking ifp->if_input handler we should disable interrupts in ISR in order to protect integrity of softc from subsequent interrupts). But it seems that there is possibility of loosing interrupts between reading SK_ISSR and determining which interrupts are reported. To cope with the situation we continuously read SK_ISSR register until there are no interrupts. However, it seems that the above work around doesn't fix all cases. To protect watchdog handler from triggering false alarm add a work around code which try to reclaim pending Tx descriptors before resetting hardware. This should fix occasional watchdog timeout errors seen on this driver. Reported by: Frank Behrens <frank AT pinky dot sax dot de > Tested by: Frank Behrens <frank AT pinky dot sax dot de >
* Use the acpi_event_sleep_button_sleep() function instead ofnyan2006-06-061-1/+1
| | | | | | the acpi_SetSleepState(). Submitted by: njl
* Handle errors in the same way it is done in safe(4).pjd2006-06-061-2/+4
|
* Don't increase hst_obytes field twice - it is already done at the beginingpjd2006-06-061-1/+0
| | | | | | of the function. It was wrong anyway, because we also support uio's structures, not only mbufs.
* The procedure of raceless switching between polling mode andglebius2006-06-061-105/+102
| | | | | | | | | | | | | | taskqueued interrupt mode is going to be quite complex. Since the polling mode is considered legacy feature for em(4) driver, the decision is made to make polling and new interrupt handler mutually exclusive, selected at compile time. If kernel is compiled with DEVICE_POLLING, the fast taskqueued interrupt handler code is disabled and the em_poll() and legacy em_intr() functions are enabled. Otherwise, legacy functions are disabled and only em_intr_fast() code is compiled. Discussed with: scottl
* Really fix the typo this time: it should be sc->sc_drvbpf to be verified,avatar2006-06-051-1/+1
| | | | not ic->ic_drvbpf.
* Fixing a typo in rev1.196.avatar2006-06-051-1/+1
|
* Do some source && comment cleanup.mjacob2006-06-052-35/+14
| | | | | | | | | | | | | | | | Clean out the abortive start to homegrown, per-mpt, Domain Validation. This should really be done at a higher level. Use the PIM_SEQSCAN flag for U320- this seems to correct cases of being unable to consistently negotiate U320 in the cases where I'd seen this before. Between this and other recent checkins, this driver is pretty close to being ready for MFC. Reviewed by: scottl, ken, scsi@ MFC after: 1 week
* Fix kernel panic in rt2661_tx_intr() if no frames has been sent.fjoe2006-06-051-0/+4
| | | | Obtained from: OpenBSD (sys/dev/ic/rt2661.c rev. 1.15)
* Add altq(4) support.brueffer2006-06-051-4/+6
| | | | | | Reviewed by: mlaier Approved by: rwatson (mentor) MFC after: 2 weeks
* move hal bus+tag externalization to the bus glue code where it belongs;sam2006-06-053-6/+6
| | | | | | this is a noop on all current freebsd architectures MFC after: 1 month
* Revert the part of rev. 1.3 which changed the software style to bemarius2006-06-051-2/+10
| | | | | | | | set to ILACC rather than PCnet-PCI as VMware doesn't implement ILACC compatibility, resulting in the VMware virtual machine to crash if enabled. Add a comment regarding usage of ILACC vs. PCnet-PCI mode. Reported and tested by: gnn, wsalamon
* Fix a number of cases where ugen would panic, especially when theiedowse2006-06-051-32/+85
| | | | | | | | | device went away while open or if you tried to change the config number while devices were open. Based on the patch from the PR with a number of changes as discussed with the submitter. PR: usb/97271 Submitted by: Anish Mistry
* Add Fn+F7 hotkey (suspend) support.nyan2006-06-051-0/+7
| | | | Tested by: nork
* Use newly added functions to simplify the code.pjd2006-06-043-108/+43
|
* Use defines from cryptodev.h.pjd2006-06-042-4/+4
|
* - Remove HMAC_BLOCK_LEN, it serves no purpose.pjd2006-06-042-8/+12
| | | | - Use defines of used algorithm instead of HMAC_BLOCK_LEN.
* Add a sleep lock that protects access to sequences of blockingiedowse2006-06-042-3/+43
| | | | | | | | | axe_cmd() calls. Without this the device can get confused if multiple threads attempt these operations concurrently. The problem was easily reproducible by running "ifconfig axe0" in a loop because eventually it would conflict with axe_tick_task(). A similar approach is probably required in all USB ethernet drivers.
* Add support for the CRD_F_KEY_EXPLICIT flag for both encryption andpjd2006-06-041-65/+75
| | | | | | authentication operations. Unfortunately I've no hardware, so I only compiled-tested it.
* Add support for the CRD_F_KEY_EXPLICIT flag for both encryption andpjd2006-06-041-67/+79
| | | | authentication operations.
* Don't forget to destroy the sc_freeqlock mutex on detach.pjd2006-06-041-0/+1
|
* Clean up many of the debugging messages and move them under bootverbose.njl2006-06-041-64/+74
| | | | | | | | Move the code for printing timer statistics into a test function instead of an ifdef (accessible via the debug.acpi.hpet_test tunable). Also use defines for register offsets instead of magic values. Courtesy of: slow flight to HK
OpenPOWER on IntegriCloud