From 69fba4a51edb69fb983ca887d985c1d9a1c62e5e Mon Sep 17 00:00:00 2001 From: pbrook Date: Sun, 13 Aug 2006 14:20:43 +0000 Subject: [PATCH] Remove OpenBIOS ESP patch. Merged upstream. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2108 c046a42c-6fe2-441c-8c8c-71466251a162 --- pc-bios/openbios-esp.diff | 30 ------------------------------ 1 file changed, 30 deletions(-) delete mode 100644 pc-bios/openbios-esp.diff diff --git a/pc-bios/openbios-esp.diff b/pc-bios/openbios-esp.diff deleted file mode 100644 index 5d4f836..0000000 --- a/pc-bios/openbios-esp.diff +++ /dev/null @@ -1,30 +0,0 @@ -The ESP SCSI driver currently doesn't check whether a DMA requests has -completed before checking its status. On older qemu versions this works ok -because DMA happens instantly. On never qemu DMA can take an indeterminate -amount of time ooto complete, just like on real hardware. - -The patch below waits for the controller to raise the DMA interrupt after -initiating a DMA request. - -Index: drivers/esp.c -=================================================================== ---- drivers/esp.c (revision 61) -+++ drivers/esp.c (working copy) -@@ -113,6 +113,8 @@ do_command(esp_private_t *esp, sd_privat - esp->espdma.regs->cond_reg = 0; - // Set ATN, issue command - esp->ll->regs[ESP_CMD] = ESP_CMD_SELA | ESP_CMD_DMA; -+ // Wait for DMA to complete -+ while ((esp->espdma.regs->cond_reg & DMA_HNDL_INTR) == 0) /* no-op */; - // Check status - status = esp->ll->regs[ESP_STATUS]; - -@@ -129,6 +131,8 @@ do_command(esp_private_t *esp, sd_privat - esp->espdma.regs->cond_reg = DMA_ST_WRITE; - // Transfer - esp->ll->regs[ESP_CMD] = ESP_CMD_TI | ESP_CMD_DMA; -+ // Wait for DMA to complete -+ while ((esp->espdma.regs->cond_reg & DMA_HNDL_INTR) == 0) /* no-op */; - // Check status - status = esp->ll->regs[ESP_STATUS]; - -- 1.7.9.5