Søren Schmidt
baffdee40e
Add support for sending ATAPI commands via ioctl.
2001-08-30 09:47:17 +00:00
Søren Schmidt
a8ae536239
Update the Promise TX2 code to DTRT and not what I guessed earlier.
...
Allow tagged queing on the Promise TX2 as it seems to work.
Cudos to promise for making the most simple to program ATA chip.
2001-08-28 13:36:06 +00:00
Søren Schmidt
b4fa8260b8
Add support for yet another VIA '686 combination.
2001-08-28 08:59:17 +00:00
Søren Schmidt
65d5e55cdd
Add support for the newer Promise chips here as well.
2001-08-21 12:23:31 +00:00
Søren Schmidt
468fe0fdf1
Finally commit some of the minor things I've collected over the last month(s):
...
Add tagged queueing support for new IBM drives.
Add support for Yet Another Promise ATA 100 chip.
Flush disk cache on close.
Dont flush the disk cache on BIO_ORDERED anymore.
Cleanup the tests for DMA on ATAPI devices.
Allow to share ALL irq's even the std irg 14 & 15.
Fix calculation bug in end of media code on CD's.
Add REZERO on opening a CDR/CDRW.
Cleanup ataioctl a bit.
2001-08-21 11:35:47 +00:00
John Baldwin
8ec48c6dbf
- Remove asleep(), await(), and M_ASLEEP.
...
- Callers of asleep() and await() have been converted to calling tsleep().
The only caller outside of M_ASLEEP was the ata driver, which called both
asleep() and await() with spl-raised, so there was no need for the
asleep() and await() pair. M_ASLEEP was unused.
Reviewed by: jasone, peter
2001-08-10 06:37:05 +00:00
Thomas Moestl
9c4968d152
Disallow ATAPI CD transfers that are not a multiple of the device block
...
size (previously, the transfer size would be rounded up to a multiple of
the block size, which would overflow the buffer).
This fixes panics when doing things like trying to mount audio CD's.
PR: kern/21946
Review Timeout: sos
2001-07-29 21:01:13 +00:00
Kris Kennaway
56bded8a29
s/adress/address/
...
Inspired by: OpenBSD
MFC After: 1 week
2001-07-23 12:05:27 +00:00
Søren Schmidt
7aa30182a1
Add support for yet another Promise ATA100 variant
...
Minor fix to the VIA setup code.
2001-06-08 09:51:33 +00:00
Peter Wemm
0978669829
"Fix" the previous initial attempt at fixing TUNABLE_INT(). This time
...
around, use a common function for looking up and extracting the tunables
from the kernel environment. This saves duplicating the same function
over and over again. This way typically has an overhead of 8 bytes + the
path string, versus about 26 bytes + the path string.
2001-06-08 05:24:21 +00:00
Søren Schmidt
4dcb0f16ec
Quiet the READ_TOC errors that can appear on empty CDR's.
...
Assure cur_write_speed can be no less than 177 to avoid divide by 0 error.
2001-06-07 07:21:20 +00:00
Peter Wemm
4422746fdf
Back out part of my previous commit. This was a last minute change
...
and I botched testing. This is a perfect example of how NOT to do
this sort of thing. :-(
2001-06-07 03:17:26 +00:00
Peter Wemm
81930014ef
Make the TUNABLE_*() macros look and behave more consistantly like the
...
SYSCTL_*() macros. TUNABLE_INT_DECL() was an odd name because it didn't
actually declare the int, which is what the name suggests it would do.
2001-06-06 22:17:08 +00:00
Søren Schmidt
28e3e06ebc
Dont try to play tracks outside whats on the media.
...
PR 26647
2001-05-30 08:06:57 +00:00
Søren Schmidt
f8151fd3ce
Update to support the NEC NR-7500A burners.
2001-05-30 07:28:57 +00:00
Søren Schmidt
490cf636a9
Fix bug in debug code
2001-05-29 17:27:36 +00:00
Søren Schmidt
c9cc17cc67
Fix for the fixate problem on the Yamaha burners.
2001-05-29 17:19:42 +00:00
Søren Schmidt
2c68839222
Update to use the changed ioctl interface.
2001-05-17 10:29:30 +00:00
Søren Schmidt
ef9988d058
Add support for the AMD 766 southbridge incl ATA100 support
...
Fix ATA66 mode for the AMD756, the timing was way to slow
2001-05-14 18:38:22 +00:00
Søren Schmidt
63e45b51b0
Remove the error var, it hides the real one.
...
PR 27213.
BTW the CDIOCREADAUDIO ioctl is deprecated, its not longer needed
and was an ugly hack from start on.
2001-05-09 13:01:10 +00:00
Poul-Henning Kamp
079f2df393
Make the disk mini-layer check for and handle zero-length transfers
...
instead of the underlying drivers.
2001-05-06 21:55:22 +00:00
Poul-Henning Kamp
a468031ce8
Actually biofinish(struct bio *, struct devstat *, int error) is more general
...
than the bioerror().
Most of this patch is generated by scripts.
2001-05-06 20:00:03 +00:00
Søren Schmidt
ed27f87339
Move the disklabel construction to the attach function instead of
...
in open. This prevent panics when a the disklabel is accessed on
an ATA-RAID subdisk.
2001-04-27 19:47:33 +00:00
Søren Schmidt
b952dabaa1
Add support the the Intel ICH2 mobile
...
Tidy chip name printing a bit.
2001-04-16 21:22:34 +00:00
Søren Schmidt
cffeef75e7
The VIA 586 chip does UDMA from rev 0x3 onwards.
...
MFC candidate!
2001-04-14 18:33:08 +00:00
Søren Schmidt
8018014f59
Add ATA66 and ATA100 mode support for Acer chipsets.
...
MFC candidate :)
2001-04-06 19:18:35 +00:00
Søren Schmidt
5e083a4a31
More error handling cleanups.
2001-04-05 15:45:53 +00:00
Søren Schmidt
268f572fab
On burners that return faulty ready on fixate, wait for the
...
expected fixate time before returning.
Dont print error messages to the console on READ_TOC on
a blank media.
2001-04-05 11:17:33 +00:00
Søren Schmidt
ae2e8ffad0
Add new flag ATPR_F_QUIET to atapi_request.
...
Cleanup error handling.
2001-04-05 11:15:24 +00:00
Søren Schmidt
e65e827e13
Correct the sysctl names to match the tuneables.
...
Proberly flush the tag queue on detach.
2001-04-05 11:13:07 +00:00
Paul Saab
6b8b8c7fdc
Last commit was broken.. It always prints '[CTRL-C to abort]'.
...
Move duplicate code for printing the status of the dump and checking
for abort into a separate function.
Pointy hat to: me
2001-03-28 01:37:29 +00:00
Søren Schmidt
7acf4af808
Use PLAY_MSF instead of PLAY_BIG when doing audio play.
...
The fixes the problem of PLAY_BIG not being implemented on
some modern drives.
The problem now is that some old drives use BSD encoding
in the MSF case, which they dont tell, and which is also
not according to spec *sigh*. Hopefully there are not
too many of those still alive, or I hereby grant
license to kill the firmware writers that wrote the mess.
2001-03-27 10:22:50 +00:00
Paul Saab
f2a404d5a6
Change the dump routines to only abort if control-c is pressed.
...
If any other key is pressed, print a message stating that control-c
is how to abort.
Reviewed by: peter
2001-03-27 06:24:08 +00:00
Poul-Henning Kamp
f83880518b
Send the remains (such as I have located) of "block major numbers" to
...
the bit-bucket.
2001-03-26 12:41:29 +00:00
Søren Schmidt
312ec441cd
Add bandaid to get ISA only systems to link.
2001-03-24 16:19:07 +00:00
Søren Schmidt
543ee068a7
Fix the problem with some drives not reporting back when the
...
are busy blanking and erasing CD-RW media.
This fixes burncd's premature returns from blanking/erasing
that caused trouble.
2001-03-23 20:55:28 +00:00
Søren Schmidt
0aef91a149
The size of the disk can't be gotten reliably with the read capacity
...
command, so use the info from the TOC instead.
2001-03-21 14:59:38 +00:00
Søren Schmidt
256d331f31
Set the device names as early as possible.
2001-03-21 11:49:07 +00:00
Søren Schmidt
68337c2c00
Handle the case where the last piece of a RAID0 (striped) disk is
...
not of interleave size.
2001-03-21 11:48:14 +00:00
Søren Schmidt
7ee5559aa7
Cleanup the diskerr messages a bit.
2001-03-21 11:46:15 +00:00
Søren Schmidt
7154fc7c7b
Do not change/get mode on a nonexisting device.
2001-03-21 11:44:58 +00:00
Søren Schmidt
f74abb9b6e
Try not to engage to ATA channels that are disabled by the BIOS.
2001-03-19 13:31:58 +00:00
Søren Schmidt
1ac2b9fe97
On open create all the CD physical track devices according to the
...
TOC read from the CD, instead of cloning them when asked to.
2001-03-19 12:02:36 +00:00
Søren Schmidt
895fd69a76
Only allow root to attach/detach/etc ATA/ATAPI devices.
2001-03-19 11:55:13 +00:00
Søren Schmidt
6eee1a1c12
Add sysctls for reading the tunables as suggested by des.
...
Minor cleanups plus checks of the ->active state.
Cosmetics.
2001-03-19 08:04:54 +00:00
Søren Schmidt
b5a5e99d51
Cleanup the alloc/release code a bit.
...
Fix length error on the bmio resource.
Fix the irq release code, zero out free'd irq.
2001-03-19 08:02:42 +00:00
Søren Schmidt
2149e3e372
Cosmetic changes.
2001-03-19 07:48:19 +00:00
Søren Schmidt
a2dca80a1d
Provide the interface to atacontrol and associated logic.
...
see atacontrol(8) for more.
Also the ATA_ENABLE_ATAPI_DMA, ATA_ENABLE_WC and ATA_ENABLE_TAGS
options are gone, use the tuneables listed in ata.4 instead from
the loader (this makes it possible to switch off DMA before the
driver has to touch the devices on broken hardware).
2001-03-15 15:36:25 +00:00
Søren Schmidt
6c2cfc9203
Minor cleanup to the previous commit:
...
Print what devices went away and which arrived.
Avoid timeout loop on missing status.
2001-03-14 14:00:09 +00:00
Søren Schmidt
8fab4242e4
Add support for the IOMEGA Clik!
...
IOMEGA deserves a medal for making the most nonstandard ATAPI
devices, if they are ignorant or just not smart enough I don't
know, but somebody should help them out of their misery...
2001-03-14 12:12:46 +00:00