diff options
Diffstat (limited to 'drivers/i2c')
-rw-r--r-- | drivers/i2c/i2c-core.c | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c index 29d2a1b4b464..7161f913de14 100644 --- a/drivers/i2c/i2c-core.c +++ b/drivers/i2c/i2c-core.c | |||
@@ -39,7 +39,7 @@ | |||
39 | #include "i2c-core.h" | 39 | #include "i2c-core.h" |
40 | 40 | ||
41 | 41 | ||
42 | static DEFINE_MUTEX(core_lists); | 42 | static DEFINE_MUTEX(core_lock); |
43 | static DEFINE_IDR(i2c_adapter_idr); | 43 | static DEFINE_IDR(i2c_adapter_idr); |
44 | 44 | ||
45 | #define is_newstyle_driver(d) ((d)->probe || (d)->remove) | 45 | #define is_newstyle_driver(d) ((d)->probe || (d)->remove) |
@@ -339,7 +339,7 @@ static int i2c_register_adapter(struct i2c_adapter *adap) | |||
339 | mutex_init(&adap->clist_lock); | 339 | mutex_init(&adap->clist_lock); |
340 | INIT_LIST_HEAD(&adap->clients); | 340 | INIT_LIST_HEAD(&adap->clients); |
341 | 341 | ||
342 | mutex_lock(&core_lists); | 342 | mutex_lock(&core_lock); |
343 | 343 | ||
344 | /* Add the adapter to the driver core. | 344 | /* Add the adapter to the driver core. |
345 | * If the parent pointer is not set up, | 345 | * If the parent pointer is not set up, |
@@ -368,7 +368,7 @@ static int i2c_register_adapter(struct i2c_adapter *adap) | |||
368 | i2c_do_add_adapter); | 368 | i2c_do_add_adapter); |
369 | 369 | ||
370 | out_unlock: | 370 | out_unlock: |
371 | mutex_unlock(&core_lists); | 371 | mutex_unlock(&core_lock); |
372 | return res; | 372 | return res; |
373 | 373 | ||
374 | out_list: | 374 | out_list: |
@@ -397,11 +397,11 @@ retry: | |||
397 | if (idr_pre_get(&i2c_adapter_idr, GFP_KERNEL) == 0) | 397 | if (idr_pre_get(&i2c_adapter_idr, GFP_KERNEL) == 0) |
398 | return -ENOMEM; | 398 | return -ENOMEM; |
399 | 399 | ||
400 | mutex_lock(&core_lists); | 400 | mutex_lock(&core_lock); |
401 | /* "above" here means "above or equal to", sigh */ | 401 | /* "above" here means "above or equal to", sigh */ |
402 | res = idr_get_new_above(&i2c_adapter_idr, adapter, | 402 | res = idr_get_new_above(&i2c_adapter_idr, adapter, |
403 | __i2c_first_dynamic_bus_num, &id); | 403 | __i2c_first_dynamic_bus_num, &id); |
404 | mutex_unlock(&core_lists); | 404 | mutex_unlock(&core_lock); |
405 | 405 | ||
406 | if (res < 0) { | 406 | if (res < 0) { |
407 | if (res == -EAGAIN) | 407 | if (res == -EAGAIN) |
@@ -446,7 +446,7 @@ retry: | |||
446 | if (idr_pre_get(&i2c_adapter_idr, GFP_KERNEL) == 0) | 446 | if (idr_pre_get(&i2c_adapter_idr, GFP_KERNEL) == 0) |
447 | return -ENOMEM; | 447 | return -ENOMEM; |
448 | 448 | ||
449 | mutex_lock(&core_lists); | 449 | mutex_lock(&core_lock); |
450 | /* "above" here means "above or equal to", sigh; | 450 | /* "above" here means "above or equal to", sigh; |
451 | * we need the "equal to" result to force the result | 451 | * we need the "equal to" result to force the result |
452 | */ | 452 | */ |
@@ -455,7 +455,7 @@ retry: | |||
455 | status = -EBUSY; | 455 | status = -EBUSY; |
456 | idr_remove(&i2c_adapter_idr, id); | 456 | idr_remove(&i2c_adapter_idr, id); |
457 | } | 457 | } |
458 | mutex_unlock(&core_lists); | 458 | mutex_unlock(&core_lock); |
459 | if (status == -EAGAIN) | 459 | if (status == -EAGAIN) |
460 | goto retry; | 460 | goto retry; |
461 | 461 | ||
@@ -494,7 +494,7 @@ int i2c_del_adapter(struct i2c_adapter *adap) | |||
494 | struct i2c_client *client; | 494 | struct i2c_client *client; |
495 | int res = 0; | 495 | int res = 0; |
496 | 496 | ||
497 | mutex_lock(&core_lists); | 497 | mutex_lock(&core_lock); |
498 | 498 | ||
499 | /* First make sure that this adapter was ever added */ | 499 | /* First make sure that this adapter was ever added */ |
500 | if (idr_find(&i2c_adapter_idr, adap->nr) != adap) { | 500 | if (idr_find(&i2c_adapter_idr, adap->nr) != adap) { |
@@ -546,7 +546,7 @@ int i2c_del_adapter(struct i2c_adapter *adap) | |||
546 | dev_dbg(&adap->dev, "adapter [%s] unregistered\n", adap->name); | 546 | dev_dbg(&adap->dev, "adapter [%s] unregistered\n", adap->name); |
547 | 547 | ||
548 | out_unlock: | 548 | out_unlock: |
549 | mutex_unlock(&core_lists); | 549 | mutex_unlock(&core_lock); |
550 | return res; | 550 | return res; |
551 | } | 551 | } |
552 | EXPORT_SYMBOL(i2c_del_adapter); | 552 | EXPORT_SYMBOL(i2c_del_adapter); |
@@ -589,7 +589,7 @@ int i2c_register_driver(struct module *owner, struct i2c_driver *driver) | |||
589 | if (res) | 589 | if (res) |
590 | return res; | 590 | return res; |
591 | 591 | ||
592 | mutex_lock(&core_lists); | 592 | mutex_lock(&core_lock); |
593 | 593 | ||
594 | pr_debug("i2c-core: driver [%s] registered\n", driver->driver.name); | 594 | pr_debug("i2c-core: driver [%s] registered\n", driver->driver.name); |
595 | 595 | ||
@@ -605,7 +605,7 @@ int i2c_register_driver(struct module *owner, struct i2c_driver *driver) | |||
605 | up(&i2c_adapter_class.sem); | 605 | up(&i2c_adapter_class.sem); |
606 | } | 606 | } |
607 | 607 | ||
608 | mutex_unlock(&core_lists); | 608 | mutex_unlock(&core_lock); |
609 | return 0; | 609 | return 0; |
610 | } | 610 | } |
611 | EXPORT_SYMBOL(i2c_register_driver); | 611 | EXPORT_SYMBOL(i2c_register_driver); |
@@ -621,7 +621,7 @@ void i2c_del_driver(struct i2c_driver *driver) | |||
621 | struct i2c_client *client; | 621 | struct i2c_client *client; |
622 | struct i2c_adapter *adap; | 622 | struct i2c_adapter *adap; |
623 | 623 | ||
624 | mutex_lock(&core_lists); | 624 | mutex_lock(&core_lock); |
625 | 625 | ||
626 | /* new-style driver? */ | 626 | /* new-style driver? */ |
627 | if (is_newstyle_driver(driver)) | 627 | if (is_newstyle_driver(driver)) |
@@ -662,7 +662,7 @@ void i2c_del_driver(struct i2c_driver *driver) | |||
662 | driver_unregister(&driver->driver); | 662 | driver_unregister(&driver->driver); |
663 | pr_debug("i2c-core: driver [%s] unregistered\n", driver->driver.name); | 663 | pr_debug("i2c-core: driver [%s] unregistered\n", driver->driver.name); |
664 | 664 | ||
665 | mutex_unlock(&core_lists); | 665 | mutex_unlock(&core_lock); |
666 | } | 666 | } |
667 | EXPORT_SYMBOL(i2c_del_driver); | 667 | EXPORT_SYMBOL(i2c_del_driver); |
668 | 668 | ||
@@ -1121,12 +1121,12 @@ struct i2c_adapter* i2c_get_adapter(int id) | |||
1121 | { | 1121 | { |
1122 | struct i2c_adapter *adapter; | 1122 | struct i2c_adapter *adapter; |
1123 | 1123 | ||
1124 | mutex_lock(&core_lists); | 1124 | mutex_lock(&core_lock); |
1125 | adapter = (struct i2c_adapter *)idr_find(&i2c_adapter_idr, id); | 1125 | adapter = (struct i2c_adapter *)idr_find(&i2c_adapter_idr, id); |
1126 | if (adapter && !try_module_get(adapter->owner)) | 1126 | if (adapter && !try_module_get(adapter->owner)) |
1127 | adapter = NULL; | 1127 | adapter = NULL; |
1128 | 1128 | ||
1129 | mutex_unlock(&core_lists); | 1129 | mutex_unlock(&core_lock); |
1130 | return adapter; | 1130 | return adapter; |
1131 | } | 1131 | } |
1132 | EXPORT_SYMBOL(i2c_get_adapter); | 1132 | EXPORT_SYMBOL(i2c_get_adapter); |