sos
05399c3127
Change the way ioctls are issue to ATA.
...
The most prominent part is that its now possible to issue ata_requests
directly to say acd0, instead of going through the cumbersome /dev/ata
device.
2005-05-16 13:07:27 +00:00
sos
84c444f8a4
Cleanup comments
2005-05-13 10:25:19 +00:00
sos
9f93814a13
Fix more ATAPI breakage.
...
Apparently some devices are very picky on details :)
2005-05-13 07:58:05 +00:00
sos
aa499335a7
Add new Intel PCI ID's for the ICH7 chips (untested).
2005-05-11 18:29:15 +00:00
sos
eae1ea62ec
Add support for AHCI compliant ATA devices.
...
For now just support the Intel ICH6 as that the HW at hand.
Sponsored by: pair.com
2005-05-11 16:10:08 +00:00
sos
27408da2e3
Add back one line that got deleted in the last commit.
...
Change the comment there so it better describes whats going on.
This should fix the boot problems of late.
2005-05-11 14:36:26 +00:00
sos
eb109cd6d5
Fix ATAPI DMA. We need to set the proper flags for DMA modes.
2005-05-11 12:41:35 +00:00
sos
ce43d827c2
Reshape the dma code to be a bit more flexible so it can cope with
...
new HW that has new and different demands.
Fix a few nits in former commit in this cleanup crusade.
Sponsored by: pair.com
2005-05-03 07:55:07 +00:00
sos
d1f3a4ab40
Always attach a subdisk even if no valid metadata found.
...
This allows the disks to be used later in a raid create.
2005-05-02 07:06:50 +00:00
sos
2d7b156b4f
Update on the last commit, the dma* funciton needs to be called with
...
a channel device, not an ata device, or we'll be out of luck in
reset/timeout where we dont have a device.
2005-05-01 12:24:45 +00:00
sos
987cd7bedc
Go back to the old way of finding the Promise metadata, the new way was
...
too simple causing older controllers metadata to get lost.
2005-05-01 08:45:12 +00:00
sos
859b992e3d
Take newbusification one step further, ie use the device_t more consequently
...
all way through the code down the layers, instead of the mix'n'match that
resulted from the conversion done earlier.
Sponsored by: pair.com
2005-04-30 16:22:07 +00:00
sos
44e51c4adc
Now that probing is working in the new fashion, we need to go back to
...
having ata_getparm issue an ata_request and not fool around with the HW
on its own.
Needed for new HW support.
2005-04-29 11:30:03 +00:00
sos
77e24e4928
Provide a default setmode method.
...
This shaves off multiple copies of the same setmode stub.
2005-04-28 22:15:44 +00:00
sos
99fa5be8ed
Rearrange the way the reset code is called.
...
Prepare for different looking controllers.
2005-04-28 22:08:08 +00:00
sos
ab882dca1f
Fix a bug introduced in r1.89 thats caused leak of requests, and possibly
...
bogus data to be written.
2005-04-26 06:42:33 +00:00
sos
0841bd55a7
Cosmetics
2005-04-25 07:57:04 +00:00
sos
59f595842e
Only try to allocate and use the SATA resource if they are enabled
...
by the BIOS. It seems some BIOS's doesn't get this right, and that would
result in ATA panic'ing.
2005-04-25 07:50:51 +00:00
sos
50df456889
Rehash the timeout code to make it more simple.
...
This also removes the warning timeout on the taskqueues stalling as
I'm tired of getting ATA error reports for problems in other parts ;)
Misc cosmetic and comment cleanups now we are here.
2005-04-21 11:13:39 +00:00
sos
01d6e824de
When a rebuild is done, properly mark the arrays as functional again.
2005-04-20 14:14:08 +00:00
sos
05ce5bbeb6
Properly hook in devices found by SATA connect events.
...
This broke on the changes done to get atapicam happy earlier.
2005-04-20 12:51:54 +00:00
sos
6762159f44
CFA (Compact Flash) devices has a special config ID that fails the
...
normal ATA device check in ata-disk.c. Add support for the CFA magic.
2005-04-19 12:33:26 +00:00
sos
046acb18c8
Fix indentation problem in the last commit
2005-04-19 05:28:08 +00:00
phk
b7f29c0fc0
Add a named reference-count KPI to hold off mounting of the root filesystem.
...
While we wait for holds to be released, print a list of who holds us
back once per second.
Use the new KPI from GEOM instead of vfs_mount.c calling g_waitidle().
Use the new KPI also from ata.
With ATAmkIII's newbusification, ata could narrowly miss the window
and ad0 would not exist when we tried to mount root.
2005-04-18 21:21:26 +00:00
sos
97d6dd54fd
Add uma zone for composite ops.
...
Submitted by: des
2005-04-18 16:01:56 +00:00
sos
47b4ce0270
Adjust the RAID type pickup code for the VIA, we dont actually care
...
if the array is bootable or not (yet).
2005-04-18 13:51:03 +00:00
sos
2cb9485db2
Add one more Promise SATAII/150 chip id.
2005-04-17 13:37:57 +00:00
sos
01a15eb8cb
Spell ATA_NFORCE4_S2 correctly.
2005-04-16 20:03:49 +00:00
sos
e9c922da28
Make things compile again with ATA_STATIC_ID.
2005-04-15 14:19:41 +00:00
sos
b22bb8078c
Move the creation of ata_channel child devices to the channel code.
...
This allows to attach to the children (ATA devices) even without a
driver being attached. This allows atapi-cam to do its work both
with and without the pure ATAPI driver being present.
ATA patches by /me
ATAPI-cam pathes by Thomas
2005-04-15 10:20:52 +00:00
sos
08ff41b73d
Read back the real taskfile register values when in 48BIT mode.
2005-04-14 08:48:45 +00:00
sos
9d28f86771
Add a ata_setmode method so we dont panic on setmode.
...
Note that the mode is only set on the device, we (mostly) have
no knowledge on how to set mode on the controller if at all possible.
2005-04-13 07:14:17 +00:00
sos
9e1c558a88
On amd64 int64_t != long long.
2005-04-12 15:24:00 +00:00
sos
3660e2566d
Better use the right name for the VIA software RAID.
2005-04-12 13:29:47 +00:00
sos
a06da1c3b9
Add support for VIA Tech metadata as used on thier SATA parts.
2005-04-12 12:25:27 +00:00
sos
ccda085fe1
Fix the same silly alloc mistake for nVidia and SiS as with VIA in
...
the previous commit.
2005-04-11 20:50:14 +00:00
sos
b999703730
Fix the bug that caused SATA disks on VIA etc to fail attach.
2005-04-11 20:28:15 +00:00
sos
2c608a89b2
Use the ata_suspend/resume functions instaead of the bus_generic ones.
...
This should unbreak suspend/resume.
Contributed by: Wiktor Niesiobedzki
2005-04-10 21:43:29 +00:00
sos
ae0acb41f1
Fix FreeBSD native SPAN arrays.
...
Prodded by: Ian Dowse
2005-04-10 21:39:25 +00:00
sos
88401dacc6
Refine the SATA PHY code so the time consumed during probe is reduced.
...
Add the older nVidia nForce2 SATA chip to supported HW.
2005-04-10 10:20:25 +00:00
scottl
f3360984ab
Explicity make atapi-cam depend on CAM.
...
Submitted by: Michal Mertl
2005-04-08 22:51:50 +00:00
sos
92faab9bf9
Add support for the PHY on nVidia, SiS and VIA chips
...
This code is done blindfolded as I dont have such HW here, so reports
of success/failure are most welcome.
More SATA PHY cleanups.
2005-04-08 15:33:04 +00:00
sos
24e2f5bb6c
Put the BUS_DMASYNC_PREWRITE in the rigth position.
2005-04-08 12:16:51 +00:00
sos
807c19e464
Generalise the SATA PHY handling code so it wont be duplicated for
...
each SATA chip.
Promise and Silicon Image are the current candidates for this.
2005-04-08 09:37:47 +00:00
sos
d8f94400b9
Add support for controllers that doesn't have the usual taskfile
...
layout. No functional changes.
2005-04-06 10:22:56 +00:00
scottl
224fe6574b
Fix a use-after-free problem in atapi_cb(). Add some necessary synchronization
...
to the XPT_PATH_INQ op. Don't leak locks on failure in XPT_SCSIIO. Correctly
fix the CAMDEBUG message.
2005-04-05 15:08:19 +00:00
sos
1a524b80b3
Add firstshot support for Acer Labs Inc SATA parts
...
Update ALi PATA support to handle ATA133 as well
2005-04-05 14:51:43 +00:00
phk
fa3299671d
Push some faulty debugging aside so LINT compiles.
2005-04-05 09:42:52 +00:00
scottl
95301ebbdf
Commit ATAPI-CAM for ATAmkIII. Improvements and changes:
...
- newbus plumbing. Each atapicam bus is a child off of a parent ata channel
bus. This is somewhat of a hack, but allows the ata core to be completely
free of atapicam knowledge.
- No more global lists of softc's and no more groping around in internal ata
structures on each command.
- Giant-free operation of the completion handler.
- Per-bus mutex for protecting the busy list and synchronizing detach.
- Lots of streamlining and dead code elimination, better adherence to the
CAM locking protocol.
This feature still requires that the appropriate atapi-* driver be present
for each atapi device that you want to talk to (i.e. atapi-cd for cdroms).
It does work both compiled into the kernel and as a loadable module.
Reviewed by: thomas, sos
2005-04-05 02:03:31 +00:00
sos
89c98c3d5b
Fix a buglet that caused slaves to be nondetected.
2005-04-03 13:03:53 +00:00