[Patch 0/4] ACPI : several patches for EC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi, All
 
    Two people report the following warning messages on the 2.6.28-rc2 kernel.    
    >ACPI: EC: missing confirmations, switch off interrupt mode.
    >ACPI Exception (evregion-0419): AE_TIME, Returned by Handler for
[EmbeddedControl] [20080926]
    (One happens on Asus EEEPC901. Another happens on HP laptop).
     The info on eeepc901 can be found in 
    http://marc.info/?l=linux-acpi&m=122514911228758&w=2
    The detailed info about HP laptop can be found in 
     http://marc.info/?t=122491944100001&r=1&w=2
    
    
    The following is the patch set that is to fix the above issue.
    Patch 01: EC transaction is explicitly divided into different phases. 
And EC access is realized in process context. 
    At the same time EC driver will be started in EC GEP mode. And when 
there is no EC GPE confirmation for some EC transaction on some broken laptops,
the EC driver will be switched to polling mode. But EC GPE is still enabled.
    
    Patch 02: Add the 2 us delay before starting check EC status while in 
polling mode
      According to the ACPI spec when the host writes data to the command or data
register of the embedded controller, the input buffer flag (IBF) in the
status register is set within 1 microsecond.  On most laptosp it
is unnecessary to add the delay as EC device is connected with the slow
peripherial bus.
      But it is safe to add the delay of 2 microseconds before starting loop
check the EC status while EC is in polling mode.

    Patch 03: Add some delay in EC GPE handler to avoid EC interrupt storm on some
broken BIOS.
     The delay won't be added for most laptops.Only when more than five
interrupts happen in the same jiffies and EC status are the same, OS will add
some delay in the EC GPE handler. If the same issue still happens after adding
delay,the delay time will be increased.But the max delay time is ten
microseconds.
    Patch 04: EC cleanup: delete the unused code after the above three patches are applied

    After applying the patch, the problem disappears on ASUS EEEPC901 and HP laptop.

Welcome the comments.


Best regards.
  Yakui


--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux