Commit Graph
100 Commits
Author SHA1 Message Date
Marcus Overhagen d5c05044c6 ATAPI fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-13 01:50:58 +00:00
Marcus Overhagen f0d174e96f fix comments
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-13 00:04:40 +00:00
Marcus Overhagen f44927fccb Do a shorter wait during identify command, and retry it once to find atapi drives that report a wrong signature
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-13 00:00:58 +00:00
Marcus Overhagen cf3c203afa improved PIO transfer speed and system responsiveness.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-12 21:58:33 +00:00
Marcus Overhagen 38d1ee9587 Removed debug output in the read/write path, and added it to other functions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23435 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-12 10:32:10 +00:00
Marcus Overhagen afb50bcdc0 fixed timeout and crash
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23434 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-12 01:58:30 +00:00
Marcus Overhagen c85a921b70 fixed multi block data transfer
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-12 01:56:33 +00:00
Marcus Overhagen 9c67580a9f removed/disabled some debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23428 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-12 00:52:57 +00:00
Marcus Overhagen f03e236672 Implemented PIO transfers again. Haiku starts in vmware now with this stack.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23425 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-11 23:13:27 +00:00
Marcus Overhagen 795beb75d2 Converted check_output() into ata_finish_request().
Moved timeout from device_info int ata_request-.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23411 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-11 18:49:12 +00:00
Marcus Overhagen 3d424d5c73 Replaced most true and false with named flags.
Made all timeouts use bigtime_t.
Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-11 13:25:38 +00:00
Marcus Overhagen ddb73d9f46 fix bugs exposed by ASSERT
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-11 01:33:10 +00:00
Marcus Overhagen e3c8f43645 implemented basic atapi support framework.
improved device detection.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23373 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-11 01:10:00 +00:00
Marcus Overhagen 3831b73445 fixed bugs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23350 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-10 20:50:24 +00:00
Marcus Overhagen 1cdfe7f991 some cleanup to make it compile again
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-10 20:39:30 +00:00
Marcus Overhagen c40a87f8d4 Removed finish_* functions and converted to new ata_request_* functions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-10 16:40:42 +00:00
Marcus Overhagen 041c70132c converted to use the new ata_request_* functions
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-10 16:34:32 +00:00
Marcus Overhagen a3af33c75d New struct ata_request.
Added ata_request as wrapper around scsi_ccb while they are executed in the ata stack.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-10 16:09:24 +00:00
Marcus Overhagen dd7579a79b started reimplementing pio command completition...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 23:59:00 +00:00
Marcus Overhagen 5558f70663 Renamed ide_qrequest *qrequest into ata_request *request.
Removed synced pcs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 21:58:23 +00:00
Marcus Overhagen d688a5ad65 set bus state to ata_state_busy during device scanning
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 19:45:44 +00:00
Marcus Overhagen a0183a22a1 removed fast_log usage
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 19:35:03 +00:00
Marcus Overhagen a094d41047 Rewrote bus state functions, commented out much code to make it compile.
Moved bus_reset from basic_protocol.c into ata.c


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23324 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 19:26:05 +00:00
Marcus Overhagen 84fe450d15 fix the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 17:54:10 +00:00
Marcus Overhagen 478a8f0151 fix build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 17:53:30 +00:00
Marcus Overhagen 27d6150677 fix gcc4 build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 17:48:32 +00:00
Marcus Overhagen 1f1863e2a8 fix gcc4 build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23312 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 17:45:12 +00:00
Marcus Overhagen cc91279875 removed command queuing and refactored device configuration
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 15:37:49 +00:00
Marcus Overhagen f017b372bd added more debug output, read device error register after a reset
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 12:39:03 +00:00
Marcus Overhagen 479c2cafbc added more debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 12:08:12 +00:00
Marcus Overhagen f0e260b3bf added more debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 12:07:38 +00:00
Marcus Overhagen 152fffc418 added more debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 12:06:15 +00:00
Marcus Overhagen 5f50c05486 cleanup of the rescanning code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-09 00:17:51 +00:00
Marcus Overhagen d394cf760c check for device presence before trying to read the signature
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-08 22:31:35 +00:00
Marcus Overhagen 4e9047599d Modified device reset and detection, still broken
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-08 21:46:30 +00:00
Marcus Overhagen b44b755c91 modified device detection
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 19:29:15 +00:00
Marcus Overhagen 0cd362c755 copying current ide bus manager into ata directory
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 12:59:53 +00:00
Marcus Overhagen 413e26b8a0 git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23275 a95241bf-73f2-0310-859d-f6bbb57e9c96 2008-01-07 12:59:01 +00:00
Marcus Overhagen 580e5994d9 Moved files again, this time to the correct dir.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 12:56:59 +00:00
Marcus Overhagen ffaf504fbc copying current ide bus manager into ata directory
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 12:48:21 +00:00
Marcus Overhagen b830be90e2 Marked some bits as RWC and RW1.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23256 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-05 15:35:48 +00:00
Marcus Overhagen 0762289b3f Cleanup ccb->data_length handling.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23255 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-05 15:19:10 +00:00
Marcus Overhagen ebd99341e9 Fixed a copy&paste error. scsi_cmd_rw_10 has only a 16 bit length field,
while scsi_cmd_rw_12 has a 32 bit field. As both are big endian, that 
error shouldn't have caused any problem or data corruption.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23254 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-05 14:53:38 +00:00
Marcus Overhagen ec2bf719e8 Implemented ExecuteSataRequest() to execute all ATA and (later) ATAPI commands.
Converted Identify Device and Read / Write commands, they now create a sata_request
and pass it to ExecuteSataRequest. Added support for cache flushing.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-05 02:27:05 +00:00
Marcus Overhagen 56f0b1a01a A helper class to easier support Native Command Qeueuing and ATAPI support.
This class either encapsulates scsi_ccb or can be used stand alone.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-05 02:23:39 +00:00
Marcus Overhagen e50610ed49 added defines for LBA limitations
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-05 02:19:58 +00:00
Marcus Overhagen 0cc1690a17 Added a comment describing the command FIS layout, because AHCI, SATA and ATA/ATAPI standards use inconsitent terminology.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-04 21:24:51 +00:00
Marcus Overhagen f6872148ca Restart. Do not pass Go, do not collect 00.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23221 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-02 22:02:15 +00:00
Marcus Overhagen 971cf1881e Disable an io interrupt when more than 99% are unhandled. This somewhat prevents random freezing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-02 17:33:27 +00:00
Marcus Overhagen 7eb5430510 Added debug info at the place that seems to deadlock in SMP systems with > 2 CPUs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-01 20:45:29 +00:00
Marcus Overhagen 70eb0da7e0 Mask io-space bit in promise_tx2 driver, the driver was broken after recent ide-adapter changes.
Replaced IDE_ADAPTER_IS_PRIMARY by IDE_ADAPTER_CHANNEL_INDEX to support more than 2 bus master channels,
and made ide_adapter aware of 3rd and 4th channel when calculating bus master dma address.
Fixed bus master DMA support in legacy_sata driver for tertiary and quaternary channel, channel 3 and 4
were using the DMA engine of primary and secondary channels (that might have destroyed your data).
Use PCI_address_io_mask instead of ~PCI_address_space (no functional change).



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-01 20:31:14 +00:00
Marcus Overhagen fc205e9717 added more debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23167 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-26 22:35:26 +00:00
Marcus Overhagen 65751aad16 Increased keypress detection time to 750ms. The old 50ms value never worked for me.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23166 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-26 22:30:41 +00:00
Marcus Overhagen 882123356b Added more debugging code. The partition code appears to be using objects that have been destroyed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23165 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-26 22:26:08 +00:00
Marcus Overhagen 37502d0f9f added more debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23164 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-26 22:24:40 +00:00
Marcus Overhagen 61d902eaf9 improved debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23162 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-26 15:26:38 +00:00
Marcus Overhagen 518772739f dump all found devices and partitions to serial debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23161 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-26 15:25:05 +00:00
Marcus Overhagen 4b4e08cc67 added more debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-25 14:52:49 +00:00
Marcus Overhagen 2e4a883509 Disabled setting Intel IDE mode to AHCI until the PCI manager can assign new resources
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-24 00:38:06 +00:00
Marcus Overhagen 434785951a better debug output during device scanning
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-24 00:36:07 +00:00
Marcus Overhagen fbdeb12ca0 Properly restore IRQ setting for JMicron PATA function.
No longer reconfigure JMB360 and JMB362, those have no PATA function.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23148 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-23 23:22:54 +00:00
Marcus Overhagen edfb3c00bc disabled some debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-23 22:21:25 +00:00
Marcus Overhagen b53df1b383 Although this should simply enable IO decoding and bus master
functionality when not set by bios, it currently crashes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23143 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-19 22:22:23 +00:00
Marcus Overhagen 5aa9034e50 Moved masking of PCI ressource bits into a single place.
Improved debug output and error reporting for I/O and interrupts resources.
Init of ISA IDE or PCI IDE driver can now be seen in debug output, too.
Verified that both still work with Vmware


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-19 21:33:30 +00:00
Marcus Overhagen 35f6af0388 PCI bus enumeration shouldn't be required on x86, thus enable it only for PPC an M68k
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-16 22:49:45 +00:00
Marcus Overhagen 39ee19ec0c preserve IRQ when splitting Jmicron devices
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-16 22:15:46 +00:00
Marcus Overhagen b571493666 drop into debugger when things go wrong
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23107 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-10 22:04:34 +00:00
Marcus Overhagen 91b75ef2fd gcc4 build fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-24 11:20:38 +00:00
Marcus Overhagen 27367cc308 Workaround for ICH6M: ports implemented mask 0 is no longer an error.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22959 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-19 19:14:46 +00:00
Marcus Overhagen 3c374980b5 improved debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-19 19:12:37 +00:00
Marcus Overhagen f668d91b37 This hopefully stops BPoligon from corrupting memory.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-10 21:23:04 +00:00
Marcus Overhagen aee1388ada improved debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-10 19:15:12 +00:00
Marcus Overhagen 68cbf40298 Switch Intel AHCI controller from IDE into AHCI mode.
Clears BAR5 on ICH8 and ICH9.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-10 18:59:29 +00:00
Marcus Overhagen f41613d5b2 Removed non-AHCI id. Reverts bugreport #1599 change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-10 18:55:57 +00:00
Marcus Overhagen f53094e7ea fail gracefully when base address register or irq hasn't been assigned.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-10 18:41:24 +00:00
Marcus Overhagen 79844706c2 Propagate is-ATAPI restriction to the SCSI bus manager.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-10 17:47:57 +00:00
Marcus Overhagen 117c680d90 Warn when lun is not 0. Might be needed for SATA PM support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-10 16:49:39 +00:00
Marcus Overhagen 8d722116c2 Enable SATA ports 5 and 6 on Intel ICH8 and ICH9 based
systems, and possibly enable ports 7 and 8 in the future.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-10 16:25:49 +00:00
Marcus Overhagen 65621982c9 New PCI quirk/fixup support.
The Jmicron AHCI controller has a mode that combines IDE and AHCI functionality
into a single PCI device at function 0. This happens when the controller is set
in the BIOS to "basic" or "IDE" mode (but not in "RAID" or "AHCI" mode).
To avoid needing two drivers to handle a single PCI device, we switch to the
multifunction (split device) AHCI mode. This will set PCI device at function 0
to AHCI, and PCI device at function 1 to IDE controller.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-10 15:51:40 +00:00
Marcus Overhagen 270d4ee0ec disabled most debug output, this makes the driver useable
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22863 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-09 16:36:59 +00:00
Marcus Overhagen 8c8d63ee00 added more device IDs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-09 15:49:55 +00:00
Marcus Overhagen 88d9b383f5 added more IDs, removed Intel IDE mode ID due to possible collision with a physical PATA interface
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22425 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-03 20:16:11 +00:00
Marcus Overhagen 2f28a3f623 Added PCI ids from Freebsd, Netbsd and Openbsd pcidevs files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22420 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-03 17:57:09 +00:00
Marcus Overhagen 83447512ed Changed device detection. The driver now first uses device and vendor id to check
for devices. This allows using devices that are in IDE compatibility mode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-03 16:05:23 +00:00
Marcus Overhagen c134c7b07c disable some debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-01 10:28:24 +00:00
Marcus Overhagen bfd9a59f77 This enable write support. The driver should be useable now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-30 15:54:35 +00:00
Marcus Overhagen a2a169feab Improved interrupt handling
Removed DBC_I interrupt
Reduce debug output


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-30 15:12:39 +00:00
Marcus Overhagen ea44575a31 Cleanup, improved error handling, fix setting of DBC_I bit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22385 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-30 14:02:04 +00:00
Marcus Overhagen 0845746bf7 Cleanup, device present detection improved.
Added support for non-48-bit LBA, added write support.
Proper error handling still missing, write support disabled for your protection.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22376 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-29 17:11:24 +00:00
Marcus Overhagen 55d356bd98 check for device presence before executing commands
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-29 12:14:45 +00:00
Marcus Overhagen 21b4398f6a don't set the "clear on RX_OK" bits
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22363 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-29 00:34:09 +00:00
Marcus Overhagen f5ea6b32a5 added debugging code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-29 00:23:21 +00:00
Marcus Overhagen 6b8c1c2ad7 improved prd table handling
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-29 00:22:19 +00:00
Marcus Overhagen 2bf99ebdee Added byte swapping of identify device strings.
Added capacity reporting.
Wait for interrupts to finish transfers.
Added lba 48-bit read support.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-28 23:44:03 +00:00
Marcus Overhagen ece77b379a renamed SCSI_OP_TUR into SCSI_OP_TEST_UNIT_READY
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-28 21:30:53 +00:00
Marcus Overhagen a79249de5b add missing file
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22355 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-28 21:24:26 +00:00
Marcus Overhagen 2ae9d56421 added scatter gather prd table setup, implement scsi inquiry command and emulate test unit ready
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22354 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-28 21:22:25 +00:00
Marcus Overhagen 747c1927fd removed conditional testing code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22352 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-28 21:20:46 +00:00
Marcus Overhagen 91f867e016 added sg_memcpy to copy data into a scatter-gather table (inspired by IDE device manager)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22351 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-28 21:19:14 +00:00
Marcus Overhagen 8ce98e44cc convert files to new include file locations
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-28 14:53:42 +00:00