From: Ian Jackson Date: Thu, 8 Apr 2010 15:56:24 +0000 (+0100) Subject: passthrough: fix header type register emulation X-Git-Tag: xen-3.4.3-rc5-broken~1 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=7b4b8f46343223f67d952f6284d65de4d79e40f0;p=qemu-xen-4.3-testing.git passthrough: fix header type register emulation This patch fixes the emulation of latency timer and header type. The change set of cc1a204423475ff7a918b11d78b9ae637f320e23 deleted the header type register emulation. On the other hand, the change set of ec5e52d5cb2e6f8851c345b7c3095fe2030fff9c tries to update header type emulation, however it wrongly touches latency timer emulation part. I think this was caused by mis-merging. This patch sorts it out. Cc: Dexuan Cui Cc: Masaki Kanno Cc: Ian Jackson Signed-off-by: Isaku Yamahata Acked-by: Simon Horman --- diff --git a/hw/pass-through.c b/hw/pass-through.c index fadd358fa..5a76e8da5 100644 --- a/hw/pass-through.c +++ b/hw/pass-through.c @@ -329,11 +329,23 @@ static struct pt_reg_info_tbl pt_emu_reg_header0_tbl[] = { .init_val = 0x00, .ro_mask = 0x00, .emu_mask = 0xFF, - .init = pt_header_type_reg_init, + .init = pt_common_reg_init, .u.b.read = pt_byte_reg_read, .u.b.write = pt_byte_reg_write, .u.b.restore = pt_byte_reg_restore, }, + /* Header Type reg */ + { + .offset = PCI_HEADER_TYPE, + .size = 1, + .init_val = 0x00, + .ro_mask = 0xFF, + .emu_mask = 0x00, + .init = pt_header_type_reg_init, + .u.b.read = pt_byte_reg_read, + .u.b.write = pt_byte_reg_write, + .u.b.restore = NULL, + }, /* Interrupt Line reg */ { .offset = PCI_INTERRUPT_LINE,