All of lore.kernel.org
 help / color / mirror / Atom feed
From: Igor Mammedov <imammedo@redhat.com>
To: qemu-devel@nongnu.org
Cc: drjones@redhat.com, marcel.a@redhat.com,
	claudio.fontana@huawei.com, mst@redhat.com,
	zhaoshenglong@huawei.com
Subject: [Qemu-devel] [PATCH v3 46/52] pc: acpi-build: create PCI0._CRS dynamically
Date: Mon,  9 Feb 2015 10:54:08 +0000	[thread overview]
Message-ID: <1423479254-15342-47-git-send-email-imammedo@redhat.com> (raw)
In-Reply-To: <1423479254-15342-1-git-send-email-imammedo@redhat.com>

Replace template patching and runtime
calculation in _CRS() method with static _CRS
defined in SSDT.

It also drops manual hole patching for reserved
PCI/MEM/CPU hoptlug MMIO resources and utilizes
the fact that MMIO resources are reserved by
respective child /i.e. PHPR, MHPD, PRES/ containers.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
---
 hw/i386/acpi-build.c          | 69 ++++++++++++++++----------------
 hw/i386/acpi-dsdt-pci-crs.dsl | 92 -------------------------------------------
 hw/i386/acpi-dsdt.dsl         | 45 ---------------------
 hw/i386/q35-acpi-dsdt.dsl     | 18 ---------
 hw/i386/ssdt-misc.dsl         | 19 ---------
 5 files changed, 33 insertions(+), 210 deletions(-)
 delete mode 100644 hw/i386/acpi-dsdt-pci-crs.dsl

diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
index e195017..bead77e 100644
--- a/hw/i386/acpi-build.c
+++ b/hw/i386/acpi-build.c
@@ -319,24 +319,6 @@ static void acpi_align_size(GArray *blob, unsigned align)
     g_array_set_size(blob, ROUND_UP(acpi_data_len(blob), align));
 }
 
-/* Set a value within table in a safe manner */
-#define ACPI_BUILD_SET_LE(table, size, off, bits, val) \
-    do { \
-        uint64_t ACPI_BUILD_SET_LE_val = cpu_to_le64(val); \
-        memcpy(acpi_data_get_ptr(table, size, off, \
-                                 (bits) / BITS_PER_BYTE), \
-               &ACPI_BUILD_SET_LE_val, \
-               (bits) / BITS_PER_BYTE); \
-    } while (0)
-
-static inline void *acpi_data_get_ptr(uint8_t *table_data, unsigned table_size,
-                                      unsigned off, unsigned size)
-{
-    assert(off + size > off);
-    assert(off + size <= table_size);
-    return table_data + off;
-}
-
 static inline void acpi_add_table(GArray *table_offsets, GArray *table_data)
 {
     uint32_t offset = cpu_to_le32(table_data->len);
@@ -664,22 +646,6 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus,
     aml_append(parent_scope, method);
 }
 
