Age | Commit message (Collapse) | Author | |
---|---|---|---|
2008-01-01 | provide a thing for use with %b to show which xa flags are set. | David Gwynne | |
2007-12-30 | dont freeze lock or set caching modes on ata devices that arent disks, its | David Gwynne | |
not a good idea. found by simon@ who plugged a sata dvd drive into ahci. | |||
2007-12-29 | the scsi layer always had function pointers for asking the hba about a | David Gwynne | |
device before issuing scsi commands to it, but it was never implemented, never used, and no hba actually filled them in. i came along and added another two function pointers for the same thing. this cleans up the extra pointers. ok krw@ marco@ miod@ deraadt@ | |||
2007-12-28 | provide vpd page 0, which lists which vpd pages we provide. | David Gwynne | |
2007-12-28 | rename some functions to make it clear theyre used to emulate vpd responses | David Gwynne | |
2007-12-28 | implement emulation of vpd page 83, the device identification page. if the | David Gwynne | |
disk provides a wwn, use it, otherwise do our best to generate an id from the model and serial number. | |||
2007-12-28 | massage the way vpds are defined. rename the page used for the devices | David Gwynne | |
serial number and split the vpd header out for use in other places. while here define the device identification page bits too. ok krw@ marco@ | |||
2007-12-09 | unify synchronous scsi xfer completion handling. this started out as a fix | David Gwynne | |
to the completions for some scsi commands we simply ack in the disk_cmd handler. | |||
2007-12-09 | remove the nosleep argument to ata_get_xfer. it is a relic from when i | David Gwynne | |
used to allocated xfers out of a pool rather than as part of the hbas ccb structure. | |||
2007-12-06 | Ask for write cache and read look ahead to be turned | Jonathan Gray | |
on if supported as per the wd changes. Some drives don't do this for us and it helps performance by a large amount. ok dlg@ | |||
2007-12-05 | Switch set features commands to use wdc_exec_command() to allow | Jonathan Gray | |
them to be properly polled. Fixes previously problematic machines of form and ckuethe. ok marco@ | |||
2007-11-28 | when we probe a port send an ata inquiry to the device and cache | David Gwynne | |
the result in the ata_port struct. use this cached inquiry data when building the replies to scsi commands rather than fetching a new copy of ata inq every time. this shrinks the code by 100 lines. it also avoids a malloc in a scsi io path, which could be issued at a time when malloc isnt guaranteed to succeed, but a real scsi io definitely should. | |||
2007-11-28 | make ata controllers protect their own command lists so atascsi doesnt have | David Gwynne | |
to continually go to splbio to ensure its safe to work on them. shrinks code a little. | |||
2007-11-26 | Enable read ahead and write cache enable if supported by | Jonathan Gray | |
the disk rather than depending on the disk to have it on. A bunch of people have suggested this should go in. | |||
2007-11-26 | implement atascsi_probe_dev and atascsi_detach_dev. they let a hba tell | David Gwynne | |
the midlayer(s) what to do. | |||
2007-11-26 | drive port probes from the scsi midlayer now that it will ask the adapter | David Gwynne | |
if a device is there before doing any scsi commands. also implement a free path for when devices are detached. software hotplug has been tested on sili, and ahci is still working according to claudio@ | |||
2007-11-23 | starting bits to implement hotplug of sili controllers. this adds the code | David Gwynne | |
to clean up the atascsi stuff, and has sili call it when its going away. tested on an expresscard sili variant by kettenis@ | |||
2007-11-23 | use copyin and copyout to get the actual ata data in and out of the kernel | David Gwynne | |
for the ata ioctl used by atactl. i dont know how this worked before. | |||
2007-11-23 | implement translation of the scsi vpd page for fetching a disks serial | David Gwynne | |
number. lets bioctl against an atascsi disk see the serial number. continually requested by henning@ | |||
2007-11-23 | t10 has a whole spec on doing SCSI to ATA translation called SAT. i wish | David Gwynne | |
id known about it when i wrote atascsi. anyway. it says we should claim SPC-3 when we fake INQUIRY. | |||
2007-11-16 | accept ATA ioctls so tools like atactl work on disks behind the atascsi | David Gwynne | |
layer. i intended to write better ways to deal with disks, but i have been too slack. shame on me. this is less code than the equivilent in wdc/pciide, which amuses me greatly. | |||
2007-10-01 | More easy bzero() -> M_ZERO. Use 'p = malloc(sizeof(*p) ...' where | Kenneth R Westerback | |
obvious. | |||
2007-06-20 | b_cylinder does not need to be set on the callpath down into drivers. | Theo de Raadt | |
cpu_disklabel can go away, since nothing anymore needs to use it; ok miod | |||
2007-06-18 | avoid modification race in DIOCRLDINFO; ok krw miod | Theo de Raadt | |
2007-06-08 | all drivers should spoof version 1 labels | Theo de Raadt | |
2007-06-07 | strncpy -> strlcpy, plus a little spacing line up. | Ray Lai | |
OK deraadt. | |||
2007-06-06 | now that all partition size/offsets are potentially 64-bit, change the | Theo de Raadt | |
type of all variables to daddr64_t. this includes the APIs for XXsize() and XXdump(), all range checks inside bio drivers, internal variables for disklabel handling, and even uvm's swap offsets. re-read numerous times by otto, miod, krw, thib to look for errors | |||
2007-06-05 | use six new macros to access & store the 48-bit disklabel fields related | Theo de Raadt | |
to size. tested on almost all machines, double checked by miod and krw next comes the type handling surrounding these values | |||
2007-06-01 | Don't initialize d_partitions[RAW_DISK] just before calling | Kenneth R Westerback | |
readdisklabel(), since all readdisklabel()'s do that already. ok deraadt@ | |||
2007-05-31 | Kill old, no longer necessary kludge to try fooling readdisklabel() | Kenneth R Westerback | |
into using DOS geometry by calling it twice. And don't ignore the drive state if readdisklabel() returns a non-NULL value. ok weingart@ grange@ | |||
2007-04-28 | Fix comments above DISKMINOR uses. DISKMINOR provides minor not major | Kenneth R Westerback | |
number (wd.c), and the uses are to find the minimum minor to be detached. | |||
2007-04-27 | Nuke WDUNIT/WDPART/etc. defines and just use standard DISKUNIT/DISKPART/etc. | Kenneth R Westerback | |
ones. No change to wd.o. ok deraadt@ marco@ | |||
2007-04-26 | Eliminate CPU_BIOS from userland and wd(4) by always using the BIOS | Kenneth R Westerback | |
geometry in the disklabel when there is a BIOS geometry to provide. This removes the option to set a disklabel to 'BIOS' geometry via the 'g b' command in the editor. Makes reported geometry more consistant and moves MD code to MD land where it should be. Doc help from jmc@, Feedback from millert@, marco@, weingart@, kettenis@. ok deraadt@ | |||
2007-04-22 | when an ata command returns an error, dont fill dmesg with messages about | David Gwynne | |
it. returning an error to the scsi midlayer is all we need to do, which in turn will do the right thing. | |||
2007-04-12 | Do a security freeze lock like we do in wd(4) to deal with systems | Jonathan Gray | |
that leave the security set on by default. "looks sane" grange@, "looks ok" pascoe@, "put it in" dlg@ | |||
2007-04-10 | endian fixes for the read capacity handling. | David Gwynne | |
2007-04-10 | Sort ATA commands by value. | Jonathan Gray | |
ok dlg@ | |||
2007-04-08 | Use CMD_OK instead of 0, no binary change, from mickey | Pedro Martelletto | |
2007-04-05 | device signatures appear to be common to sata controllers too. | David Gwynne | |
2007-04-04 | some registers are shared amongst various sata controllers, so stick | David Gwynne | |
definitions of them here. this starts with the SStatus register. | |||
2007-04-02 | Read log page 10h to determine the NCQ error, instead of aborting all | Christopher Pascoe | |
active commands when an error is encountered. ok dlg@ | |||
2007-03-27 | OK, I understand why jsg wanted the disk_unbusy() in wdretry(), and he | Theo de Raadt | |
was right. There is another path that ends up avoiding the disk_unbusy call I inserted.... tested by robert too | |||
2007-03-25 | wdc retries (including after suspends) caused a disk to remain busy when | Theo de Raadt | |
it should not; ok dlg problem spotted using zaurus soft-drive-led diff which is pending i think i convinced jsg now that this fix is better than putting it in wdrestart | |||
2007-03-25 | kill extra space in output with diskerr(); ok jsg | Theo de Raadt | |
2007-03-24 | Complete the right scsi_xfer when processing a disk sync request. | Christopher Pascoe | |
2007-03-23 | Track the ATA xfer's state more closely - may help us identify why some | Christopher Pascoe | |
are seeing a panic at halt time. | |||
2007-03-23 | Really clear the device register on the flush cache command. Last commit | Christopher Pascoe | |
adjusted the packet and identify commands. | |||
2007-03-23 | Clear the device register on the flush cache command, in case something | Christopher Pascoe | |
that shouldn't care about don't care bits does care. | |||
2007-03-23 | Catch timed out disk commands. | Christopher Pascoe | |
2007-03-22 | Let atascsi issue NCQ commands if the controller supports it. | Christopher Pascoe | |
This includes a nasty hack to reduce openings and throw away command slots if the device supports a lower queue depth than the host controller does. Yes, we're thinking about a better solution. |