WaxfordSqueers
April 19th, 2009, 00:09
I've tried finding a solution to a SATA problem everywhere on the Net plus at Intel, Msoft, Silicon Image and LG Electronics. Seems all the latter want is your initial money for their product, then you're on your own. Thought I'd try here since I plan to use softice on the problem, which might involve reversing atapi.sys or the likes.
I have a DMA problem. My optical drive is recognized on the SATA controller and it will read both CD and DVD media. I can even boot from it by setting it to boot off a SATA device in BIOS. However, I cannot write anything since it crashes each time at 13% of the write, even in simulation mode.
The device is an LG Electronics GH22NS30 SATA DVD-writer on an onboard Silicon Image Si3112 controller (ATA/ATAPI-6 @ 1.5 Gb/s) on an Intel D845PEBT2 motherboard (ICH4 core). Several different utilities show the controller/optical device stuck in PIO4 mode, which is essentially useless for data transfer on a write. I need UDMA2.
There is plenty of info on the Net about setting the DMA on an ATA/ATAPI system but not on a SATA system, which emulates ATA/ATAPI and used DMA transfers. In fact, I can't set the DMA anywhere but in a Silicon Image configuration utility that puts an entry in the registry, which is subsequently ignored by windoze.
The problem may be Microsoft. In their infinite wisdom, they have built in a degradation system which throttles transfer rates if more than 6 CRC errors are detected. It will start at the highest UDMA setting and drop it one step at a time down into PIO mode.
I have looked at and changed the cables, making sure they are seated properly. I can't believe how Mickey Mouse the SATA connectors are, however, being nothing more than spring clips butting on circuit board strips. I took the drive back to the retailer, who claimed they tested it as functioning correctly. Given that it is working right, I don't see where CRC errors could arise other than in the controller.
I'm at the point of tracing this using softice but I know nothing about PCI busses. Before I go re-inventing the wheel, can anyone offer a few tips?
I have a DMA problem. My optical drive is recognized on the SATA controller and it will read both CD and DVD media. I can even boot from it by setting it to boot off a SATA device in BIOS. However, I cannot write anything since it crashes each time at 13% of the write, even in simulation mode.
The device is an LG Electronics GH22NS30 SATA DVD-writer on an onboard Silicon Image Si3112 controller (ATA/ATAPI-6 @ 1.5 Gb/s) on an Intel D845PEBT2 motherboard (ICH4 core). Several different utilities show the controller/optical device stuck in PIO4 mode, which is essentially useless for data transfer on a write. I need UDMA2.
There is plenty of info on the Net about setting the DMA on an ATA/ATAPI system but not on a SATA system, which emulates ATA/ATAPI and used DMA transfers. In fact, I can't set the DMA anywhere but in a Silicon Image configuration utility that puts an entry in the registry, which is subsequently ignored by windoze.
The problem may be Microsoft. In their infinite wisdom, they have built in a degradation system which throttles transfer rates if more than 6 CRC errors are detected. It will start at the highest UDMA setting and drop it one step at a time down into PIO mode.
I have looked at and changed the cables, making sure they are seated properly. I can't believe how Mickey Mouse the SATA connectors are, however, being nothing more than spring clips butting on circuit board strips. I took the drive back to the retailer, who claimed they tested it as functioning correctly. Given that it is working right, I don't see where CRC errors could arise other than in the controller.
I'm at the point of tracing this using softice but I know nothing about PCI busses. Before I go re-inventing the wheel, can anyone offer a few tips?