[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 9/9] ATA: Allow WIN_SECURITY_FREEZE_LOCK as nop
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PATCH 9/9] ATA: Allow WIN_SECURITY_FREEZE_LOCK as nop |
Date: |
Wed, 2 May 2012 19:16:18 +0200 |
From: Alexander Graf <address@hidden>
When using Windows 8 with an AHCI disk drive, it issues a blue screen.
The reason is that WIN_SECURITY_FREEZE_LOCK / CFA_WEAR_LEVEL is not
supported by our ATA implementation, but Windows expects it to be there.
Since without security stuff implemented, the lock would be a nop anyway
and CFA_WEAR_LEVEL already is treated as a nop, let's just allow the cmd
for HD drives as well. That way Windows is happy.
Signed-off-by: Alexander Graf <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
---
hw/ide/core.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/hw/ide/core.c b/hw/ide/core.c
index a5216a6..9785d5f 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -1035,7 +1035,7 @@ static const uint8_t ide_cmd_table[0x100] = {
[WIN_IDENTIFY] = ALL_OK,
[WIN_SETFEATURES] = ALL_OK,
[IBM_SENSE_CONDITION] = CFA_OK,
- [CFA_WEAR_LEVEL] = CFA_OK,
+ [CFA_WEAR_LEVEL] = HD_CFA_OK,
[WIN_READ_NATIVE_MAX] = ALL_OK,
};
@@ -1350,6 +1350,11 @@ void ide_exec_cmd(IDEBus *bus, uint32_t val)
break;
case CFA_ERASE_SECTORS:
case CFA_WEAR_LEVEL:
+#if 0
+ /* This one has the same ID as CFA_WEAR_LEVEL and is required for
+ Windows 8 to work with AHCI */
+ case WIN_SECURITY_FREEZE_LOCK:
+#endif
if (val == CFA_WEAR_LEVEL)
s->nsector = 0;
if (val == CFA_ERASE_SECTORS)
--
1.7.6.5
- [Qemu-devel] [PULL 0/9] Block patches (master and 1.1), Kevin Wolf, 2012/05/02
- [Qemu-devel] [PATCH 2/9] block/qcow2: Add missing GCC_FMT_ATTR to function report_unsupported(), Kevin Wolf, 2012/05/02
- [Qemu-devel] [PATCH 1/9] qemu-iotests: ignore fragmentation information for qed, Kevin Wolf, 2012/05/02
- [Qemu-devel] [PATCH 3/9] docs: fix one issue in qcow2 specs, Kevin Wolf, 2012/05/02
- [Qemu-devel] [PATCH 8/9] rbd: add discard support, Kevin Wolf, 2012/05/02
- [Qemu-devel] [PATCH 4/9] qemu-iotests: Many parallel allocating I/O requests, Kevin Wolf, 2012/05/02
- [Qemu-devel] [PATCH 7/9] qcow2: fix the return value -ENOENT -> -EEXIST, Kevin Wolf, 2012/05/02
- [Qemu-devel] [PATCH 9/9] ATA: Allow WIN_SECURITY_FREEZE_LOCK as nop,
Kevin Wolf <=
- [Qemu-devel] [PATCH 5/9] qcow2: Remove unused parameter in do_alloc_cluster_offset, Kevin Wolf, 2012/05/02
- [Qemu-devel] [PATCH 6/9] qcow2: Don't hold cache references across yield, Kevin Wolf, 2012/05/02