From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35534) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoWmo-0005sK-BR for qemu-devel@nongnu.org; Wed, 12 Nov 2014 07:12:40 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XoWmi-0003S0-1V for qemu-devel@nongnu.org; Wed, 12 Nov 2014 07:12:34 -0500 Received: from mx1.redhat.com ([209.132.183.28]:45932) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoWmh-0003Rt-OA for qemu-devel@nongnu.org; Wed, 12 Nov 2014 07:12:27 -0500 Message-ID: <54634E92.8010805@redhat.com> Date: Wed, 12 Nov 2014 13:12:02 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <20141030180216.GD31629@leverpostej> <5459F4CB.1000009@huawei.com> <20141111152932.GA25295@leverpostej> <20141111163101.GB23267@cbox> <20141111164807.GC25295@leverpostej> <20141111213312.GC19598@cbox> <20141112103854.GA28015@leverpostej> <546349F6.10300@redhat.com> <20141112120419.GE28015@leverpostej> In-Reply-To: <20141112120419.GE28015@leverpostej> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [Linaro-acpi] [RFC PATCH 0/7] hw/arm/virt: Dynamic ACPI v5.1 table generation List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Mark Rutland Cc: Peter Maydell , "Ian.Campbell@citrix.com" , "linaro-acpi@lists.linaro.org" , Alexander Spyridakis , Julien Grall , Claudio Fontana , QEMU Developers , Leif Lindholm , "stefano.stabellini@citrix.com" , "grant.likely@linaro.org" , "tech@virtualopensystems.com" , Parth Dixit , Christoffer Dall On 12/11/2014 13:04, Mark Rutland wrote: >> > SeaBIOS fishes out information from fw_cfg, and puts it in low memory. >> > On ARM you could use DT binary blobs instead of fw_cfg, as proposed >> > already (I don't remember if it was in this thread or IRC). Then if you >> > want to go !UEFI you can extract the tables from those binary blobs. > This sounds broken. I am very much not a fan of shoving binary blobs > into DT to workaround a shoddy boot interface. We tried spec-ing everything and building the tables in the firmware on x86. You really do not want to do that; it's painful to have to update firmware in lockstep with QEMU, and when you add the next feature it always seems like you got the bindings wrong. And we only had one client (SeaBIOS) while you will have at least two (TianoCore and Linux, presumably? or is Huawei targeting OSv only?). What we do now is we have two blobs, one with the ACPI tables and one that tells the firmware how to relocate pointers from one table to another. It's been working very well for both SeaBIOS and OVMF. Paolo