Marcus Overhagen
bc3318b640
Rewrote mapping of domains and busses into a virtual bus number to
...
allow arbitrary bus numbers. Disabled domain support for __INTEL__.
This should fix bug #1774
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-10 23:39:35 +00:00
Marcus Overhagen
05b79eadff
Removed the no longer needed debug code.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-06 22:08:25 +00:00
Marcus Overhagen
3cad4dae71
Print ids in decimal.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-28 23:19:54 +00:00
Marcus Overhagen
7694461ea6
Use decimal for thread ids.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23779 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-28 22:58:02 +00:00
Marcus Overhagen
c486dde9d6
cosmetic
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-28 22:48:56 +00:00
Marcus Overhagen
fad02fc2ac
Print thread ids in decimal.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-28 22:43:22 +00:00
Marcus Overhagen
c4bf6940f5
Fixed timeouts, they were too small.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-13 12:02:13 +00:00
Marcus Overhagen
df0e96bcef
fixed a crash during device identification
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-13 09:41:40 +00:00
Marcus Overhagen
a5ec34950d
Allow ata_request_set_sense and ata_request_set_status to be called with NULL request pointer.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-13 02:42:19 +00:00
Marcus Overhagen
02193d0df5
improved timeout handling
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-13 01:54:08 +00:00
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