qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Gleb Natapov <gleb@redhat.com>
To: Kevin O'Connor <kevin@koconnor.net>
Cc: seabios@seabios.org, Avi Kivity <avi@redhat.com>, qemu-devel@nongnu.org
Subject: [Qemu-devel] Re: [SeaBIOS] [PATCHv2] load hpet info for HPET ACPI table from qemu
Date: Tue, 15 Jun 2010 09:37:07 +0300	[thread overview]
Message-ID: <20100615063707.GK21797@redhat.com> (raw)
In-Reply-To: <20100614201231.GA29913@morn.localdomain>

On Mon, Jun 14, 2010 at 04:12:32PM -0400, Kevin O'Connor wrote:
> On Mon, Jun 14, 2010 at 09:56:15PM +0300, Gleb Natapov wrote:
> > On Mon, Jun 14, 2010 at 02:25:21PM -0400, Kevin O'Connor wrote:
> > > It seems there was a change in qemu to the hpet functionality.
> > My patch is completely unrelated to functionality change in qemu. In
> > fact I wrote it before the change and had to rebase. Seabios/qemu have
> > a bug that HPET is always advertise through ACPI table even when qemu
> > haven't created one. So your description above is not accurate.
> 
> I apologize for the confusion.  However, I feel this only furthers my
> proposal.  (There was a defect in hpet table generation - seabios
> knows/cares nothing about the hpet - but now we need to review, patch,
> and coordinate two different projects.)
> 
Seabios "knows/cares nothing about the hpet" is just another
bug/missing features. See hpet spec at www.intel.com/hardwaredesign/hpetspec_1.pdf 
and search for System BIOS (System BIOS need to do this, System BIOS need
to mark that).

> > But even if it was accurate propagation features through software stack is
> > common operation everywhere. Think about adding system call to the
> > kernel and updating libc, or adding feature to kvm kernel module and
> > adding patch to use it in qemu.
> 
> I don't see why the above would deter us from optimizing seabios/qemu
> maintenance work.

So why not go further? In theory qemu needs seabios only for legacy bios
functionality. Qemu is perfectly capable of configuring HW to OS usable
state by itself, so we can have coreboot functionality completely inside
qemu and use seabios only for legacy function just like coreboot does.

Firmware/HW is tightly coupled by design. If you do not want seabios to
be qemu's firmware and just what it to have only legacy bios
functionality we can yank all qemu support from seabios and move it to
coreboot project and use seabios only for legacy bios just like coreboot
does.

> 
> > > I'm not suggesting a radical rethink of fwcfg, but I fail to see the
> > > advantage in introducing the arbitrary "struct hpet_fw_entry" when
> > > there is a perfectly good, well defined, "struct acpi_20_hpet" that
> > > already exists.  This new arbitrary intermediate format just
> > > introduces "make work" for all of us.
> > > 
> > Then qemu will have to create ACPI header too and will have to fill
> > details like oem_id/oem_table_id and so on. Now if I want to change them
> > in my bios version it is not enough to edit CONFIG_APPNAME in seabios.
> 
> Easily solved - if there exists a table via
> qemu_cfg_acpi_additional_tables(), then SeaBIOS could use the oem_ids
> from that table for all tables SeaBIOS creates.
Why create problem to solve them easily later?

> 
> > If seabios will decide to move to more resent version of ACPI spec it
> > will not be able to do so since it will not fully control table creation.
> 
> Well, SeaBIOS already doesn't fully control table creation.
> 
Users are not suppose to abuse ACPI table passing interface. If they do
that and things breaks they should fix them by themselves. If we start
using this interface internally in qemu that's different.

> But.. in order to move to a newer ACPI spec, there would be qemu
> changes anyway.  (If nothing else, so that qemu can tell seabios if
> it's okay to use the new rev.)  At that point we're stuck changing
> both repos anyway - nothing gained, nothing lost.
I don't see why qemu should care what ACPI rev Seabios uses. You don't
changed you HW when you update you BIOS in non virtualized world. You do
change you BIOS with each new HW though.

> 
> I still think there is an opportunity to reduce the load on the bulk
> of acpi changes - most of these changes have no dependence on seabios
> at all.
> 
That depends on how you view seabios project. If you consider it to be
legacy bios functionality provider only then I agree and we should move
to coreboot model. If you consider it to be legacy bios + qemu firmware
(like old BOCHS bios was) then by definition it's seabios job to
describe underlying HW to an OS.

--
			Gleb.

  reply	other threads:[~2010-06-15  6:37 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-14  8:30 [Qemu-devel] [PATCHv2] load hpet info for HPET ACPI table from qemu Gleb Natapov
2010-06-14 13:54 ` [Qemu-devel] Re: [SeaBIOS] " Kevin O'Connor
2010-06-14 14:09   ` Gleb Natapov
2010-06-14 14:40     ` Jamie Lokier
2010-06-14 16:03       ` Gleb Natapov
2010-06-14 14:51     ` Avi Kivity
2010-06-14 18:25       ` Kevin O'Connor
2010-06-14 18:56         ` Gleb Natapov
2010-06-14 20:12           ` Kevin O'Connor
2010-06-15  6:37             ` Gleb Natapov [this message]
2010-06-17  1:22               ` Kevin O'Connor
2010-06-17  7:45                 ` Gleb Natapov
2010-06-17  1:58             ` Peter Stuge
2010-06-14 19:38         ` Anthony Liguori
2010-06-15  4:47           ` Avi Kivity
2010-06-15  6:50             ` Gleb Natapov
2010-06-17  1:47               ` Kevin O'Connor
2010-06-17  3:58                 ` Avi Kivity
2010-06-17  6:57                   ` Peter Stuge
2010-06-15  0:54         ` Paul Brook
2010-06-15  4:41         ` Avi Kivity
2010-06-17  0:55           ` Kevin O'Connor
2010-06-17  6:44             ` Gleb Natapov

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=20100615063707.GK21797@redhat.com \
    --to=gleb@redhat.com \
    --cc=avi@redhat.com \
    --cc=kevin@koconnor.net \
    --cc=qemu-devel@nongnu.org \
    --cc=seabios@seabios.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).