diff options
Diffstat (limited to 'drivers/macintosh/adb.c')
| -rw-r--r-- | drivers/macintosh/adb.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/macintosh/adb.c b/drivers/macintosh/adb.c index d2ead1776c16..34fcabac5fdb 100644 --- a/drivers/macintosh/adb.c +++ b/drivers/macintosh/adb.c | |||
| @@ -80,7 +80,7 @@ static struct adb_driver *adb_driver_list[] = { | |||
| 80 | static struct class *adb_dev_class; | 80 | static struct class *adb_dev_class; |
| 81 | 81 | ||
| 82 | struct adb_driver *adb_controller; | 82 | struct adb_driver *adb_controller; |
| 83 | struct notifier_block *adb_client_list = NULL; | 83 | BLOCKING_NOTIFIER_HEAD(adb_client_list); |
| 84 | static int adb_got_sleep; | 84 | static int adb_got_sleep; |
| 85 | static int adb_inited; | 85 | static int adb_inited; |
| 86 | static pid_t adb_probe_task_pid; | 86 | static pid_t adb_probe_task_pid; |
| @@ -354,7 +354,8 @@ adb_notify_sleep(struct pmu_sleep_notifier *self, int when) | |||
| 354 | /* Stop autopoll */ | 354 | /* Stop autopoll */ |
| 355 | if (adb_controller->autopoll) | 355 | if (adb_controller->autopoll) |
| 356 | adb_controller->autopoll(0); | 356 | adb_controller->autopoll(0); |
| 357 | ret = notifier_call_chain(&adb_client_list, ADB_MSG_POWERDOWN, NULL); | 357 | ret = blocking_notifier_call_chain(&adb_client_list, |
| 358 | ADB_MSG_POWERDOWN, NULL); | ||
| 358 | if (ret & NOTIFY_STOP_MASK) { | 359 | if (ret & NOTIFY_STOP_MASK) { |
| 359 | up(&adb_probe_mutex); | 360 | up(&adb_probe_mutex); |
| 360 | return PBOOK_SLEEP_REFUSE; | 361 | return PBOOK_SLEEP_REFUSE; |
| @@ -391,7 +392,8 @@ do_adb_reset_bus(void) | |||
| 391 | if (adb_controller->autopoll) | 392 | if (adb_controller->autopoll) |
| 392 | adb_controller->autopoll(0); | 393 | adb_controller->autopoll(0); |
| 393 | 394 | ||
| 394 | nret = notifier_call_chain(&adb_client_list, ADB_MSG_PRE_RESET, NULL); | 395 | nret = blocking_notifier_call_chain(&adb_client_list, |
| 396 | ADB_MSG_PRE_RESET, NULL); | ||
| 395 | if (nret & NOTIFY_STOP_MASK) { | 397 | if (nret & NOTIFY_STOP_MASK) { |
| 396 | if (adb_controller->autopoll) | 398 | if (adb_controller->autopoll) |
| 397 | adb_controller->autopoll(autopoll_devs); | 399 | adb_controller->autopoll(autopoll_devs); |
| @@ -426,7 +428,8 @@ do_adb_reset_bus(void) | |||
| 426 | } | 428 | } |
| 427 | up(&adb_handler_sem); | 429 | up(&adb_handler_sem); |
| 428 | 430 | ||
| 429 | nret = notifier_call_chain(&adb_client_list, ADB_MSG_POST_RESET, NULL); | 431 | nret = blocking_notifier_call_chain(&adb_client_list, |
| 432 | ADB_MSG_POST_RESET, NULL); | ||
| 430 | if (nret & NOTIFY_STOP_MASK) | 433 | if (nret & NOTIFY_STOP_MASK) |
| 431 | return -EBUSY; | 434 | return -EBUSY; |
| 432 | 435 | ||
