summaryrefslogtreecommitdiffstats
path: root/sys/dev
Commit message (Collapse)AuthorAgeFilesLines
* Minor cleanup of APIC_IO code.fsmp1997-05-271-9/+6
| | | | Submitted by: Stefan Esser <se@freebsd.org>
* Add support for APIC_IO to pci IRQ configuration.fsmp1997-05-271-1/+19
| | | | | The support for APIC_IO was lost in the new set of pci modules. This patch restores the ability to build SMP/APIC_IO kernels.
* Completely replace the PCI bus driver code to make it better reflectse1997-05-263-2234/+799
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | reality. There will be a new call interface, but for now the file pci_compat.c (which is to be deleted, after all drivers are converted) provides an emulation of the old PCI bus driver functions. The only change that might be visible to drivers is, that the type pcici_t (which had been meant to be just a handle, whose exact definition should not be relied on), has been converted into a pcicfgregs* . The Tekram AMD SCSI driver bogusly relied on the definition of pcici_t and has been converted to just call the PCI drivers functions to access configuration space register, instead of inventing its own ... This code is by no means complete, but assumed to be fully operational, and brings the official code base more in line with my development code. A new generic device descriptor data type has to be agreed on. The PCI code will then use that data type to provide new functionality: 1) userconfig support 2) "wired" PCI devices 3) conflicts checking against ISA/EISA 4) maps will depend on the command register enable bits 5) PCI to Anything bridges can be defined as devices, and are probed like any "standard" PCI device. The following features are currently missing, but will be added back, soon: 1) unknown device probe message 2) suppression of "mirrored" devices caused by ancient, broken chip-sets This code relies on generic shared interrupt support just commited to kern_intr.c (plus the modifications of isa.c and isa_device.h).
* Corrected accidental breakage in the last commit.yokota1997-05-261-3/+3
| | | | Pointed out by: Steve Passe, smp@csn.net
* Fixed up ssigala@globalnet.it's "Jumping Daemon" screen saver for < v3.0.obrien1997-05-251-4/+4
|
* Make the multicast code compile under -current. This has not been reviewedpeter1997-05-251-1/+38
| | | | or tested yet. Mike may want to make some adjustments.
* match the #include opt_ file with options.i386 (it has opt_wavelan.h)peter1997-05-251-1/+1
|
* Flip the daemon at the edge of the screen.yokota1997-05-241-14/+53
| | | | Submitted by: Sandro Sigala, Chris Shenton
* Add 'wl' Wavelan driver.msmith1997-05-222-0/+2385
| | | | Obtained from: Jim Binkley <jrb@cs.pdx.edu>
* Several bug fixes for the ee16 support from Richard Straka:gibbs1997-05-211-86/+111
| | | | | | | | | | | | | | | | | | | | | | | 1) Adjust NFRAMES from 16 to 8 per 16k of memory. 2) Acknowledge interrupts to the card early in the interrupt handler before processing the event that caused the interrupt. This frees the card to process addtional events instead of waiting for the driver to finish handling events. 3) Changed the initialization of the transmit buffers to be a loop so that the number of buffers can be more easily changed. 4) Moved the code to take the adapter out of loop back mode to just before we enable the receiver. I also made the driver dynamically size its resource arrays at attach time so that we can take full advantage of adapters with more than 16k of memory. Richard has some other changes he's working on to improve performance, but this should get ee16 support working reliably again. Thanks to Wes Santee <wes@bogon.net> for testing these patches. Submitted by: Richard Straka <straka@user1.inficad.com>
* Introducing "Jumping Daemon" screen saver. This is really cute andyokota1997-05-211-0/+215
| | | | | | eye-catching :-) Submitted by: ssigala@globalnet.it
* Major overhaul of the SyncPPP layer. Basically, this comprises now ajoerg1997-05-194-6/+52
| | | | | | | | | | | | | | | | | | | | | full implementation of the sate machine as described in RFC1661, and provides support for plugging in various control protocols. I needed this to provide PPP support for the BISDN project (right now). Unfortunatley, while the existing API was almost up to the point, i needed one minor API change in order to decouple the this-layer- started and this-layer-finished actions from the respective Up and Down events of the lower layer. This requires two additional lines in the attach routines of all existing lower layer interface drivers that are using syncPPP (shortcutting these actions and events). Apart from this, i believe i didn't change the API of all this, so everything should plug in without too many hassles. Please report if i broke something in the existing drivers. For a list of features (including new ones like dial-on-demand), and things still to be done, please refer to the man page i'll commit asap. Encouraged by: Serge Vakulenko <vak@cronyx.ru>
* Whoops, missed a zero there. Flags 0x10000 it is.phk1997-05-181-2/+2
|
* Flags 0x1000 on sio now disables the dreaded test#3.phk1997-05-181-2/+3
| | | | PR: 3395
* Detect various supersets of 16550A based on fifo depth.phk1997-05-181-4/+39
| | | | | | PR: i386/3523 Reviewed by: phk Submitted by: vak@cronyx.ru
* 1) font loading (two fixes)yokota1997-05-152-22/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When an ioctl command SW_XXXX is issued, scioctl() checks if the font appropriate for the specified mode is already loaded. The check was correctly done for 8 line and 16 line fonts, but not for 14 line font. The symbols FONT_8, FONT_14 and FONT_16 were defined as numbers but were sometimes treated as bit flags. They are now defined as bit flags. 2) screen blinking (two fixes) Removed a redundant call to timeout() in do_bell(). Don't let blink_screen() write to the video buffer if the screen is in the graphics (UNKNOWN) mode. 3) screen saver timeout The ioctl command CONS_BLANKTIME sets the screen saver's timeout. The value of zero will disable the screen saver. If the screen saver is currently running it should be stopped. 4) border color and destructive cursor (two fixes) The border color and the cursor type can be changed via escape sequences. But only VGA can change the border color and set the cursor type to destructive (CHAR_CURSOR) in the current syscons. scan_esc() failed to check this. Reviewed by: sos
* Add the D_DISK flag to the cdevsw structs of various CD-ROM drivers.joerg1997-05-102-4/+4
|
* This commit was generated by cvs2svn to compensate for changes in r25603,kjc1997-05-093-0/+3717
|\ | | | | | | which included commits to RCS files with non-trunk default branches.
| * import Chuck Cranor's ATM driverkjc1997-05-093-0/+3717
|
* import Chuck Cranor's ATM driverkjc1997-05-091-0/+348
|
* simplify IOPL gain/remove privs code. It's easier with md_regspeter1997-05-071-6/+3
| | | | being a trapframe.
* Now that we have replaced video-related block copy calls withyokota1997-05-071-34/+32
| | | | | | sc_bcopy(), which is generic_bcopy() in reality, there is no point in retaining bcopyw() calls in the source code. OKed by : sos
* use frames instead of fields, and restore full meteor compatibility forjmg1997-05-051-1/+4
| | | | | | generalized pixel support. Submitted by: Amancio Hasty
* This mega-commit brings the following:joerg1997-05-042-2/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | . It makes cd9660 root f/s working again. . It makes CD9660 a new-style option. . It adds support to mount an ISO9660 multi-session CD-ROM as the root filesystem (the last session actually, but that's what is expected behaviour). Sigh. The CDIOREADTOCENTRYS did a copyout() of its own, and thus has been unusable for me for this work. Too bad it didn't simply stuff the max 100 entries into the struct ioc_read_toc_entry, but relied on a user supplied data buffer instead. :-( I now had to reinvent the wheel, and created a CDIOREADTOCENTRY ioctl command that can be used in a kernel context. While doing this, i noticed the following bogosities in existing CD-ROM drivers: wcd: This driver is likely to be totally bogus when someone tries two succeeding CDIOREADTOCENTRYS (or now CDIOREADTOCENTRY) commands with requesting MSF format, since it apparently operates on an internal table. scd: This driver apparently returns just a single TOC entry only for the CDIOREADTOCENTRYS command. I have only been able to test the CDIOREADTOCENTRY command with the cd(4) driver. I hereby request the respective maintainers of the other CD-ROM drivers to verify my code for their driver. When it comes to merging this CD-ROM multisession stuff into RELENG_2_2 i will only consider drivers where i've got a confirmation that it actually works.
* Initialize PCI/CardBus bridges.phk1997-05-031-40/+53
| | | | | Tested on: HP Omnibook 800 / TI PCI1130 Reviewed by: se
* Make ccd use the maxsecsize sector size as denominator, thissos1997-05-011-2/+2
| | | | fixes ccd on != 512byte devices..
* 1.15 4/18/97 John-Mark Gurney <gurney_j@resnet.uoregon.edu>fsmp1997-05-012-126/+559
| | | | | | | | | | | | | | | | | | Added [SR]RGBMASKs ioctl for byte swapping. 1.16 4/20/97 Randall Hopper <rhh@ct.picker.com> Generalized RGBMASK ioctls for general pixel format setting [SG]ACTPIXFMT, and added query API to return driver-supported pix fmts GSUPPIXFMT. 1.17 4/21/97 hasty@rah.star-gate.com Clipping support added. 1.18 4/23/97 Clean up after failed CAP_SINGLEs where bt interrupt isn't delivered, and fixed fixing CAP_SINGLEs that for ODD_ONLY fields. Submitted by: individuals in above log messages.
* 1.15 4/18/97 John-Mark Gurney <gurney_j@resnet.uoregon.edu>fsmp1997-05-011-0/+43
| | | | | | | | | | | | | | | | | | Added [SR]RGBMASKs ioctl for byte swapping. 1.16 4/20/97 Randall Hopper <rhh@ct.picker.com> Generalized RGBMASK ioctls for general pixel format setting [SG]ACTPIXFMT, and added query API to return driver-supported pix fmts GSUPPIXFMT. 1.17 4/21/97 hasty@rah.star-gate.com Clipping support added. 1.18 4/23/97 Clean up after failed CAP_SINGLEs where bt interrupt isn't delivered, and fixed fixing CAP_SINGLEs that for ODD_ONLY fields. Submitted by: individuals in above log messages.
* Restore CRTC start address check back after looking into more sourcesache1997-04-301-3/+9
|
* Add D_DISK flag to vn_bdevsw.dfr1997-04-301-2/+2
|
* In comp_vgaregs skip cursor shape and 4 unused bytes (6 total)ache1997-04-301-4/+4
| | | | | | instead of 2 unused. Previus code broke syscons on Diamond Stealth 3D 3000 (video mode ptr was NULL with no real reason)
* Addresses the following two problems.yokota1997-04-271-8/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) i586_bcopy() problem There have been a number of reports that the syscons doesn't work properly if i586_bcopy() is enabled. The problem prevented users from installing 2.2(.1)-RELEASE. The symptom is that the system looks frozen during device probe or just before the main installation menu. The workaround was to specify the flag 0x01 to the npx device so that i586_bcopy() is disabled. The patch forces the syscons to call generic_bcopy() when copying to/from the video memory, even if CPU is Pentium and i586_bcopy() is enabled. i586_bcopy() is still called for copy operations between non-video memory regions. PR: kern/2277, kern/3066, kern/3107, kern/3134 2) video mode parameter table problem The syscons reads and uses the video mode parameter table provided by the VGA BIOS to set VGA registers when changing video mode and modifying font data. It appears that in some VGA BIOSes the table is not ordered as the syscons expects, and this leads to screen corruption. The problem prevented users from installing 2.2(.1)-RELEASE. The symptom is the corrupt screen or strange vertical lines soon after the kernel is loaded into memory (just after the kernel decompression). The patch performs simplistic test and if it fails, set video_mode_ptr to NULL so that the video mode switching won't happen. This is an interim kludge. There should be a better way to deal with the problem. PR: kern/2498, conf/2775, conf/3354 Reviewed by: sos Tested by: PR originators (not all of them, though)
* Man the liferafts! Here comes the long awaited SMP -> -current merge!peter1997-04-262-5/+38
| | | | | | | | | | | | | | | | There are various options documented in i386/conf/LINT, there is more to come over the next few days. The kernel should run pretty much "as before" without the options to activate SMP mode. There are a handful of known "loose ends" that need to be fixed, but have been put off since the SMP kernel is in a moderately good condition at the moment. This commit is the result of the tinkering and testing over the last 14 months by many people. A special thanks to Steve Passe for implementing the APIC code!
* The following scenario would result in a bogus residual being reportedgibbs1997-04-242-3/+8
| | | | | | | | | | | | | | | | | | if SCB Paging was enabled: disconnect with more data to transfer disconnected SCB gets paged out target reconnects so we page SCB back in target completes transfer so residual is 0 target disconnects SCB gets reused but not paged out since the residual is 0 (optimization) target reconnects so we page the SCB back in we report a residual because of stale residual information. The fix for this is to set a flag that forces the SCB to be paged back up to the host if we page in an SCB with a residual Pointed out by: Doug Ledford <dledford@dialnet.net>
* Add definition of PCI_SUBID_REG2, the subvendor/device ID forse1997-04-241-1/+2
| | | | a header type 2 device.
* Add preliminary support for PCI config header type 2:se1997-04-231-10/+19
| | | | Fetch subvendor/device ID from config space register 0x40.
* Check that the received packet length indicated by the card is at leastdg1997-04-231-1/+5
| | | | | | large enough to contain the ethernet header. There appears to be a condition where the card can return "0" in some failure cases, and this causes bad things to happen (a panic).
* Fixed the type of timeout functions and removed casts that hid thebde1997-04-202-24/+38
| | | | | | | | | type mismatches. mcd and scd were/are particularly bogus. They used a general purpose function taking 2 args for the timeout function and fudged varargs stuff to supply the second arg for the timeout case. This broke `cc -mrtd'. Bounce through a timeout function instead. The timeout arg still gets bogusly cast from int to `void *' and back.
* Fixed the type of timeout functions and removed casts that hid thebde1997-04-201-10/+12
| | | | type mismatches. Not taking an arg in scrn_timer() broke `cc -mrtd'.
* Fixed the type of timeout functions and removed casts that hid thebde1997-04-201-7/+7
| | | | type mismatches. There was no problem in practice (at least on 386's).
* The bit of the cardbus bridge support code se and I have been able to agreephk1997-04-201-1/+7
| | | | | on so far... :-) Reviewed by: se
* Don't call timeout() for DTR wakeup or busy check if the relevant timeoutbde1997-04-181-5/+11
| | | | | is already active. This fixes "timeout table full" panics under 100% interrupt load and other weird conditions.
* Revert some changes to the selection and reselection code that were thoughtgibbs1997-04-181-41/+19
| | | | | | | | | | | | to fix a selection timeout problem. If we can't find an SCB for the reconnecting target, issue a bus device reset as the SCSI2 spec suggests. Add a missing call to "add_scb_to_free_list" in the non paging case. In the non-paging case, the SCBs don't really need to be on the free list, but putting them there clears the tag field which is something the recovery code depends on.
* Rearrange pci network card identification for easier additions.davidn1997-04-181-13/+18
| | | | Added KTI NE2000 clone.
* Amancio:fsmp1997-04-171-13/+13
| | | | | | | | | | | | | This patch fixes the problem of vic only capturing an even or odd frame plus the my early patch for missing frames with resolutions higher than 320x240 in rgb mode. The yuv422 patch introduces a minor bug in that a green line appears at the bottom of the captured window . There is no easy work around for this right now. Reviewed by: various bt848 hackers Submitted by: Amancio Hasty <hasty@rah.star-gate.com>
* Re-arange the selection and reselection code to hopefully kill thegibbs1997-04-142-16/+31
| | | | spurious selection timeouts that have been reported.
* New name for the EtherExpress register file.gibbs1997-04-141-0/+80
|
* Add Intel EtherExpress16 support into the ie driver, removing the needgibbs1997-04-141-100/+496
| | | | | | | | | | for the ix driver. Add a shutdown hook that resets the etherexpress so that Windoze can find the card after a warm boot. Submitted by: Aaron Smith <aaron@tau.veritas.com> Obtained From: NetBSD
* aic7xxx.seq:gibbs1997-04-104-13/+16
| | | | | | | | | | | | Be consistant about testing for parity errors after waiting for a REQ on the bus. Don't ack the last byte in a transaction until after we've cleared all target state. aic7xxx_asm.c: Test the return value of getopt against -1 not EOF. (Yet another shameless victum of the style guide being wrong).
* Preserve some bits in the keyboard controller command byte whenyokota1997-04-101-10/+6
| | | | | | | | | | | | resetting the keyboard. Well, sorry, this bug is totally my fault. I DID intend to preserve them, but somehow I failed. The bug puts some old keyboard controllers in a strange state, resulting in keyboard freeze or random key input. The fix closes PR kern/3067.
OpenPOWER on IntegriCloud