Investigating failed suspend/resume T61

Edward Tomasz Napierała trasz at freebsd.org
Wed Jun 4 19:46:30 UTC 2014


Wiadomość napisana przez John Baldwin w dniu 4 cze 2014, o godz. 19:30:

> On Wednesday, June 04, 2014 1:17:14 pm Edward Tomasz Napierała wrote:
>> On 0604T0907, Sean Bruno wrote:
>>> On Thu, 2014-05-29 at 09:30 -0400, John Baldwin wrote:
>>>> On Thursday, May 29, 2014 9:16:41 am Sean Bruno wrote:
>>>>> On Wed, 2014-05-28 at 18:43 -0400, Jung-uk Kim wrote:
>>>>>> -----BEGIN PGP SIGNED MESSAGE-----
>>>>>> Hash: SHA1
>>>>>> 
>>>>>> On 2014-05-28 17:29:35 -0400, John Baldwin wrote:
>>>>>>> Err, I think it enables GPE1 as otherwise ACPICA assumes GPE1 has a
>>>>>>> length of zero (and is thus invalid)?
>>>>>> 
>>>>>> BTW, ACPI 5.0a (page 121) says:
>>>>>> 
>>>>>> "This is an optional field; if this register block is not supported,
>>>>>> this field contains zero."
>>>>>> 
>>>>>> Therefore, we must assume X_GPE1_BLK it is NOT supported.
>>>>>> 
>>>>>> Jung-uk Kim
>>>>> 
>>>>> So, reverting John's changes and applying yours seems to do new things
>>>>> while not quieting the old error messages.  Perhaps this is significant?
>>>>> 
>>>>> real memory  = 2147483648 (2048 MB)
>>>>> avail memory = 2007089152 (1914 MB)
>>>>> Event timer "LAPIC" quality 400
>>>>> ACPI APIC Table: <LENOVO TP-7U   >
>>>>> FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
>>>>> FreeBSD/SMP: 1 package(s) x 2 core(s)
>>>>> cpu0 (BSP): APIC ID:  0
>>>>> cpu1 (AP): APIC ID:  1
>>>>> ACPI BIOS Warning (bug): 32/64X length mismatch in FADT/Gpe1Block: 0/32
>>>>> (20130823/tbfadt-601)
>>>>> ACPI BIOS Warning (bug): Optional FADT field Gpe1Block has zero address
>>>>> or length: 0x000000000000102C/0x0 (20130823/tbfadt-630)
>>>>> ioapic0: Changing APIC ID to 1
>>>>> ioapic0 <Version 2.0> irqs 0-23 on motherboard
>>>>> random: <Software, Yarrow> initialized
>>>>> kbd1 at kbdmux0
>>>>> acpi0: <LENOVO TP-7U> on motherboard
>>>>> CPU0: local APIC error 0x40
>>>>> ACPI Error: GPE0 block (GPE 0 to 31) overlaps the GPE1 block (GPE 0 to
>>>>> 15) - Ignoring GPE1 (20130823/evgpeinit-178)
>>>> 
>>>> Actually, I think all these patches are changing nothing, and this actually
>>>> points out that I misread your FADT at the first.  GPE1 should actually be
>>>> ignored since it does in fact overlap.  Can you just try reverting all your
>>>> changes and seeing if suspend/resume works?
>>>> 
>>> 
>>> 
>>> Boy oh boy ... talk about a waste of time.
>>> 
>>> trasz@ and I have the same laptop and I just confirmed with him that the
>>> patch does nothing useful (as both of you suggested).  The *ACTUAL*
>>> problem seems to be related to disabling devices in the Thinkpad BIOS.
>> 
>> 
>> Yup.  The culprit seems to be the "Security -> IO Port Access -> Modem"
>> BIOS control: setting it to disabled breaks resume; the AcpiEnterSleepState()
>> never returns.
>> 
>> With that option set to enabled, the suspend/resume works seems to work
>> flawlessly on T61 with Intel graphics, with VT kernel and i915kms.ko,
>> on 11-CURRENT/amd64 from a few days ago, without any patches or special
>> sysctl/tunables. 
> 
> Well, document it on the wiki at least.

Thanks for suggestion; done.



More information about the freebsd-acpi mailing list