-static void patch_pci_windows(PcPciInfo *pci, uint8_t *start, unsigned size)
-{
-    ACPI_BUILD_SET_LE(start, size, acpi_pci32_start[0], 32, pci->w32.begin);
-
-    ACPI_BUILD_SET_LE(start, size, acpi_pci32_end[0], 32, pci->w32.end - 1);
-
-    if (pci->w64.end || pci->w64.begin) {
-        ACPI_BUILD_SET_LE(start, size, acpi_pci64_valid[0], 8, 1);
-        ACPI_BUILD_SET_LE(start, size, acpi_pci64_start[0], 64, pci->w64.begin);
-        ACPI_BUILD_SET_LE(start, size, acpi_pci64_end[0], 64, pci->w64.end - 1);
-        ACPI_BUILD_SET_LE(start, size, acpi_pci64_length[0], 64, pci->w64.end - pci->w64.begin);
-    } else {
-        ACPI_BUILD_SET_LE(start, size, acpi_pci64_valid[0], 8, 0);
-    }
-}
-
 static void
 build_ssdt(Aml *table_data,
            AcpiCpuInfo *cpu, AcpiPmInfo *pm, AcpiMiscInfo *misc,
@@ -709,9 +675,40 @@ build_ssdt(Aml *table_data,
            ssdp_misc_aml + sizeof(AcpiTableHeader),
            sizeof(ssdp_misc_aml) - sizeof(AcpiTableHeader));
 
-    patch_pci_windows(pci, ssdt_ptr, sizeof(ssdp_misc_aml));
-
     scope = aml_scope("\\_SB.PCI0");
+    /* build PCI0._CRS */
+    crs = aml_resource_template();
+    aml_append(crs,
+        aml_word_bus_number(aml_min_fixed, aml_max_fixed, aml_pos_decode,
+                            0x0000, 0x0000, 0x00FF, 0x0000, 0x0100));
+    aml_append(crs, aml_io(aml_decode16, 0x0CF8, 0x0CF8, 0x01, 0x08));
+
+    aml_append(crs,
+        aml_word_io(aml_min_fixed, aml_max_fixed,
+                    aml_pos_decode, aml_entire_range,
+                    0x0000, 0x0000, 0x0CF7, 0x0000, 0x0CF8));
+    aml_append(crs,
+        aml_word_io(aml_min_fixed, aml_max_fixed,
+                    aml_pos_decode, aml_entire_range,
+                    0x0000, 0x0D00, 0xFFFF, 0x0000, 0xF300));
+    aml_append(crs,
+        aml_dword_memory(aml_pos_decode, aml_min_fixed, aml_max_fixed,
+                         aml_cacheable, aml_ReadWrite,
+                         0, 0x000A0000, 0x000BFFFF, 0, 0x00020000));
+    aml_append(crs,
+        aml_dword_memory(aml_pos_decode, aml_min_fixed, aml_max_fixed,
+                         aml_non_cacheable, aml_ReadWrite,
+                         0, pci->w32.begin, pci->w32.end - 1, 0,
+                         pci->w32.end - pci->w32.begin));
+    if (pci->w64.begin) {
+        aml_append(crs,
+            aml_qword_memory(aml_pos_decode, aml_min_fixed, aml_max_fixed,
+                             aml_cacheable, aml_ReadWrite,
+                             0, pci->w64.begin, pci->w64.end - 1, 0,
+                             pci->w64.end - pci->w64.begin));
+    }
+    aml_append(scope, aml_name_decl("_CRS", crs));
+
     /* reserve PCIHP resources */
     if (pm->pcihp_io_len) {
         dev = aml_device("PHPR");
diff --git a/hw/i386/acpi-dsdt-pci-crs.dsl b/hw/i386/acpi-dsdt-pci-crs.dsl
deleted file mode 100644
index 4648e90..0000000
--- a/hw/i386/acpi-dsdt-pci-crs.dsl
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, see <http://www.gnu.org/licenses/>.
- */
-
-/* PCI CRS (current resources) definition. */
-Scope(\_SB.PCI0) {
-
-    Name(CRES, ResourceTemplate() {
-        WordBusNumber(ResourceProducer, MinFixed, MaxFixed, PosDecode,
-            0x0000,             // Address Space Granularity
-            0x0000,             // Address Range Minimum
-            0x00FF,             // Address Range Maximum
-            0x0000,             // Address Translation Offset
-            0x0100,             // Address Length
-            ,, )
-        IO(Decode16,
-            0x0CF8,             // Address Range Minimum
-            0x0CF8,             // Address Range Maximum
-            0x01,               // Address Alignment
-            0x08,               // Address Length
-            )
-        BOARD_SPECIFIC_PCI_RESOURSES
-        DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
-            0x00000000,         // Address Space Granularity
-            0x000A0000,         // Address Range Minimum
-            0x000BFFFF,         // Address Range Maximum
-            0x00000000,         // Address Translation Offset
-            0x00020000,         // Address Length
-            ,, , AddressRangeMemory, TypeStatic)
-        DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
-            0x00000000,         // Address Space Granularity
-            0xE0000000,         // Address Range Minimum
-            0xFEBFFFFF,         // Address Range Maximum
-            0x00000000,         // Address Translation Offset
-            0x1EC00000,         // Address Length
-            ,, PW32, AddressRangeMemory, TypeStatic)
-    })
-
-    Name(CR64, ResourceTemplate() {
-        QWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
-            0x00000000,          // Address Space Granularity
-            0x8000000000,        // Address Range Minimum
-            0xFFFFFFFFFF,        // Address Range Maximum
-            0x00000000,          // Address Translation Offset
-            0x8000000000,        // Address Length
-            ,, PW64, AddressRangeMemory, TypeStatic)
-    })
-
-    Method(_CRS, 0) {
-        /* Fields provided by dynamically created ssdt */
-        External(P0S, IntObj)
-        External(P0E, IntObj)
-        External(P1V, IntObj)
-        External(P1S, BuffObj)
-        External(P1E, BuffObj)
-        External(P1L, BuffObj)
-
-        /* fixup 32bit pci io window */
-        CreateDWordField(CRES, \_SB.PCI0.PW32._MIN, PS32)
-        CreateDWordField(CRES, \_SB.PCI0.PW32._MAX, PE32)
-        CreateDWordField(CRES, \_SB.PCI0.PW32._LEN, PL32)
-        Store(P0S, PS32)
-        Store(P0E, PE32)
-        Store(Add(Subtract(P0E, P0S), 1), PL32)
-
-        If (LEqual(P1V, Zero)) {
-            Return (CRES)
-        }
-
-        /* fixup 64bit pci io window */
-        CreateQWordField(CR64, \_SB.PCI0.PW64._MIN, PS64)
-        CreateQWordField(CR64, \_SB.PCI0.PW64._MAX, PE64)
-        CreateQWordField(CR64, \_SB.PCI0.PW64._LEN, PL64)
-        Store(P1S, PS64)
-        Store(P1E, PE64)
-        Store(P1L, PL64)
-        /* add window and return result */
-        ConcatenateResTemplate(CRES, CR64, Local0)
-        Return (Local0)
-    }
-}
diff --git a/hw/i386/acpi-dsdt.dsl b/hw/i386/acpi-dsdt.dsl
index a611e07..09b68f0 100644
--- a/hw/i386/acpi-dsdt.dsl
+++ b/hw/i386/acpi-dsdt.dsl
@@ -31,50 +31,6 @@ DefinitionBlock (
 
 #include "acpi-dsdt-dbug.dsl"
 
-
-/****************************************************************
- * PCI Bus definition
- ****************************************************************/
-#define BOARD_SPECIFIC_PCI_RESOURSES \
-     WordIO(ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, \
-         0x0000, \
-         0x0000, \
-         0x0CF7, \
-         0x0000, \
-         0x0CF8, \
-         ,, , TypeStatic) \
-     WordIO(ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, \
-         0x0000, \
-         0x0D00, \
-         0xADFF, \
-         0x0000, \
-         0xA100, \
-         ,, , TypeStatic) \
-     /* 0xae00-0xae0e hole for PCI hotplug, hw/acpi/piix4.c:PCI_HOTPLUG_ADDR */ \
-     WordIO(ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, \
-         0x0000, \
-         0xAE0F, \
-         0xAEFF, \
-         0x0000, \
-         0x00F1, \
-         ,, , TypeStatic) \
-     /* 0xaf00-0xaf1f hole for CPU hotplug, hw/acpi/piix4.c:PIIX4_PROC_BASE */ \
-     WordIO(ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, \
-         0x0000, \
-         0xAF20, \
-         0xAFDF, \
-         0x0000, \
-         0x00C0, \
-         ,, , TypeStatic) \
-     /* 0xafe0-0xafe3 hole for ACPI.GPE0, hw/acpi/piix4.c:GPE_BASE */ \
-     WordIO(ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, \
-         0x0000, \
-         0xAFE4, \
-         0xFFFF, \
-         0x0000, \
-         0x501C, \
-         ,, , TypeStatic)
-
     Scope(\_SB) {
         Device(PCI0) {
             Name(_HID, EisaId("PNP0A03"))
@@ -85,7 +41,6 @@ DefinitionBlock (
         }
     }
 
-#include "acpi-dsdt-pci-crs.dsl"
 #include "acpi-dsdt-hpet.dsl"
 
 
diff --git a/hw/i386/q35-acpi-dsdt.dsl b/hw/i386/q35-acpi-dsdt.dsl
index e1cee5d..3fb4b2f 100644
--- a/hw/i386/q35-acpi-dsdt.dsl
+++ b/hw/i386/q35-acpi-dsdt.dsl
@@ -48,23 +48,6 @@ DefinitionBlock (
 /****************************************************************
  * PCI Bus definition
  ****************************************************************/
-#define BOARD_SPECIFIC_PCI_RESOURSES \
-     WordIO(ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, \
-         0x0000, \
-         0x0000, \
-         0x0CD7, \
-         0x0000, \
-         0x0CD8, \
-         ,, , TypeStatic) \
-     /* 0xcd8-0xcf7 hole for CPU hotplug, hw/acpi/ich9.c:ICH9_PROC_BASE */ \
-     WordIO(ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, \
-         0x0000, \
-         0x0D00, \
-         0xFFFF, \
-         0x0000, \
-         0xF300, \
-         ,, , TypeStatic)
-
     Scope(\_SB) {
         Device(PCI0) {
             Name(_HID, EisaId("PNP0A08"))
@@ -131,7 +114,6 @@ DefinitionBlock (
         }
     }
 
-#include "acpi-dsdt-pci-crs.dsl"
 #include "acpi-dsdt-hpet.dsl"
 
 
diff --git a/hw/i386/ssdt-misc.dsl b/hw/i386/ssdt-misc.dsl
index 2588e30..8d61f21 100644
--- a/hw/i386/ssdt-misc.dsl
+++ b/hw/i386/ssdt-misc.dsl
@@ -18,23 +18,4 @@ ACPI_EXTRACT_ALL_CODE ssdp_misc_aml
 
 DefinitionBlock ("ssdt-misc.aml", "SSDT", 0x01, "BXPC", "BXSSDTSUSP", 0x1)
 {
-
-/****************************************************************
- * PCI memory ranges
- ****************************************************************/
-
-    Scope(\) {
-       ACPI_EXTRACT_NAME_DWORD_CONST acpi_pci32_start
-       Name(P0S, 0x12345678)
-       ACPI_EXTRACT_NAME_DWORD_CONST acpi_pci32_end
-       Name(P0E, 0x12345678)
-       ACPI_EXTRACT_NAME_BYTE_CONST acpi_pci64_valid
-       Name(P1V, 0x12)
-       ACPI_EXTRACT_NAME_BUFFER8 acpi_pci64_start
-       Name(P1S, Buffer() { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })
-       ACPI_EXTRACT_NAME_BUFFER8 acpi_pci64_end
-       Name(P1E, Buffer() { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })
-       ACPI_EXTRACT_NAME_BUFFER8 acpi_pci64_length
-       Name(P1L, Buffer() { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })
-    }
 }
-- 
1.8.3.1

  parent reply	other threads:[~2015-02-09 10:55 UTC|newest]

Thread overview: 89+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-09 10:53 [Qemu-devel] [PATCH v3 00/52] ACPI refactoring: replace template patching with C AML API Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 01/52] acpi: introduce AML composer aml_append() Igor Mammedov
2015-02-17 16:26   ` Michael S. Tsirkin
2015-02-17 17:50     ` Igor Mammedov
2015-02-17 19:12       ` Michael S. Tsirkin
2015-02-17 19:46   ` Michael S. Tsirkin
2015-02-18  8:50     ` Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 02/52] pc: acpi: use local var for accessing ACPI tables blob in acpi_build() Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 03/52] pc: acpi: make top level ACPI tables blob Aml* Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 04/52] acpi: factor out ACPI const int packing out of build_append_value() Igor Mammedov
2015-02-17 19:53   ` Michael S. Tsirkin
2015-02-18  9:41     ` Igor Mammedov
2015-02-18 13:51       ` Michael S. Tsirkin
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 05/52] acpi: add aml_def_block() term Igor Mammedov
2015-02-17 16:35   ` Michael S. Tsirkin
2015-02-17 16:47     ` Igor Mammedov
2015-02-17 19:03       ` Michael S. Tsirkin
2015-02-18 10:47         ` Igor Mammedov
2015-02-18 11:36           ` Michael S. Tsirkin
2015-02-17 19:15       ` Michael S. Tsirkin
2015-02-18  9:50         ` Igor Mammedov
2015-02-18 11:35           ` Michael S. Tsirkin
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 06/52] pc: acpi-build: use aml_def_block() for declaring SSDT table Igor Mammedov
2015-02-17 16:42   ` Michael S. Tsirkin
2015-02-18  9:57     ` Igor Mammedov
2015-02-18 11:39       ` Michael S. Tsirkin
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 07/52] acpi: add aml_scope() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 08/52] pc: acpi-build: use aml_scope() for \_SB scope Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 09/52] acpi: add aml_device() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 10/52] acpi: add aml_method() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 11/52] acpi: add aml_if() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 12/52] acpi: add aml_name() & aml_name_decl() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 13/52] acpi: extend build_append_{value|int}() to support 64-bit values Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 14/52] acpi: add aml_int() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 15/52] acpi: add aml_return() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 16/52] acpi: add aml_arg() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 17/52] acpi: add aml_store() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 18/52] acpi: add aml_and() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 19/52] acpi: add aml_notify() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 20/52] acpi: add aml_call1(), aml_call2(), aml_call3(), aml_call4() helpers Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 21/52] pc: acpi-build: drop template patching and create PCI bus tree dynamically Igor Mammedov
2015-02-17 19:39   ` Michael S. Tsirkin
2015-02-18 10:00     ` Igor Mammedov
2015-02-18 10:42     ` Igor Mammedov
2015-02-18 11:38       ` Michael S. Tsirkin
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 22/52] acpi: add aml_package() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 23/52] pc: acpi-build: drop unsupported PM1b_CNT.SLP_TYP Igor Mammedov
2015-02-17 16:41   ` Michael S. Tsirkin
2015-02-18 10:03     ` Igor Mammedov
2015-02-18 12:41       ` Michael S. Tsirkin
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 24/52] pc: acpi-build: generate _S[345] packages dynamically Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 25/52] acpi: add aml_buffer() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 26/52] acpi: add aml_resource_template() helper Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 27/52] acpi: add aml_io() helper Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 28/52] acpi: include PkgLength size only when requested Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 29/52] acpi: add aml_operation_region() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 30/52] acpi: add aml_field() & aml_named_field() terms Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 31/52] acpi: add aml_local() term Igor Mammedov
2015-02-17 12:18   ` Michael S. Tsirkin
2015-02-17 14:06     ` Igor Mammedov
2015-02-17 14:24   ` [Qemu-devel] [PATCH v3 31/52] fixup! " Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 32/52] acpi: add aml_string() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 33/52] pc: acpi-build: generate pvpanic device description dynamically Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 34/52] acpi: add aml_varpackage() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 35/52] acpi: add aml_equal() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 36/52] acpi: add aml_processor() term Igor Mammedov
2015-02-09 10:53 ` [Qemu-devel] [PATCH v3 37/52] acpi: add aml_eisaid() term Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 38/52] pc: acpi-build: drop template patching and CPU hotplug objects dynamically Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 39/52] pc: acpi-build: create CPU hotplug IO region dynamically Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 40/52] acpi: add aml_reserved_field() term Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 41/52] pc: acpi-build: drop template patching and memory hotplug objects dynamically Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 42/52] pc: acpi-build: create memory hotplug IO region dynamically Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 43/52] acpi: add aml_word_bus_number(), aml_word_io(), aml_dword_memory(), aml_qword_memory() terms Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 44/52] pc: pcihp: expose MMIO base and len as properties Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 45/52] pc: acpi-build: reserve PCIHP MMIO resources Igor Mammedov
2015-02-09 10:54 ` Igor Mammedov [this message]
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 47/52] pc: acpi-build: drop remaining ssdt_misc template and use acpi_def_block() Igor Mammedov
2015-02-17 16:44   ` Michael S. Tsirkin
2015-02-18 10:09     ` Igor Mammedov
2015-02-18 13:13       ` Michael S. Tsirkin
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 48/52] acpi: add acpi_irq_no_flags() term Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 49/52] pc: export applesmc IO port/len Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 50/52] pc: acpi-build: drop template patching and create Device(SMC) dynamically Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 51/52] pc: acpi-build: update [q35-]acpi-dsdt.hex.generated due to moved SMC Igor Mammedov
2015-02-09 10:54 ` [Qemu-devel] [PATCH v3 52/52] acpi: make build_*() routines static to aml-build.c Igor Mammedov
2015-02-17 16:47 ` [Qemu-devel] [PATCH v3 00/52] ACPI refactoring: replace template patching with C AML API Michael S. Tsirkin
2015-02-17 17:51   ` Igor Mammedov
2015-02-17 19:14     ` Michael S. Tsirkin
2015-02-18 10:35       ` Igor Mammedov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1423479254-15342-47-git-send-email-imammedo@redhat.com \
    --to=imammedo@redhat.com \
    --cc=claudio.fontana@huawei.com \
    --cc=drjones@redhat.com \
    --cc=marcel.a@redhat.com \
    --cc=mst@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=zhaoshenglong@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.