|
@@ -158,10 +158,10 @@ static int ec_transaction_done(struct acpi_ec *ec)
|
|
|
{
|
|
|
unsigned long flags;
|
|
|
int ret = 0;
|
|
|
- spin_lock_irqsave(&ec->curr_lock, flags);
|
|
|
+ spin_lock_irqsave(&ec->lock, flags);
|
|
|
if (!ec->curr || ec->curr->done)
|
|
|
ret = 1;
|
|
|
- spin_unlock_irqrestore(&ec->curr_lock, flags);
|
|
|
+ spin_unlock_irqrestore(&ec->lock, flags);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
@@ -175,7 +175,7 @@ static void start_transaction(struct acpi_ec *ec)
|
|
|
static void advance_transaction(struct acpi_ec *ec, u8 status)
|
|
|
{
|
|
|
unsigned long flags;
|
|
|
- spin_lock_irqsave(&ec->curr_lock, flags);
|
|
|
+ spin_lock_irqsave(&ec->lock, flags);
|
|
|
if (!ec->curr)
|
|
|
goto unlock;
|
|
|
if (ec->curr->wlen > ec->curr->wi) {
|
|
@@ -200,7 +200,7 @@ err:
|
|
|
if (in_interrupt())
|
|
|
++ec->curr->irq_count;
|
|
|
unlock:
|
|
|
- spin_unlock_irqrestore(&ec->curr_lock, flags);
|
|
|
+ spin_unlock_irqrestore(&ec->lock, flags);
|
|
|
}
|
|
|
|
|
|
static int acpi_ec_sync_query(struct acpi_ec *ec);
|
|
@@ -238,9 +238,9 @@ static int ec_poll(struct acpi_ec *ec)
|
|
|
if (acpi_ec_read_status(ec) & ACPI_EC_FLAG_IBF)
|
|
|
break;
|
|
|
pr_debug(PREFIX "controller reset, restart transaction\n");
|
|
|
- spin_lock_irqsave(&ec->curr_lock, flags);
|
|
|
+ spin_lock_irqsave(&ec->lock, flags);
|
|
|
start_transaction(ec);
|
|
|
- spin_unlock_irqrestore(&ec->curr_lock, flags);
|
|
|
+ spin_unlock_irqrestore(&ec->lock, flags);
|
|
|
}
|
|
|
return -ETIME;
|
|
|
}
|
|
@@ -253,17 +253,17 @@ static int acpi_ec_transaction_unlocked(struct acpi_ec *ec,
|
|
|
if (EC_FLAGS_MSI)
|
|
|
udelay(ACPI_EC_MSI_UDELAY);
|
|
|
/* start transaction */
|
|
|
- spin_lock_irqsave(&ec->curr_lock, tmp);
|
|
|
+ spin_lock_irqsave(&ec->lock, tmp);
|
|
|
/* following two actions should be kept atomic */
|
|
|
ec->curr = t;
|
|
|
start_transaction(ec);
|
|
|
if (ec->curr->command == ACPI_EC_COMMAND_QUERY)
|
|
|
clear_bit(EC_FLAGS_QUERY_PENDING, &ec->flags);
|
|
|
- spin_unlock_irqrestore(&ec->curr_lock, tmp);
|
|
|
+ spin_unlock_irqrestore(&ec->lock, tmp);
|
|
|
ret = ec_poll(ec);
|
|
|
- spin_lock_irqsave(&ec->curr_lock, tmp);
|
|
|
+ spin_lock_irqsave(&ec->lock, tmp);
|
|
|
ec->curr = NULL;
|
|
|
- spin_unlock_irqrestore(&ec->curr_lock, tmp);
|
|
|
+ spin_unlock_irqrestore(&ec->lock, tmp);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
@@ -292,7 +292,7 @@ static int acpi_ec_transaction(struct acpi_ec *ec, struct transaction *t)
|
|
|
return -EINVAL;
|
|
|
if (t->rdata)
|
|
|
memset(t->rdata, 0, t->rlen);
|
|
|
- mutex_lock(&ec->lock);
|
|
|
+ mutex_lock(&ec->mutex);
|
|
|
if (test_bit(EC_FLAGS_BLOCKED, &ec->flags)) {
|
|
|
status = -EINVAL;
|
|
|
goto unlock;
|
|
@@ -335,7 +335,7 @@ end:
|
|
|
if (ec->global_lock)
|
|
|
acpi_release_global_lock(glk);
|
|
|
unlock:
|
|
|
- mutex_unlock(&ec->lock);
|
|
|
+ mutex_unlock(&ec->mutex);
|
|
|
return status;
|
|
|
}
|
|
|
|
|
@@ -468,10 +468,10 @@ void acpi_ec_block_transactions(void)
|
|
|
if (!ec)
|
|
|
return;
|
|
|
|
|
|
- mutex_lock(&ec->lock);
|
|
|
+ mutex_lock(&ec->mutex);
|
|
|
/* Prevent transactions from being carried out */
|
|
|
set_bit(EC_FLAGS_BLOCKED, &ec->flags);
|
|
|
- mutex_unlock(&ec->lock);
|
|
|
+ mutex_unlock(&ec->mutex);
|
|
|
}
|
|
|
|
|
|
void acpi_ec_unblock_transactions(void)
|
|
@@ -481,10 +481,10 @@ void acpi_ec_unblock_transactions(void)
|
|
|
if (!ec)
|
|
|
return;
|
|
|
|
|
|
- mutex_lock(&ec->lock);
|
|
|
+ mutex_lock(&ec->mutex);
|
|
|
/* Allow transactions to be carried out again */
|
|
|
clear_bit(EC_FLAGS_BLOCKED, &ec->flags);
|
|
|
- mutex_unlock(&ec->lock);
|
|
|
+ mutex_unlock(&ec->mutex);
|
|
|
}
|
|
|
|
|
|
void acpi_ec_unblock_transactions_early(void)
|
|
@@ -536,9 +536,9 @@ int acpi_ec_add_query_handler(struct acpi_ec *ec, u8 query_bit,
|
|
|
handler->handle = handle;
|
|
|
handler->func = func;
|
|
|
handler->data = data;
|
|
|
- mutex_lock(&ec->lock);
|
|
|
+ mutex_lock(&ec->mutex);
|
|
|
list_add(&handler->node, &ec->list);
|
|
|
- mutex_unlock(&ec->lock);
|
|
|
+ mutex_unlock(&ec->mutex);
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
@@ -547,14 +547,14 @@ EXPORT_SYMBOL_GPL(acpi_ec_add_query_handler);
|
|
|
void acpi_ec_remove_query_handler(struct acpi_ec *ec, u8 query_bit)
|
|
|
{
|
|
|
struct acpi_ec_query_handler *handler, *tmp;
|
|
|
- mutex_lock(&ec->lock);
|
|
|
+ mutex_lock(&ec->mutex);
|
|
|
list_for_each_entry_safe(handler, tmp, &ec->list, node) {
|
|
|
if (query_bit == handler->query_bit) {
|
|
|
list_del(&handler->node);
|
|
|
kfree(handler);
|
|
|
}
|
|
|
}
|
|
|
- mutex_unlock(&ec->lock);
|
|
|
+ mutex_unlock(&ec->mutex);
|
|
|
}
|
|
|
|
|
|
EXPORT_SYMBOL_GPL(acpi_ec_remove_query_handler);
|
|
@@ -601,9 +601,9 @@ static void acpi_ec_gpe_query(void *ec_cxt)
|
|
|
struct acpi_ec *ec = ec_cxt;
|
|
|
if (!ec)
|
|
|
return;
|
|
|
- mutex_lock(&ec->lock);
|
|
|
+ mutex_lock(&ec->mutex);
|
|
|
acpi_ec_sync_query(ec);
|
|
|
- mutex_unlock(&ec->lock);
|
|
|
+ mutex_unlock(&ec->mutex);
|
|
|
}
|
|
|
|
|
|
static int ec_check_sci(struct acpi_ec *ec, u8 state)
|
|
@@ -691,10 +691,10 @@ static struct acpi_ec *make_acpi_ec(void)
|
|
|
if (!ec)
|
|
|
return NULL;
|
|
|
ec->flags = 1 << EC_FLAGS_QUERY_PENDING;
|
|
|
- mutex_init(&ec->lock);
|
|
|
+ mutex_init(&ec->mutex);
|
|
|
init_waitqueue_head(&ec->wait);
|
|
|
INIT_LIST_HEAD(&ec->list);
|
|
|
- spin_lock_init(&ec->curr_lock);
|
|
|
+ spin_lock_init(&ec->lock);
|
|
|
return ec;
|
|
|
}
|
|
|
|
|
@@ -853,12 +853,12 @@ static int acpi_ec_remove(struct acpi_device *device, int type)
|
|
|
|
|
|
ec = acpi_driver_data(device);
|
|
|
ec_remove_handlers(ec);
|
|
|
- mutex_lock(&ec->lock);
|
|
|
+ mutex_lock(&ec->mutex);
|
|
|
list_for_each_entry_safe(handler, tmp, &ec->list, node) {
|
|
|
list_del(&handler->node);
|
|
|
kfree(handler);
|
|
|
}
|
|
|
- mutex_unlock(&ec->lock);
|
|
|
+ mutex_unlock(&ec->mutex);
|
|
|
release_region(ec->data_addr, 1);
|
|
|
release_region(ec->command_addr, 1);
|
|
|
device->driver_data = NULL;
|