[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] rombios/ata: Wait for BSY to clear after write
On 13/06/17 09:34, Ross Lagerwall wrote: > After rombios transfers the data for a write, it checks the status and > fails if BSY is set. qemu-trad doesn't set BSY for PIO writes, but QEMU > upstream does, and this causes rombios to fail writes because they are > marked as BSY. Instead, wait for BSY to clear after a write. > > INT 13 writes are probably rarely used these days, but they are used by > GRUB 2 to write to its environment file which happens by default on > Ubuntu. > > Signed-off-by: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx> Acked-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> Ian/Wei: RomBIOS should probably join hvmloader under x86 maintainership, if you don't object? > --- > tools/firmware/rombios/rombios.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/firmware/rombios/rombios.c > b/tools/firmware/rombios/rombios.c > index 58ace9b..51558ee 100644 > --- a/tools/firmware/rombios/rombios.c > +++ b/tools/firmware/rombios/rombios.c > @@ -3226,7 +3226,7 @@ ASM_END > current++; > write_word(ebda_seg, &EbdaData->ata.trsfsectors,current); > count--; > - status = inb(iobase1 + ATA_CB_STAT); > + status = await_ide(NOT_BSY, iobase1, IDE_TIMEOUT); > if (count == 0) { > if ( (status & (ATA_CB_STAT_BSY | ATA_CB_STAT_RDY | ATA_CB_STAT_DF | > ATA_CB_STAT_DRQ | ATA_CB_STAT_ERR) ) > != ATA_CB_STAT_RDY ) { _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |