All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: qemu-devel@nongnu.org
Cc: Gal Hammer <ghammer@redhat.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Anthony Liguori <aliguori@amazon.com>,
	Paolo Bonzini <pbonzini@redhat.com>
Subject: [Qemu-devel] [PULL v2 5/9] i386: Add an ACPI_EXTRACT_NAME_BUFFER16 directive.
Date: Wed, 22 Oct 2014 11:18:20 +0300	[thread overview]
Message-ID: <1413965859-7698-6-git-send-email-mst@redhat.com> (raw)
In-Reply-To: <1413965859-7698-1-git-send-email-mst@redhat.com>

From: Gal Hammer <ghammer@redhat.com>

Add a 16-bytes buffer to allow storing a 128-bit UUID value in an
ACPI table.

Signed-off-by: Gal Hammer <ghammer@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
 scripts/acpi_extract.py | 23 ++++++++++++++---------
 1 file changed, 14 insertions(+), 9 deletions(-)

diff --git a/scripts/acpi_extract.py b/scripts/acpi_extract.py
index 22ea468..10c1ffb 100755
--- a/scripts/acpi_extract.py
+++ b/scripts/acpi_extract.py
@@ -139,13 +139,16 @@ def aml_name_string(offset):
         offset += 1
     return offset;
 
-# Given data offset, find 8 byte buffer offset
-def aml_data_buffer8(offset):
-    #0x08 NameOp NameString DataRef
-    expect = [0x11, 0x0B, 0x0A, 0x08]
+# Given data offset, find variable length byte buffer offset
+def aml_data_buffer(offset, length):
+    #0x11 PkgLength BufferSize ByteList
+    if (length > 63):
+        die( "Name offset 0x%x: expected a one byte PkgLength (length<=63)" %
+             (offset));
+    expect = [0x11, length+3, 0x0A, length]
     if (aml[offset:offset+4] != expect):
         die( "Name offset 0x%x: expected %s actual %s" %
-             (offset, aml[offset:offset+4], expect))
+             (offset, expect, aml[offset:offset+4]))
     return offset + len(expect)
 
 # Given data offset, find dword const offset
@@ -172,9 +175,9 @@ def aml_data_byte_const(offset):
              (offset, aml[offset]));
     return offset + 1;
 
-# Find name'd buffer8
-def aml_name_buffer8(offset):
-    return aml_data_buffer8(aml_name_string(offset) + 4)
+# Find name'd buffer
+def aml_name_buffer(offset, length):
+    return aml_data_buffer(aml_name_string(offset) + 4, length)
 
 # Given name offset, find dword const offset
 def aml_name_dword_const(offset):
@@ -308,7 +311,9 @@ for i in range(len(asl)):
         output[array] = aml
         continue
     if (directive == "ACPI_EXTRACT_NAME_BUFFER8"):
-        offset = aml_name_buffer8(offset)
+        offset = aml_name_buffer(offset, 8)
+    elif (directive == "ACPI_EXTRACT_NAME_BUFFER16"):
+        offset = aml_name_buffer(offset, 16)
     elif (directive == "ACPI_EXTRACT_NAME_DWORD_CONST"):
         offset = aml_name_dword_const(offset)
     elif (directive == "ACPI_EXTRACT_NAME_WORD_CONST"):
-- 
MST

  parent reply	other threads:[~2014-10-22  8:15 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-22  8:18 [Qemu-devel] [PULL v2 0/9] pc, virtio, misc bugfixes Michael S. Tsirkin
2014-10-22  8:18 ` [Qemu-devel] [PULL v2 1/9] smbios: Fix assertion on socket count calculation Michael S. Tsirkin
2014-10-22  8:18 ` [Qemu-devel] [PULL v2 2/9] well-defined listing order for machine types Michael S. Tsirkin
2014-11-03 13:04   ` Laszlo Ersek
2014-11-03 13:10     ` Laszlo Ersek
2014-11-03 13:11     ` Andreas Färber
2014-11-03 13:11     ` Michael S. Tsirkin
2014-10-22  8:18 ` [Qemu-devel] [PULL v2 3/9] i386/pc: add piix and q35 machtypes to sorting families for -M \? Michael S. Tsirkin
2014-10-22  8:18 ` [Qemu-devel] [PULL v2 4/9] pc: Fix disabling of vapic for compat PC models Michael S. Tsirkin
2014-10-22  8:18 ` Michael S. Tsirkin [this message]
2014-10-22  8:18 ` [Qemu-devel] [PULL v2 6/9] pcie: change confused comment clearer Michael S. Tsirkin
2014-10-22  8:18 ` [Qemu-devel] [PULL v2 7/9] virtio-pci: fix migration for pci bus master Michael S. Tsirkin
2014-10-22  8:18 ` [Qemu-devel] [PULL v2 8/9] intel_iommu: fix VTD_SID_TO_BUS Michael S. Tsirkin
2014-10-22  8:18 ` [Qemu-devel] [PULL v2 9/9] tests: fix rebuild-expected-aml.sh for acpi-test rename Michael S. Tsirkin
2014-10-22 20:42 ` [Qemu-devel] [PULL v2 0/9] pc, virtio, misc bugfixes Peter Maydell

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=1413965859-7698-6-git-send-email-mst@redhat.com \
    --to=mst@redhat.com \
    --cc=aliguori@amazon.com \
    --cc=ghammer@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /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.