[ros-dev] atapi problems
Ge van Geldorp
gvg at reactos.com
Wed Oct 20 01:47:27 CEST 2004
I'm having problems getting atapi drives recognized. Setup:
Primary controller
- master: HD HITACHI_DK23AA-60
- slave: CD-ROM COMPAQ CD-224E
Secondary controller
- master: not connected
- slave: not connected
First of all, the harddisk is not recognized. The call to
AtapiWaitForStatus() in atapi.c line 1159 times out. I can fix this by
increasing the timeout in that call from 20000 to 40000 (the harddisk needs
a minimum of around 38700 here).
After the harddisk is succesfully recognized, detection of the CD-ROM fails.
Again, the call to AtapiWaitForStatus in line 1159 times out, but this time
no amount of increasing the timeout (I've gone up to 4000000, 40 sec, more
than the 30 sec limit in the ATA spec) helps. I've attached the debug log.
Note the lines:
(atapi.c:1161) Timeout on drive 1
and
(atapi.c:992) Unexpected Interrupt, CommandPort=01f0, Status=ff, Count=1
I hope someone more familiar with the atapi driver can take a look at this.
Oh, btw, going back to atapi.c rev 48 cures the problem (both HD and CD-ROM
are recognized and working then).
All help appreciated, Gé van Geldorp.
-------------- next part --------------
(atapi.c:348) ATAPI Driver 0.0.1
(atapi.c:349) RegistryPath: '\Registry\Machine\System\CurrentControlSet\Services\atapi(atapi.c:572) AtapiFindCompatiblePciController() Bus: 0 Slot: 0
(atapi.c:611) 6 0
(atapi.c:611) 6 4
(atapi.c:611) 6 7
(atapi.c:611) 6 7
(atapi.c:611) 6 80
(atapi.c:611) 1 1
(atapi.c:622) Bus 0 Device 7 Func 1 VenID 0x8086 DevID 0x7111
(atapi.c:623) ProgIF 0x80
(atapi.c:625) Found IDE controller in compatibility mode!
(atapi.c:633) Found IDE Bus Master controller!
(atapi.c:637) IDE Bus Master Registers at IO 3420
(atapi.c:643) Primary channel!
(atapi.c:1105) AtapiFindDevices() called
(atapi.c:1108) CommandPortBase: 1f0
(atapi.c:1111) ControlPortBase: 3f6
(atapi.c:1185) Check drive 0: High 0x0 Low 0x0
(atapi.c:1462) status=50
(atapi.c:1463) waited 0 usecs for busy to clear
(atapi.c:1513) READ:DRV=0:LBA=0:CH=00:CL=00:HD=0:SN=00:SC=01:CM=ec
(atapi.c:1332) Config:045a Cyls:12416 Heads:15 Sectors/Track: 63 Gaps:00 00
(atapi.c:1336) Bytes/PLO: 0 Vendor Cnt:13619 Serial number:[ M54056]
(atapi.c:1341) Cntlr type: 3 BufSiz:524288 ECC bytes: 4 Firmware Rev:[00XEA0H0]
(atapi.c:1342) Model:[HITACHI_DK23AA-60 ]
(atapi.c:1349) RWMultMax?:8010 RWMult?:10 LBA:1 DMA:1 MinPIO:512 ns MinDMA:512 ns
(atapi.c:1354) TM:Cyls:12416 Heads:15 Sectors/Trk:63 Capacity:11733120
(atapi.c:1358) TM:SectorCount: 0x00b30880 = 11733120
(atapi.c:1368) Ultra DMA mode 2 is selected
(atapi.c:1405) BytesPerSector 512
(atapi.c:1223) IDE drive found!
(atapi.c:3081) status=ff
(atapi.c:3082) waited 400000 usecs
(atapi.c:1161) Timeout on drive 1
(atapi.c:672) AtapiFindCompatiblePciController() returns: SP_RETURN_FOUND
(atapi.c:992) Unexpected Interrupt, CommandPort=01f0, Status=ff, Count=1
(atapi.c:917) AtapiStartIo() called
(atapi.c:1823) AtapiSendIdeCommand() called!
(atapi.c:1828) PathId: 0 TargetId: 0 Lun: 0
(atapi.c:1911) SCSIOP_INQUIRY: DeviceExtension c0495724 TargetId: 0
(atapi.c:1935) ConfigBits: 0x45a
(atapi.c:1965) VendorId: 'HITACHI_DK23AA-60 '
(atapi.c:1896) AtapiSendIdeCommand() done!
(atapi.c:973) AtapiStartIo() done
(atapi.c:917) AtapiStartIo() called
(atapi.c:1823) AtapiSendIdeCommand() called!
(atapi.c:1828) PathId: 0 TargetId: 1 Lun: 0
(atapi.c:973) AtapiStartIo() done
(atapi.c:917) AtapiStartIo() called
(atapi.c:1823) AtapiSendIdeCommand() called!
(atapi.c:1828) PathId: 0 TargetId: 0 Lun: 1
(atapi.c:973) AtapiStartIo() done
(atapi.c:572) AtapiFindCompatiblePciController() Bus: 0 Slot: 0
(atapi.c:611) 6 0
(atapi.c:611) 6 4
(atapi.c:611) 6 7
(atapi.c:611) 6 7
(atapi.c:611) 6 80
(atapi.c:611) 1 1
(atapi.c:622) Bus 0 Device 7 Func 1 VenID 0x8086 DevID 0x7111
(atapi.c:623) ProgIF 0x80
(atapi.c:625) Found IDE controller in compatibility mode!
(atapi.c:633) Found IDE Bus Master controller!
(atapi.c:637) IDE Bus Master Registers at IO 3420
(atapi.c:656) Secondary channel!
(atapi.c:1105) AtapiFindDevices() called
(atapi.c:1108) CommandPortBase: 170
(atapi.c:1111) ControlPortBase: 376
(atapi.c:1129) No Drive found. UnitNumber 0 CommandPortBase 170
(atapi.c:1129) No Drive found. UnitNumber 1 CommandPortBase 170
(atapi.c:1137) No device found
(atapi.c:672) AtapiFindCompatiblePciController() returns: SP_RETURN_FOUND
(atapi.c:917) AtapiStartIo() called
(atapi.c:1823) AtapiSendIdeCommand() called!
(atapi.c:1828) PathId: 0 TargetId: 0 Lun: 0
(atapi.c:973) AtapiStartIo() done
(atapi.c:917) AtapiStartIo() called
(atapi.c:1823) AtapiSendIdeCommand() called!
(atapi.c:1828) PathId: 0 TargetId: 1 Lun: 0
(atapi.c:973) AtapiStartIo() done
(atapi.c:572) AtapiFindCompatiblePciController() Bus: 1 Slot: 0
(atapi.c:572) AtapiFindCompatiblePciController() Bus: 2 Slot: 0
(atapi.c:572) AtapiFindCompatiblePciController() Bus: 3 Slot: 0
(atapi.c:572) AtapiFindCompatiblePciController() Bus: 4 Slot: 0
(atapi.c:572) AtapiFindCompatiblePciController() Bus: 5 Slot: 0
(atapi.c:572) AtapiFindCompatiblePciController() Bus: 6 Slot: 0
(atapi.c:572) AtapiFindCompatiblePciController() Bus: 7 Slot: 0
(atapi.c:572) AtapiFindCompatiblePciController() Bus: 8 Slot: 0
(atapi.c:781) AtapiFindNativePciController() called!
(atapi.c:888) AtapiFindNativePciController() done!
(atapi.c:781) AtapiFindNativePciController() called!
(atapi.c:888) AtapiFindNativePciController() done!
(atapi.c:781) AtapiFindNativePciController() called!
(atapi.c:888) AtapiFindNativePciController() done!
(atapi.c:781) AtapiFindNativePciController() called!
(atapi.c:888) AtapiFindNativePciController() done!
(atapi.c:781) AtapiFindNativePciController() called!
(atapi.c:888) AtapiFindNativePciController() done!
(atapi.c:781) AtapiFindNativePciController() called!
(atapi.c:888) AtapiFindNativePciController() done!
(atapi.c:781) AtapiFindNativePciController() called!
(atapi.c:888) AtapiFindNativePciController() done!
(atapi.c:781) AtapiFindNativePciController() called!
(atapi.c:888) AtapiFindNativePciController() done!
(atapi.c:781) AtapiFindNativePciController() called!
(atapi.c:888) AtapiFindNativePciController() done!
(atapi.c:703) AtapiFindIsaBusController() called!
(atapi.c:741) AtapiFindIsaBusController() both channels claimed. Returns: SP_RETURN_NOT_FOUND
(atapi.c:703) AtapiFindIsaBusController() called!
(atapi.c:741) AtapiFindIsaBusController() both channels claimed. Returns: SP_RETURN_NOT_FOUND
(atapi.c:428) Returning from DriverEntry
DriverBase for class2.sys: dccfc000
DriverBase for disk.sys: dcd05000
(atapi.c:917) AtapiStartIo() called
(atapi.c:1823) AtapiSendIdeCommand() called!
(atapi.c:1828) PathId: 0 TargetId: 0 Lun: 0
(atapi.c:1980) SCSIOP_READ_CAPACITY: TargetId: 0
(atapi.c:2008) LastCount: 11733119 (00b3087f / 7f08b300)
(atapi.c:1896) AtapiSendIdeCommand() done!
(atapi.c:973) AtapiStartIo() done
(atapi.c:917) AtapiStartIo() called
(atapi.c:1823) AtapiSendIdeCommand() called!
(atapi.c:1828) PathId: 0 TargetId: 0 Lun: 0
(atapi.c:2031) AtapiReadWrite() called!
(atapi.c:2033) SCSIOP_WRITE: TargetId: 0
(atapi.c:2049) Starting sector 0 Number of bytes 512 Sectors 1
(atapi.c:2080) READ:BUS=01f0:DRV=0:LBA=1:BLK=00000000:SC=01:CM=c0
(atapi.c:2112) status=ff
(atapi.c:2113) waited 500000 usecs for busy to clear
(atapi.c:2116) Drive is BUSY for too long
(atapi.c:1896) AtapiSendIdeCommand() done!
(atapi.c:973) AtapiStartIo() done
(atapi.c:917) AtapiStartIo() called
(atapi.c:1823) AtapiSendIdeCommand() called!
(atapi.c:1828) PathId: 0 TargetId: 0 Lun: 0
(atapi.c:2031) AtapiReadWrite() called!
(atapi.c:2033) SCSIOP_WRITE: TargetId: 0
(atapi.c:2049) Starting sector 0 Number of bytes 512 Sectors 1
(atapi.c:2080) READ:BUS=01f0:DRV=0:LBA=1:BLK=00000000:SC=01:CM=c0
(atapi.c:2112) status=ff
(atapi.c:2113) waited 500000 usecs for busy to clear
(atapi.c:2116) Drive is BUSY for too long
(atapi.c:1896) AtapiSendIdeCommand() done!
(atapi.c:973) AtapiStartIo() done
More information about the Ros-dev
mailing list