aboutsummaryrefslogtreecommitdiff
path: root/sys/dev
Commit message (Collapse)AuthorAgeFilesLines
* Connect the ISA and PCI compatability shims to an option. In this casePeter Wemm2000-03-192-2/+17
| | | | | | | | | | | it's options COMPAT_OLDISA and COMPAT_OLDPCI. This is meant to be a fairly strong incentive to update the older drivers to newbus, but doesn't (quite) leave anybody hanging with no hardware support. I was talking with a few folks and I was encouraged to simply break or disable the shims but that was a bit too drastic for my liking. Notes: svn path=/head/; revision=58287
* Modify if_wi.c to call bpfdetach(ifp) before if_detach(ifp), so as toRobert Watson2000-03-191-0/+2
| | | | | | | | | | | prevent a page fault if the card is ejected while BPF is in use. This could happen if DHCP or tcpdump was in use on that interface during ejection. Other drivers may also require this modification. Reviewed by: wes Notes: svn path=/head/; revision=58274
* Missing pieces of the last commit ;-(Kazutaka YOKOTA2000-03-192-22/+64
| | | | Notes: svn path=/head/; revision=58272
* - Properly keep track of I/O port resources.Kazutaka YOKOTA2000-03-1912-268/+406
| | | | | | | - Use bus_space_read/write() to access the ports. Notes: svn path=/head/; revision=58271
* Remove the old DSC code, it doesn't work anymore.Søren Schmidt2000-03-184-52/+5
| | | | Notes: svn path=/head/; revision=58260
* o Correct the offsets into the syncrate table for paritcularJustin T. Gibbs2000-03-183-95/+161
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | negotiation features (DT, ULTRA2, ULTRA, FAST). The offsets where not properly updated when the DT entry was added and so the driver could attempt to negotiate a speed faster than that supported by the target device or even requested by the user via SCSI-Select settings. * o Update the target mode incoming command queue kernel index value ever 128 commands instead of 32. This means that the kernel will always try to keep its index (as seen on the card - the kernel may actually have cleared more space) 128 commands ahead of where the sequencer is adding entries. o Use the HS_MAILBOX register instead of the KERNEL_TQINPOS location in SRAM to indicate the kernel's target queue possition on Ultra2 cards. This avoids the "pause bug" on these cards and also turns out to be much more efficient. o When enabling or disabling a particular target id for target mode, make sure that the taret id in the SCSIID register does not reference an ID that is not to receive target selections. This is only an issue on chips that support the multiple target id feature where the value in SCSIID will still affect selection behavior regardless of the values in the target id bit field registers. o Remove some target mode debugging printfs. o Make sure that the sense length reported in ATIO commands is always zero. This driver does not, yet, report HBA generated sense information for accepted commands. o Honor the CAM_TIME_INFINITY and CAM_TIME_DEFAULT values for the CCB timeout field. o Make the driver compile with AHC_DEBUG again. * Noticed by: Andrew Gallatin<gallatin@cs.duke.edu> Notes: svn path=/head/; revision=58258
* KNR -> ANSI function definition in two places. This matches the rest ofJustin T. Gibbs2000-03-181-5/+2
| | | | | | | the code in this driver. Notes: svn path=/head/; revision=58253
* Print the PCI resources even if they are disabled. This shows more clearlyNick Hibma2000-03-181-6/+12
| | | | | | | when the BIOS is forgetful about initialising the USB controllers. Notes: svn path=/head/; revision=58244
* Make the Y-E Data PCMCIA floppy of the Toshiba Libretto work underJoerg Wunsch2000-03-181-244/+243
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -current. It doesn't work yet as stable as the 3.x/PAO version of the driver does, however, i get occasional `FDC direction bit not set' and other weird messages, but it basically works at least. The old (defunct) #ifdef FDC_YE stuff has been eliminated completely now, PCMCIA-FDC specific functions have been implemented differently where needed. Unfortunately, due to the fact that the traditional PeeCee FDC with its funny non-contiguous register space (one register for WD1003 harddisk controllers is interleaved into the FDC register set), and Peter's subsequent changes involving two different bus space handles for normal FDCs, the changes required for the Y-E stuff are more complex than i'd love them to be. I've done my best to keep the logic for normal FDCs intact. Since the Y-E FDC seems to lose interrupts after a FDC reset sometimes, i've also replaced the timeout logic in fd_turnoff() to generate an artificial pseudo interrupt in case of a timeout while the drive has still outstanding transfers waiting. This avoids the total starvation of the driver that could be observed with highly damaged media under 3.x/PAO. This part of the patch has been revied by bde previously. I've fixed a number of occasions where previous commits have been missing the encapuslation of ISA DMA related functions inside FDC_NODMA checks. I've added one call to SET_BCDR() during preparation of the format floppy operation. Floppy formatting has been totally broken before in 3.x/PAO (garbage ID fields have been written to the medium, causing `wrong cylinder' errors upon media reading). This is just black magic, i don't have the slightes idea _why_ this needs to be but just copied over the hack that has been used by the PAO folks in the normal read/write case anyway. The entired device_busy() stuff seems to be pointless to me. In any case, i had to add device_unbusy() calls symmetrical to the device_busy() calls, otherwise the PCMCIA floppy driver could never be deactivated. (As it used to be, it caused a `mark the device busier and busier' situation.) IMHO, all block device drivers should be marked busy based on active buffers still waiting for the driver, so the device_unbusy() calls should probably go to biodone(). Only one other driver (whose name escapes me at the moment) uses device_busy() calls at all, so i question the value of all this... I think this entire `device busy' logic simply doesn't fit for PCMCIA &al. It cannot be the decision of some piece of kernel software to declare a device `busy by now, you can't remove it', when the actual physical power of removing it is the user pulling the card. The kernel simply has to cope with the removal, however busy the device might have been by the time of the removal, period. Perhaps a force flag needs to be added? Upon inserting the card a second time, i get: WARNING: "fd" is usurping "fd"'s cdevsw[] WARNING: "fd" is usurping "fd"'s bmaj I suspect this is related to the XXX comment at the call to cdevsw_add(). Does anybody know what the correct way is to cleanup this? Notes: svn path=/head/; revision=58240
* The completely rewritten USB Mass Storage driver. It supports the followingNick Hibma2000-03-182-427/+2188
| | | | | | | | | | | | | | | devices: Tested: Zip 100 USB drive Y-E Data USB floppy drive Untested: (let me know whether or not it works!) TEAC USB floppy drive Zip 250 USB drive Notes: svn path=/head/; revision=58237
* - Fix bugs when painting border and the mouse cursor in the rasterKazutaka YOKOTA2000-03-182-48/+60
| | | | | | | text mode. Notes: svn path=/head/; revision=58232
* - Add Support for the following PS/2 mice:Kazutaka YOKOTA2000-03-183-87/+401
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Microsoft IntelliMouse Explorer: 2 buttons on top, 2 side buttons and a wheel which also acts as the middle button. The mouse is recognized as "IntelliMouse Explorer". - Genius NetScroll Optical: 2 buttons on top, 2 side buttons and a wheel which also acts as the middle button. The mouse is recognized as "NetMouse/NetScroll Optical". - MouseSystems SmartScroll Mouse (OEM from Genius?): 3 buttons on top, 1 side button and a wheel. The mouse is recognized as Genius "NetScroll". - IBM ScrollPoint: 2 buttons on top and a stick between the buttons. The stick can perform "horizontal scroll" in W*ndows environment. The horizontal movement of the stick is detected. It is currently mapped to the Z axis movement in the same way as the first wheel. The mouse is recognized as "MouseMan+", as it is considered to be a variation of MouseMan. - A4 Tech 4D and 4D+ mice. These mice have two wheels! The movement of the second wheel is reported as the Z axis movement in the same way as the first wheel. These mice are recognized as "4D Mouse" and "4D+ Mouse". - Tweak IntelliMouse support code a bit so that less-than-compatible wheel mice can work properly with the psm driver. - Add driver configuration flags which correspond to the kernel options PSM_HOOKRESUME and PSM_RESETAFTERSUSPEND, so that we don't need to recompile the kernel when we need these functions. - Properly keep track of the irq resource. - Add a watchdog timer in case interrupts are lost (experimental). - Add `detach' function (experimental). Notes: svn path=/head/; revision=58230
* - `Newbus'ified the driver.Kazutaka YOKOTA2000-03-181-123/+282
| | | | | | | | | | | - Properly keep track of resources (I/O ports and irq). - Use bus_space_read/write() to access the ports. - Add PnP IDs. - Add a watchdog timer in case interrupts are lost (experimental). - Add `detach' function (experimental). Notes: svn path=/head/; revision=58229
* Get rid of the last remnants of powerhook abuse.Nick Hibma2000-03-185-11/+8
| | | | Notes: svn path=/head/; revision=58228
* Update to the latest development version of the Mylex driver. Changes inMike Smith2000-03-186-162/+704
| | | | | | | | | | | | | | | | | | | | | this version include: - Support for version 2.x firmware (2.42 or later recommended). This means we are the only open-source driver supporting these adapters. This code has only been tested on a Digital KZPCA adapter in an Alpha system, but is believed to be correct. NOTE: EISA adapters are not yet supported. - Support the BIOS/Firmware initialisation handshake protocol. This allows the driver to bring the card up to operational state even if the BIOS can't be run (eg. if it's an x86 BIOS in an Alpha system). - A working command pasthrough interface. This allows a user-space configuration tool (under development) to issue arbitrary commands to the controller or to devices in the system. Notes: svn path=/head/; revision=58188
* Add another device/vendor code combination to support yet anotherBill Paul2000-03-181-0/+1
| | | | | | | KLSI-based device (Skymaster DHU-0404). Notes: svn path=/head/; revision=58187
* Update Tigon firmware yet again, this time to version 12.3.20.Bill Paul2000-03-183-1589/+1593
| | | | Notes: svn path=/head/; revision=58186
* Changed key assign for PC-98.Yoshihiro Takahashi2000-03-161-5/+5
| | | | | | | | | | | | | | | | shift+TAB : BackTab HELP : End STOP : ScrollLock shift+STOP : ScreenSaver GRPH +STOP : Suspend(susp) COPY : NextScreen(nscr) ctrl +COPY : Debug NFER : Meta Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata) Notes: svn path=/head/; revision=58144
* Please welcome the URio driver. Written byNick Hibma2000-03-162-0/+625
| | | | | | | Iwasa Kazmi <kzmi\@ca2.so-net.ne.jp> Notes: svn path=/head/; revision=58133
* Alpha 8200 port: Until we fix things better, determine which alpha CPUMatt Jacob2000-03-151-9/+37
| | | | | | | | | | platform we're running on so we know how many bits to reserve at the top end for the 'hose' value. It turns out that there's *just* enough room to support all possible hoses on TurboLaser. Reviewed by: gallatin@freebsd.org, dfr@free3bsd.org Notes: svn path=/head/; revision=58124
* Add the TD's to the hash when they are created not when they are used.Nick Hibma2000-03-152-16/+44
| | | | | | | | | | | | | This makes it possible to handle the done queue even when the end of tail TD has ended up on the done queue as well (the xfer in this case is NULL but the next field is valid, so we simply skip that element. Make sure we mark all the handled transfers as handled. Stop using powerhooks. They are a NetBSD-ism. Notes: svn path=/head/; revision=58122
* Add an ID for the SiS 5571.Nick Hibma2000-03-152-6/+12
| | | | | | | Remove the unnecessary use of parent. Notes: svn path=/head/; revision=58121
* powerhooks no longer usedNick Hibma2000-03-151-0/+2
| | | | Notes: svn path=/head/; revision=58120
* Make the makefile work properly.Nick Hibma2000-03-151-1/+6
| | | | Notes: svn path=/head/; revision=58119
* Do not use the powerhooks at all, instead of abusing and empty #define.Nick Hibma2000-03-151-2/+4
| | | | Notes: svn path=/head/; revision=58118
* Spelling mistakeNick Hibma2000-03-151-1/+1
| | | | Notes: svn path=/head/; revision=58117
* Never stop the control pipeNick Hibma2000-03-151-3/+4
| | | | Notes: svn path=/head/; revision=58116
* Regen.Nick Hibma2000-03-152-2/+18
| | | | Notes: svn path=/head/; revision=58114
* Add Y-E Data floppy drive.Nick Hibma2000-03-151-0/+4
| | | | Notes: svn path=/head/; revision=58108
* Update the e-mail address to a valid one.Nick Hibma2000-03-151-1/+1
| | | | Notes: svn path=/head/; revision=58107
* roll platform versions to 5.0Matt Jacob2000-03-151-2/+2
| | | | Notes: svn path=/head/; revision=58100
* I _HATE_ crashes. The lptread() call needs to check LP_BYPASS, becauseBrian Feldman2000-03-151-0/+5
| | | | | | | | if one tries to use read() on an LP_BYPASS'd dev_t, the softc will be initialized mainly with NULLs, so... Notes: svn path=/head/; revision=58082
* Don't do bus resets for ULTRA2 or later cards because what seems toMatt Jacob2000-03-131-1/+4
| | | | | | | | happen currently is that several commands issued *after* the bus reset are then reported destroyed. Notes: svn path=/head/; revision=58000
* Add 'bootverbose' debug messages to assist with tracking down problemsMatthew N. Dodd2000-03-131-5/+27
| | | | | | | some users have encountered. Notes: svn path=/head/; revision=57989
* Cleanup sweep.Søren Schmidt2000-03-136-54/+50
| | | | Notes: svn path=/head/; revision=57988
* Initial ifmedia support. Once I figure out autoselection I'll put theMatthew N. Dodd2000-03-132-15/+113
| | | | | | | | | | | | rest of the code in (so changing media actually works.) Add a few more register definitions for use with this and other new code. Print a few details in the probe message; this should be useful in bug reports and such but should not add to the clutter. Notes: svn path=/head/; revision=57987
* Enable disksort the right way both on ATA disks and ATAPI devices.Søren Schmidt2000-03-138-66/+75
| | | | Notes: svn path=/head/; revision=57985
* Copy how everyone else is doing packet transmission. (NetBSD mostly)Matthew N. Dodd2000-03-131-6/+8
| | | | | | | | I've been running this for a month or so and have had no problems with it and if I recall it was my last speed tweak. Holler if this breaks anything. Notes: svn path=/head/; revision=57984
* Follow the docs a bit more in epstop() with respect to delays.Matthew N. Dodd2000-03-131-0/+5
| | | | | | | Trivial formatting. Notes: svn path=/head/; revision=57983
* Get rid of table lookup in favor of just subtracting. Everyone elseMatthew N. Dodd2000-03-131-3/+1
| | | | | | | does it like this and I see no point in being different. Notes: svn path=/head/; revision=57982
* Call epstop() in ep_attach(). While this shouldn't be necessary we'llMatthew N. Dodd2000-03-131-0/+2
| | | | | | | | do it just in case. (Actually, with PCMCIA cards we can get in a state where it may be required.) Notes: svn path=/head/; revision=57981
* Set the RF_SHAREABLE flage when we allocate an IRQ.Matthew N. Dodd2000-03-131-0/+4
| | | | Notes: svn path=/head/; revision=57980
* Stop isadma from abusing the B_READ, B_RAW and B_WRITE flags.Poul-Henning Kamp2000-03-134-9/+9
| | | | | | | | Define ISADMA_{READ,WRITE,RAW} macros with the same numeric values as the B_{READ,WRITE,RAW} and use them instead throughout. Notes: svn path=/head/; revision=57973
* Add another Linksys OUI.Warner Losh2000-03-131-1/+3
| | | | | | | | PR: 16922 Submitted by: takawata@shidahara1.planet.sci.kobe-u.ac.jp Notes: svn path=/head/; revision=57969
* Backout the previous fix, it is _not_ that easy too fix.Søren Schmidt2000-03-131-2/+1
| | | | | | | Leave it as is for 4.0 the real solution comes later. Notes: svn path=/head/; revision=57964
* * add the start_join_net - doneDuncan Barclay2000-03-121-129/+178
| | | | | | | | | | | | | | | | | | | | | | | * i needed it anyway * remove startccs and startcmd - done * as those were used for the NetBSD start timeout * multicast - done but UNTESTED * I don't have the ability/facilty to test this * rxlevel - done * stats reported via raycontrol * getparams ioctl - done * reported via raycontrol * start_join_done needs a restart in download_done - done * now use netbsd style start up removed spare timerh implemented start_assoc in ray_ccs_done bit more knfing Notes: svn path=/head/; revision=57951
* structure for error counters addedDuncan Barclay2000-03-121-7/+18
| | | | Notes: svn path=/head/; revision=57950
* Use ssid length from 80211.hDuncan Barclay2000-03-121-4/+136
| | | | | | | | | moved and extended ioctl's added string and size definitions for raycontrol Notes: svn path=/head/; revision=57949
* Dont call ad_start unless the controller is idle.Søren Schmidt2000-03-121-1/+2
| | | | | | | This effectively nullified the usefullness of disksort(). Notes: svn path=/head/; revision=57930
* sdio: If sd I/O fails because of an I/O error, set the sd stateGreg Lehey2000-03-121-3/+3
| | | | | | | | | | correctly. Reported-by: phk Approved-by: jkh Notes: svn path=/head/; revision=57925