freebsd-dev/sys/i386/isa
David Greenman 3a2f7427fe Updated driver to the 1.1.5 version:
date: 1994/05/22 12:35:38;  author: joerg;  state: Exp;  lines: +6 -6
First round of floppy changes. Try making `fd' more robust.

New features:
  .  ioctl command for setting the drive type (density etc.); restricted
     to the super-user
  .  ioctl for getting/seting `drive options'; currently only option
     is FDOPT_NORETRY: inhibit the usual retries; used when verifying
     a newly formatted track

Fixes:
  .  function prototypes
  .  made all internal functions `static'
  .  cleaned up & corrected .h files
  .  restructured, to make the chaotic function sequence more rational
  .  compiled with -Wall, and cleared all warnings
  .  introduced a mirror for the (write-only) `digital output register',
     to avoid the current kludge
  .  device probing completed by seeking/recalibrating, and looking
     for track 0 being found
  .  holding the controller down in reset state while it is idle (and
     thus saving allot of headaches)
  .  make requests fail that are not a multiple of the (physical)
     sector size
  .  removed the fixed physical sector size (512 bytes), allowing for any
     size the controller could handle (128/256/512/1024 bytes)
  .  replaced some silly messages
  .  fixed the TRACE* macro usage, debugging reports should be complete
     now again (debugging output is HUGE! though)
  .  removed fd_timeout for SEEK command; seeks are always reported by
     the controller to succeed, since the `success' only refers to the
     controller's idea of success - there is no hardware line to tell about
     the seek end (other than the `track 0' line)
  .  catch SENSEI's that report about a `terminated due to READY changed'
     status - could happen after a controller reset
  .  converted ``hz / <something>'' divide operations to divisors that are
     powers of two, so gcc can optimize them into shifts
  .  write/format operations are checked against a write-protected medium
     now *prior* starting the operation
  .  error reports of `invalid command' and `wrong cylinder' will cause
     shortcuts in the retrier() now
  .  fixed a bug in the retrier() causing bogus block numbers to be reported
  .  fdformat() does care for errors now

Known Bugs:
  .  no attempts have been made (yet) to improve the performance
  .  sometimes, bogus ``seek/recalib failed'' messages are logged; this
     is still a bug in the driver, but it's not harmful since it's
     usually caught by the retrier()

Reviewed by:
Submitted by:
Obtained from:
1994-09-17 16:56:10 +00:00
..
ic Updated driver to the 1.1.5 version: 1994-09-17 16:56:10 +00:00
sound Added $Id$ 1994-08-02 07:55:43 +00:00
aha1542.c 1) Changed ddb into a option rather than a pseudo-device (use options DDB 1994-08-27 16:14:39 +00:00
aha1742.c Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
bt742a.c 1) Changed ddb into a option rather than a pseudo-device (use options DDB 1994-08-27 16:14:39 +00:00
clock.c 1. adjkerntz variable added for preparation to resettodr() implementation 1994-09-14 23:09:06 +00:00
elink.c Include <i386/include/cpufunc.h> to have outb() defined ... 1994-09-17 16:51:47 +00:00
elink.h Reviewed by: 1994-08-24 22:32:44 +00:00
fd.c Updated driver to the 1.1.5 version: 1994-09-17 16:56:10 +00:00
fdc.h Updated driver to the 1.1.5 version: 1994-09-17 16:56:10 +00:00
fdreg.h Updated driver to the 1.1.5 version: 1994-09-17 16:56:10 +00:00
ft.c Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
ftreg.h Added $Id$ 1994-08-02 07:55:43 +00:00
icu.h Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
icu.s Beginnings of support for loadable protocol domains. In particular, 1994-09-14 23:56:08 +00:00
if_ed.c Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
if_edreg.h Updated to include improvements from FreeBSD 1.1.5. Fixed brokeness 1994-08-04 17:42:35 +00:00
if_el.c Change all #includes to follow the current Berkeley style. Some of these 1994-08-13 03:50:34 +00:00
if_elreg.h Added $Id$ 1994-08-02 07:55:43 +00:00
if_ep.c Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
if_epreg.h Reviewed by: 1994-09-03 18:10:44 +00:00
if_ie507.h Reviewed by: 1994-08-24 22:32:44 +00:00
if_ie.c unifdef -DMULTICAST, since multicast support is always enabled in 4.4. 1994-09-07 03:34:12 +00:00
if_iereg.h
if_is.c Change all #includes to follow the current Berkeley style. Some of these 1994-08-13 03:50:34 +00:00
if_isreg.h
if_le.c Ran ft.c through ident. 1994-08-23 07:52:29 +00:00
if_ze.c Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
if_zereg.h
isa_device.h make id_iobase an int - the change to a u_short broke lpt, 1994-09-03 16:03:09 +00:00
isa.c Reversed my patch from yesterday. "eisa" if >= 0x1000. 1994-09-13 17:06:47 +00:00
isa.h
iso8859.font
kbd.h
kbdtables.h
lpt.c Fixed a warning from the compiler, which just crashed my laptop. When do 1994-09-15 02:37:11 +00:00
lptreg.h
mcd.c Increase transfer speed by waiting much less than 10ms after request 1994-09-14 20:28:25 +00:00
mcdreg.h Newly implemented ioctls list: 1994-09-03 16:48:13 +00:00
mse.c Change all #includes to follow the current Berkeley style. Some of these 1994-08-13 03:50:34 +00:00
npx.c Removed some macros that are now in cpufunc.h 1994-09-15 16:32:07 +00:00
pas.c Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
pcaudio.c Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
psm.c Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
rtc.h Enable use of the RTC chip for the statistical clock. While this does 1994-08-15 03:15:20 +00:00
sio.c Digicom Systems Inc, makes "softmodems". What this means is simply that 1994-09-13 03:30:31 +00:00
sioreg.h
spkr.c Change all #includes to follow the current Berkeley style. Some of these 1994-08-13 03:50:34 +00:00
syscons.c Added support for many more videomodes, including graphic modes up til 1994-09-15 07:26:40 +00:00
timerreg.h
ultra14f.c Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
vector.s Bruce Evans' dynamic interrupt support. 1994-08-18 05:09:36 +00:00
wd.c Brought over two fixes from 1.1.5; this now makes this driver "up to date" 1994-09-10 03:19:49 +00:00
wdreg.h
wt.c Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from 1994-09-16 13:33:56 +00:00
wtreg.h