aboutsummaryrefslogtreecommitdiff
path: root/src/disk.c
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2009-02-27 21:23:01 -0500
committerKevin O'Connor <kevin@koconnor.net>2009-02-27 21:23:01 -0500
commit32945af3f271506d49e17ab0709abfeaec309c79 (patch)
tree33aadcfac65c6e62837058775d16806ddfb371a1 /src/disk.c
parentd626e557f062a977d5fce363da7512fdeb5e590d (diff)
downloadseabios-hppa-32945af3f271506d49e17ab0709abfeaec309c79.zip
seabios-hppa-32945af3f271506d49e17ab0709abfeaec309c79.tar.gz
seabios-hppa-32945af3f271506d49e17ab0709abfeaec309c79.tar.bz2
Don't 'autodetect' ATA PIO32 mode - use compile def instead.
The PIO32 detection appears to use a hack built for emulators. It wont work on real hardware. Implement with a compile time define instead. This also improves the quality of the compiled code.
Diffstat (limited to 'src/disk.c')
-rw-r--r--src/disk.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/disk.c b/src/disk.c
index 9bad1d7..898fe49 100644
--- a/src/disk.c
+++ b/src/disk.c
@@ -452,7 +452,6 @@ disk_1348(struct bregs *regs, u8 device)
u16 iobase1 = GET_GLOBAL(ATA.channels[channel].iobase1);
u16 iobase2 = GET_GLOBAL(ATA.channels[channel].iobase2);
u8 irq = GET_GLOBAL(ATA.channels[channel].irq);
- u8 mode = GET_GLOBAL(ATA.devices[device].mode);
u16 options = 0;
if (type == ATA_TYPE_ATA) {
@@ -470,7 +469,7 @@ disk_1348(struct bregs *regs, u8 device)
options |= 1<<6; // atapi device
}
options |= 1<<4; // lba translation
- if (mode == ATA_MODE_PIO32)
+ if (CONFIG_ATA_PIO32)
options |= 1<<7;
SET_EBDA2(ebda_seg, dpte.iobase1, iobase1);