http://bugzilla.kernel.org/show_bug.cgi?id=13689

           Summary: ACPI: EC: input buffer is not empty, aborting
                    transaction
           Product: ACPI
           Version: 2.5
    Kernel Version: 2.6.27.23-0.1-pae
          Platform: All
        OS/Version: Linux
              Tree: Mainline
            Status: NEW
          Severity: normal
          Priority: P1
         Component: EC
        AssignedTo: acpi...@kernel-bugs.osdl.org
        ReportedBy: haag_nor...@gmx.de
        Regression: No


Hi

on my new Dell Studio 1555 I got the following issue:

On a fresh boot I'm able to change brightness via brightnesskeys and ac-adapter
is detected properly, but as soon as the following error appears:

ACPI: EC: input buffer is not empty, aborting transaction

brightness control is no longer possible. Even the detection whether an
ac-adapter or not is attached fails.

I found that commenting the "goto end;" in ec.c (see below) workarounds this
problem. It may be something similar like the MSI Force-Polling. Maybe you
could find some better fix for that issue (I'm not that kernel-specialist at
all :) )

Best Regards
Norman Haag

static int acpi_ec_transaction(struct acpi_ec *ec, struct transaction *t,
                               int force_poll)                           
{                                                                        
        int status;                                                      
        u32 glk;                                                         
        if (!ec || (!t) || (t->wlen && !t->wdata) || (t->rlen && !t->rdata))
                return -EINVAL;                                             
        if (t->rdata)                                                       
                memset(t->rdata, 0, t->rlen);                               
        mutex_lock(&ec->lock);                                              
        if (ec->global_lock) {                                              
                status = acpi_acquire_global_lock(ACPI_EC_UDELAY_GLK, &glk);
                if (ACPI_FAILURE(status)) {                                 
                        status = -ENODEV;                                   
                        goto unlock;                                        
                }                                                           
        }                                                                   
        if (ec_wait_ibf0(ec)) {                                             
                pr_err(PREFIX "input buffer is not empty, "                 
                                "aborting transaction--\n");                
                status = -ETIME;                                            
                //goto end;                                                 

        }
        status = acpi_ec_transaction_unlocked(ec, t, force_poll);
end:                                                             
        if (ec->global_lock)                                     
                acpi_release_global_lock(glk);                   
unlock:                                                          
        mutex_unlock(&ec->lock);                                 
        return status;                                           
}

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.

------------------------------------------------------------------------------
_______________________________________________
acpi-bugzilla mailing list
acpi-bugzilla@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to