[SeaBIOS] [PATCH 1/5] floppy: hold the DOR reset bit low for 4 microseconds, when resetting the floppy controller
Nikolay Nikolov
nickysn at users.sourceforge.net
Fri Feb 9 01:30:59 CET 2018
Signed-off-by: Nikolay Nikolov <nickysn at users.sourceforge.net>
---
src/hw/floppy.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/hw/floppy.c b/src/hw/floppy.c
index 3012b3a..16989c2 100644
--- a/src/hw/floppy.c
+++ b/src/hw/floppy.c
@@ -328,6 +328,8 @@ floppy_enable_controller(void)
dprintf(2, "Floppy_enable_controller\n");
// Clear the reset bit (enter reset state), but set 'enable IRQ and DMA'
floppy_dor_mask(FLOPPY_DOR_RESET, FLOPPY_DOR_IRQ);
+ // Real hardware needs a 4 microsecond delay
+ usleep(4);
// Set the reset bit (normal operation) and keep 'enable IRQ and DMA' on
floppy_dor_mask(0, FLOPPY_DOR_IRQ | FLOPPY_DOR_RESET);
int ret = floppy_wait_irq();
--
2.14.3
More information about the SeaBIOS
mailing list