在 2013-05-15三的 15:44 +0200,Laszlo Ersek写道: > On 05/15/13 10:54, li guang wrote: > > 在 2013-05-15三的 10:38 +0200,Paolo Bonzini写道: > >> Il 15/05/2013 06:01, liguang ha scritto: > >>> Signed-off-by: liguang <lig.f...@cn.fujitsu.com> > >> > >> --verbose, please. > >> > >> What problem does this patch fix? > > > > Oh, sorry to be lazy ... > > QEMU's option '-no-acpi' seems does not play > > a correct role, even started with this, > > ACPI tables will also be embedded into BIOS, > > and there's no different between with or without it > > for q35, as i can see. > > > > here, I'm assuming '-no-acpi' is to disable ACPI. > > -no-acpi disables a block of code in pc_init1() [hw/i386/pc_piix.c], > namely piix4_pm_init() and smbus_eeprom_init(). > > pc_acpi_init() loads / exports a default DSDT for the boot firmware. If > the -acpitable switch is passed, then that code doesn't run.
Yes, if '-acpitable' & '-no-acpi' passed, I think QEMU is valid to override '-no-acpi' by '-acpitable'. > > I think disabling PM but keeping the default DSDT from SeaBIOS is a > valid use case; the DSDT seems to contain a bunch of non-PM > functionality (see src/acpi-dsdt*.dsl in SeaBIOS). The "-no-acpi" switch > is likely a misnomer (it should say "-no-acpi-pm" or some such), but in > any case I believe it should not prevent exporting the DSDT. what's the purpose of only disable PM by '-no-acpi'? can we use -no-acpi to disable whole ACPI? Thanks! > > Currently you can prevent exporting the default DSDT for example with: > > -acpitable sig=NONE,data=/dev/null > > This will export a table with signature NONE, otherwise qemu-default > ACPI table headers, and no table contents. It will also prevent > pc_acpi_init() from running. See "AcpiTableOptions" in > "qapi-schema.json" and "hw/acpi/core.c". > > Thanks, > Laszlo >