diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/char/hvc_console.c | 8 | ||||
-rw-r--r-- | drivers/char/hvc_console.h | 10 |
2 files changed, 11 insertions, 7 deletions
diff --git a/drivers/char/hvc_console.c b/drivers/char/hvc_console.c index 44160d5ebca0..2f9759d625cc 100644 --- a/drivers/char/hvc_console.c +++ b/drivers/char/hvc_console.c | |||
@@ -675,12 +675,6 @@ static int hvc_poll(struct hvc_struct *hp) | |||
675 | return poll_mask; | 675 | return poll_mask; |
676 | } | 676 | } |
677 | 677 | ||
678 | #if defined(CONFIG_XMON) && defined(CONFIG_SMP) | ||
679 | extern cpumask_t cpus_in_xmon; | ||
680 | #else | ||
681 | static const cpumask_t cpus_in_xmon = CPU_MASK_NONE; | ||
682 | #endif | ||
683 | |||
684 | /* | 678 | /* |
685 | * This kthread is either polling or interrupt driven. This is determined by | 679 | * This kthread is either polling or interrupt driven. This is determined by |
686 | * calling hvc_poll() who determines whether a console adapter support | 680 | * calling hvc_poll() who determines whether a console adapter support |
@@ -698,7 +692,7 @@ static int khvcd(void *unused) | |||
698 | hvc_kicked = 0; | 692 | hvc_kicked = 0; |
699 | try_to_freeze(); | 693 | try_to_freeze(); |
700 | wmb(); | 694 | wmb(); |
701 | if (cpus_empty(cpus_in_xmon)) { | 695 | if (!cpus_are_in_xmon()) { |
702 | spin_lock(&hvc_structs_lock); | 696 | spin_lock(&hvc_structs_lock); |
703 | list_for_each_entry(hp, &hvc_structs, next) { | 697 | list_for_each_entry(hp, &hvc_structs, next) { |
704 | poll_mask |= hvc_poll(hp); | 698 | poll_mask |= hvc_poll(hp); |
diff --git a/drivers/char/hvc_console.h b/drivers/char/hvc_console.h index 8c59818050e6..42ffb17e15df 100644 --- a/drivers/char/hvc_console.h +++ b/drivers/char/hvc_console.h | |||
@@ -60,4 +60,14 @@ extern struct hvc_struct * __devinit hvc_alloc(uint32_t vtermno, int irq, | |||
60 | /* remove a vterm from hvc tty operation (modele_exit or hotplug remove) */ | 60 | /* remove a vterm from hvc tty operation (modele_exit or hotplug remove) */ |
61 | extern int __devexit hvc_remove(struct hvc_struct *hp); | 61 | extern int __devexit hvc_remove(struct hvc_struct *hp); |
62 | 62 | ||
63 | |||
64 | #if defined(CONFIG_XMON) && defined(CONFIG_SMP) | ||
65 | #include <asm/xmon.h> | ||
66 | #else | ||
67 | static inline int cpus_are_in_xmon(void) | ||
68 | { | ||
69 | return 0; | ||
70 | } | ||
71 | #endif | ||
72 | |||
63 | #endif // HVC_CONSOLE_H | 73 | #endif // HVC_CONSOLE_H |