summaryrefslogtreecommitdiffstats
path: root/sys/i386/isa
Commit message (Collapse)AuthorAgeFilesLines
* Fix races in scstart(). q_to_b() wasn't called at spltty(), so therebde1995-07-112-28/+14
| | | | | | | | | | | | | | were two races: - q_to_b() might unexpectedly return 0 (e.g, after a keyboard signal flushes the output queue and isn't echoed). ansi_put() interprets 0 bytes as 4GB... - more output (e.g. for echoes) might arrive afer q_to_b() returns 0. Then scstart() returns presumably and the new output might not be handled for a long time. Remove unused function scxint(). Fix prototypes (foo() isn't a prototype).
* Speed up the inner loop of ansi_put() by a few percent.bde1995-07-111-2/+10
| | | | | | | syscons' output is now only about 4-5 times slower than I want. It loses a factor of 2 for scrolling output by unnecessarily copying the screen buffer, a factor of 4/3 for dumb OPOST processing, and a factor of 3/2 for clist processing.
* Release summary: (detailed descriptions in Edit History in matcd.c)jkh1995-07-113-68/+150
| | | | | | | | | | | | | | | | | | | | | | | | Adds support for non-Sound Blaster host adapters, including those distributed by Reveal, Lasermate, IBM, Media Vision, Crystal and others. The driver automatically senses the correct adapter type and you can have both in the system at the same time. (This change should eliminate a few complaints.) Corrected bit-masking problem that prevented use on SB Vibra-16 boards. Declared some internal data and functions static that should have been that way all along. Documentation changes reflect the new hardware support and change the appearance version to 2.0.5 (was 2.1). Nice and tidy. :-) Beta testers have verified functionality on SB16, Vibra-16, Media Vision and Reveal adapters. -Wall still shows no warnings. Frank Durda IV uhclem%nemesis@fw.ast.com Submitted by: Frank Durda IV <uhclem%nemesis@fw.ast.com>
* Multiplex the soft tty interrupt some more to support the cy driver.bde1995-07-051-1/+5
| | | | | This should be configured better, perhaps by providing a software interrupt and mask bit to go with every hardware interrupt.
* Fix error logging:bde1995-07-051-4/+10
| | | | | - get the timeout countdown right - report everything before turning timeouts off.
* Rewrite:bde1995-07-053-1328/+2388
| | | | | | | | | | | - use pseudo-dma - provide the same features and interface as sio - support multiple boards - fix bugs. Some compile-time configuration constants are set to support higher speeds and Cyclom-16Y's at a 30% relative cost in efficiency. Cyclom-16Y support is untested.
* Protected entire epioctl routine with splimp(). In this case, it is betterdg1995-07-051-1/+6
| | | | | | | | form to do this than it is relying on individual subroutines (the logic in epioctl is itself very minimal). Ideally, unnecessary splimp()'s should now be removed if they exist; I'll leave this for a later date (a complete code review of the driver needs to be done). Fixes a bug I noticed that would show up when ifconfig'ing the interface down.
* First pass cleanup of this driver. This pass does not include the sequencergibbs1995-07-041-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | optimizations I have been working on yet, but does bring in some bug fixes and performance improvments that were easy to regression test: Setup the data fifo threshold and bus off timing correctly for 27/284x cards. Users of these adapters with fast periferals (greater than 5MB/s) will notice a big performance difference. (Sometimes as large as going from 3.7->8.3MB/s). Fix handling of the active target flags. Some of the outbs where missing the base offset in the abort code. The abort code still needs lots of work. Support 3940 controllers, but only with 16 SCBs for now. Eventually I'll add support for all 255, but I need to find a tester for the code first since we have to enable the cards external SRAM to do this. Add Dan Eischen's serial eeprom reading facilities. This allows the 2940 adapters to pull additional information left over from SCSI-Select right out out of the configuration seeprom. If the BIOS is disabled on 274x controllers, reset all target parameters to there defaults since you can't rely on what is stored in scratch ram. Report motherboard controllers as such. Stick the first SG address and count into the SCB data and count areas for all transfers in preparation of a later sequencer optimization. Keep track of which targets can are allowed to have the disconnection priveledge since this will be handled by the kernel driver in the future. If a target issues a message reject in response to a tagged message, disable tagged queuing for that target. Some seagates say they can do tagged queuing, but lie, and its a shame to have to disable tagged queuing on all devices just because you have one that can't cope.
* The PCI config mechanism 1 test failed for the Intel Aries.se1995-06-301-2/+2
| | | | | | Make it less strict ... Submitted by: NIIMI Satoshi <sa2c@and.or.jp>
* Fight with hanging modems continued:ache1995-06-281-1/+8
| | | | | return EIO after t_timeout expired instead infinite looping in "siotx" in comparam, consuming CPU time.
* PCI configuration mechanism now determined by a method, that doesn'tse1995-06-281-15/+17
| | | | | | fail on new hardware (Compaq Prolinea and Compaq Prosignea), and that doesn't erroneously identify old mech. 2 chip sets as using mech. 1. (See section 3.6.4.1.1 of the PCI bus specs rev. 2.0)
* The BT scsi driver has recently had a message changed - it could bejoerg1995-06-251-3/+3
| | | | | | | | | clearer. The "informational message" almost looks like an instruction to the user to change settings on the card.... It's cosmetic, but... Submitted by: peter@haywire.dialix.com
* Reduce timeout frequency from `hz' to 0 if no ports are open or to 1 ifbde1995-06-251-142/+236
| | | | | | | | | | | | | | | | | | | | | no ports are active, provided there are no polled ports and no `LOSESOUTINTS' ports. Do a little more in the interrupt handler instead. This is a little less efficient if there are are many active ports but a little more efficient otherwise. Polled ports are ones with no irq specified (as before). `LOSESOUTINTS' ports are ones with 0x08 set in their config flags. Unless this flag is set, it will now take up to one second to recover from lost output interrupts, if any. Some 8250s and 16450s lose output interrupts. Improve output buffering: copy the clist buffer to 2 linear buffers if necessary and possible instead of to 1. Handle an arbitrary queue of buffers in the interrupt handler. Check for waking up sleepers after copying characters out of the clist buffer instead of before. Delay translation of TIOCM_DTR to MCR_DTR etc. so that the top level routines are more machine independent. Fix bogus device register in unused code.
* Add an option to the psm driver to skip the parts of the probe which breakdfr1995-06-221-0/+2
| | | | | | some laptops with PS/2 mice. Submitted by: nsayer@quack.kfu.com
* Use ifr_mtu for the mtu value rather than ifr_metric.dg1995-06-221-4/+4
|
* Change interface type...IFT_SLIP -> IFT_PARA.dg1995-06-211-2/+2
|
* 1. Supporting fast sync value displayin latest firmware.amurai1995-06-191-7/+13
| | | | | 2. Use restrict round-robin scheme rather than a agresive one if firmware has a this capability.
* Next version, many bugs fixedache1995-06-143-407/+527
|
* Convert to ANSI C: change #endif THING to #endif /* THING */.bde1995-06-141-59/+57
| | | | | | | | | | | | | | | | | Fix one such THING in code to match comment. Sort IO_GSC* into numeric order and update comments about the gaps. Sort common SCSI addresses into alphabetical order. Remove bogus comments about com ports having i/o size 4. Uniformize whitespace. Uniformize case in hex digits. This file is very incomplete. In particular, it doesn't mention any network cards. This doesn't matter much for the base addresses, but it means that the comments about which addresses are free are mostly bogus. The i/o sizes are unreliable because of split address ranges for many devices (VGA, wd). The i/o sizes are incomplete. In particular, there are no sizes for SCSI controllers. The bt driver still returns a truth value instead of a size.
* Don't convert \n to \r\n in pccnputc(). This is the responsibility ofbde1995-06-141-7/+3
| | | | cnputc().
* Merge RELENG_2_0_5 into HEADrgrimes1995-06-114-9/+22
|
* Remove trailing whitespace.rgrimes1995-05-30103-2302/+2302
|
* Increased delay after reset to 10ms. Suggested by several people, the lastdg1995-05-271-2/+2
| | | | | of which was Scott Mace. This fixes a bug where the card would be missed sometimes during the device probe.
* Enclosed is a patch for if_ze.c which will allow it to operate withdg1995-05-241-2/+7
| | | | | | | | | the National Semiconductor InfoMover PCMCIA cards also. In tests on a NE4100 on Jordan's laptop here, the ze driver works fine with that card. Reviewed by: Jordan Hubbard, Rod Grimes, and me Submitted by: Gary Palmer
* Fixed problem with "char" cursor..sos1995-05-211-2/+6
| | | | Submitted by: ache
* Make the "information" slice printfs if(bootverbose).phk1995-05-181-10/+13
| | | | Fix the message about Ontrack.
* Changed read_csr and write_csr to static so that they don't clashdg1995-05-171-2/+2
| | | | | | | with another driver. Reviewed by: Paul Richards Submitted by: Brian Litzinger
* Changes to support the "new" bad144. Adds a "BADSCAN" ioctl and support.dg1995-05-161-4/+15
| | | | | Reviewed by: Bruce Evans Submitted by: Poul-Henning Kamp
* After carefully reading three reference documents, and analyzingdg1995-05-141-4/+4
| | | | | | | | | | | | | | | the 802.3 frames generated by the DC21040 (which does automatic padding of less-than-minimum frames) and the frames generated by the 'ed' driver, I've found that there is indeed a bug in the size of "ETHER_MIN_LEN" as reported by several people, John Hay being the most recent. The driver was actually setting the length to 6+6+2+50 (64 bytes), which when adding in the CRC (which is automatically appended to the frame and not included in the length), the minimum frame is 4 bytes larger than it is supposed to be. All of this is confirmed by tcpdump showing 50 bytes of data for minimum frames from the 'ed' cards and 46 bytes from 'de' cards. This analysis has also revealed that there is garbage in the un-filled in portion at the end of the minimum frames from the 'ed' driver; I don't plan to fix this.
* "1 easy fix in 10 excrutiating steps"jkh1995-05-131-2/+2
| | | | | A phone call from Manfred quickly pointed up the fact that I got the conflict check backwards. NOW we implement the conflict checking correctly! Wheesh!
* Only use card's soft-configured irq if no irq was specified in the kerneldg1995-05-121-5/+7
| | | | | config file. This should fix a number of complaints regarding the auto detection behavior.
* RISCom/8 driverache1995-05-123-0/+1682
|
* Fix -Wformat warnings from LINT kernel.rgrimes1995-05-116-18/+20
|
* Add variable `idelayed' and macros setdelayed() and schedsofttty()bde1995-05-111-1/+7
| | | | | | | | | | | | to access it. setdelayed() actually ORs the bits in `idelayed' into `ipending' and clears `idelayed'. Call setdelayed() every (normal) clock tick to convert delayed interrupts into pending ones. Drivers can set bits in `idelayed' at any time to schedule an interrupt at the next clock tick. This is more efficient than calling timeout(). Currently only software interrupts can be scheduled.
* Move conflicts flag to the end.jkh1995-05-111-2/+2
|
* Pass me the pointed chapeau - this typo somehow got through my testing.jkh1995-05-111-2/+2
|
* Remove all vestiges of the ALLOW_CONFLICT_FOO evil and replace it withjkh1995-05-112-13/+12
| | | | something slightly less evil - a per device conflict flag.
* Submitted by: wpaul (with 2 lines moved by rgrimes)rgrimes1995-05-102-3/+37
| | | | Add support for kern_devconf structure.
* Fix -Wformat warnings, still need to do something about %b and pointerrgrimes1995-05-095-16/+18
| | | | type args.
* Rewrite the MCD_TRACE macro to be a varargs macro so that the extraneousrgrimes1995-05-091-18/+25
| | | | | | | arguments to printf could be fixed. Correct all but 1 -Wformat warning. Some would have caused garbage to be printed due to missing args!
* Cleanup to the INET part of lpt.c.phk1995-05-091-108/+152
| | | | | Reviewed by: phk Submitted by: pst
* Correction, Jim Lowe is the author... Getting code to work right is farpst1995-05-081-1/+1
| | | | easier than writing the comments. :-(
* Update copyright notice to properly reflect that this was original workpst1995-05-081-1/+2
| | | | by James Miller (sorry Jim).
* Fix numerous bugs in wdsize().bde1995-05-081-15/+7
| | | | | | | | | It closed the wrong device (usually the B partition instead of the C partition). It closed a device without having opened it. It didn't open a device often enough. This caused swap partitions on slices other than the first slice looked at to be unavailable for swapping. It didn't check the device number sufficiently.
* Add hook for pstat -tache1995-05-071-1/+3
|
* Fix style inconsistencies in the last few commits.bde1995-05-071-30/+28
|
* Submitted by: john@physiol.su.oz.au (John Mackin)bde1995-05-071-28/+32
| | | | | Fix handling of sense errors. Nonexistent media and end of media were mishandled.
* Major cleanup up SunOS/VAT driver emulation code, added a BSD style copyrightpst1995-05-073-123/+193
| | | | | | | | notice, performed all of the structural changes necessary to get this thing to work with the unidirectional-DMA version of voxware. This work is -not- complete, but it's in far better shape than it was, and I may not touch it again for another few months.
* Restructured the floppy tape probe.joerg1995-05-062-18/+25
| | | | | | | The ``flags 1'' in the fdc line is now only needed for owners of an Insight tape (perhaps there aren't any? Mine is disfunctional). All other probes are safe wrt. to the motor-control line of floppy disk drives. Document the flag in LINT finally.
* Check for 0 before dividing by it. Patch from Paul Traina, modifieddg1995-05-051-2/+10
| | | | slightly by me.
OpenPOWER on IntegriCloud