[SeaBIOS] [RFC] acpi: Do not advertise S3

Fred . eldmannen at gmail.com
Sun Jan 15 12:35:07 CET 2012


SeaBIOS is used in more than just QEMU.
If QEMU does not support S3, then they should patch (or configure)
SeaBIOS to not advertise S3 support.

On Sun, Jan 15, 2012 at 10:00 AM, Gleb Natapov <gleb at redhat.com> wrote:
> On Fri, Jan 13, 2012 at 05:11:27PM -0200, Luiz Capitulino wrote:
>> S3 is broken in qemu in the following ways:
>>
>>  1. S3 is immediately followed by a resume (or it doesn't even
>>     take place)
> The only real problem. I am not aware of "it doesn't even take place"
> part. If there are such cases they are guest problems. Guest can refuse
> to do S3 for number of reasons. This has nothing to do with QEMU.
>
>>  2. The screen goes black after S3
> Guest problem.
>
>>  3. Some people reported a hang (I couldn't reproduce it myself)
> Guest problem.
>
>>
>> Chances are we can get these bugs fixed for 1.1, until there let's
>> not advertise S3 to prevent things like qemu-ga from breaking qemu.
>>
> I am OK with this, but make it "#if DSDT_S3", so that it can be enabled
> without changing the source.
>
>> Signed-off-by: Luiz Capitulino <lcapitulino at redhat.com>
>> ---
>>  src/acpi-dsdt.dsl |    3 +++
>>  src/acpi-dsdt.hex |   16 ++--------------
>>  2 files changed, 5 insertions(+), 14 deletions(-)
>>
>> diff --git a/src/acpi-dsdt.dsl b/src/acpi-dsdt.dsl
>> index 7082b65..2bd8d95 100644
>> --- a/src/acpi-dsdt.dsl
>> +++ b/src/acpi-dsdt.dsl
>> @@ -599,6 +599,8 @@ DefinitionBlock (
>>       * S3 (suspend-to-ram), S4 (suspend-to-disk) and S5 (power-off) type codes:
>>       * must match piix4 emulation.
>>       */
>> +#if 0
>> +    S3 is br0ken in qemu, do not advertise it
>>      Name (\_S3, Package (0x04)
>>      {
>>          0x01,  /* PM1a_CNT.SLP_TYP */
>> @@ -606,6 +608,7 @@ DefinitionBlock (
>>          Zero,  /* reserved */
>>          Zero   /* reserved */
>>      })
>> +#endif
>>      Name (\_S4, Package (0x04)
>>      {
>>          Zero,  /* PM1a_CNT.SLP_TYP */
>> diff --git a/src/acpi-dsdt.hex b/src/acpi-dsdt.hex
>> index 5dc7bb4..9dcef05 100644
>> --- a/src/acpi-dsdt.hex
>> +++ b/src/acpi-dsdt.hex
>> @@ -3,12 +3,12 @@ static unsigned char AmlCode[] = {
>>  0x53,
>>  0x44,
>>  0x54,
>> -0xd3,
>> +0xc7,
>>  0x10,
>>  0x0,
>>  0x0,
>>  0x1,
>> -0x2d,
>> +0xa3,
>>  0x42,
>>  0x58,
>>  0x50,
>> @@ -3850,18 +3850,6 @@ static unsigned char AmlCode[] = {
>>  0x8,
>>  0x5f,
>>  0x53,
>> -0x33,
>> -0x5f,
>> -0x12,
>> -0x6,
>> -0x4,
>> -0x1,
>> -0x1,
>> -0x0,
>> -0x0,
>> -0x8,
>> -0x5f,
>> -0x53,
>>  0x34,
>>  0x5f,
>>  0x12,
>> --
>> 1.7.9.rc0.dirty
>
> --
>                        Gleb.
>
> _______________________________________________
> SeaBIOS mailing list
> SeaBIOS at seabios.org
> http://www.seabios.org/mailman/listinfo/seabios



More information about the SeaBIOS mailing list