aboutsummaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorSøren Schmidt <sos@FreeBSD.org>2003-08-25 13:06:13 +0000
committerSøren Schmidt <sos@FreeBSD.org>2003-08-25 13:06:13 +0000
commit3a83be8e3bc791cf37af7aa3c02b7f6e88411027 (patch)
tree5b3893e1b14b11d9f483effec4f9541962dc326d /sys/dev
parent6419d0b0e4d646339818b92e9585491d3375fecb (diff)
downloadsrc-3a83be8e3bc791cf37af7aa3c02b7f6e88411027.tar.gz
src-3a83be8e3bc791cf37af7aa3c02b7f6e88411027.zip
Try to get rid of the fake slave problem.
Notes
Notes: svn path=/head/; revision=119454
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/ata/ata-lowlevel.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/dev/ata/ata-lowlevel.c b/sys/dev/ata/ata-lowlevel.c
index 9d0ba665bdd4..865cb0fb719e 100644
--- a/sys/dev/ata/ata-lowlevel.c
+++ b/sys/dev/ata/ata-lowlevel.c
@@ -533,6 +533,8 @@ ata_reset(struct ata_channel *ch)
lsb = ATA_IDX_INB(ch, ATA_CYL_LSB);
msb = ATA_IDX_INB(ch, ATA_CYL_MSB);
stat0 = ATA_IDX_INB(ch, ATA_STATUS);
+ ATA_IDX_OUTB(ch, ATA_CYL_LSB, 0x00);
+ ATA_IDX_OUTB(ch, ATA_CYL_MSB, 0x00);
if (!(stat0 & ATA_S_BUSY)) {
if (bootverbose)
ata_printf(ch, ATA_MASTER, "ATAPI %02x %02x\n", lsb, msb);
@@ -548,6 +550,8 @@ ata_reset(struct ata_channel *ch)
lsb = ATA_IDX_INB(ch, ATA_CYL_LSB);
msb = ATA_IDX_INB(ch, ATA_CYL_MSB);
stat1 = ATA_IDX_INB(ch, ATA_STATUS);
+ ATA_IDX_OUTB(ch, ATA_CYL_LSB, 0x00);
+ ATA_IDX_OUTB(ch, ATA_CYL_MSB, 0x00);
if (!(stat1 & ATA_S_BUSY)) {
if (bootverbose)
ata_printf(ch, ATA_SLAVE, "ATAPI %02x %02x\n", lsb, msb);