[PATCH 3/3] powerpc: Updated PC speaker init fix
Michael Neuling
mikey at neuling.org
Tue Nov 1 18:14:42 EST 2005
Updated for powerpc merge tree. Adds architecture specific init to pcspkr.
Signed-off-by: Michael Neuling <mikey at neuling.org>
Acked-by: Paul Mackerras <paulus at samba.org>
drivers/input/misc/pcspkr.c | 5 +++++
include/asm-powerpc/8253pit.h | 13 +++++++++++++
2 files changed, 18 insertions(+)
Index: linux-2.6/drivers/input/misc/pcspkr.c
===================================================================
--- linux-2.6.orig/drivers/input/misc/pcspkr.c 2005-10-31 15:16:39.000000000 +1100
+++ linux-2.6/drivers/input/misc/pcspkr.c 2005-10-31 15:21:13.000000000 +1100
@@ -66,6 +66,11 @@
static int __init pcspkr_init(void)
{
+#ifdef HAS_PCSPKR_ARCH_INIT
+ int rc = pcspkr_arch_init();
+ if (rc)
+ return rc;
+#endif
pcspkr_dev = input_allocate_device();
if (!pcspkr_dev)
return -ENOMEM;
Index: linux-2.6/include/asm-powerpc/8253pit.h
===================================================================
--- linux-2.6.orig/include/asm-powerpc/8253pit.h 2005-10-31 15:02:18.000000000 +1100
+++ linux-2.6/include/asm-powerpc/8253pit.h 2005-10-31 15:20:30.000000000 +1100
@@ -5,6 +5,19 @@
* 8253/8254 Programmable Interval Timer
*/
+#include <asm/prom.h>
+
#define PIT_TICK_RATE 1193182UL
+#define HAS_PCSPKR_ARCH_INIT
+
+static inline int pcspkr_arch_init(void)
+{
+ struct device_node *np;
+
+ np = of_find_compatible_node(NULL, NULL, "pnpPNP,100");
+ of_node_put(np);
+ return np ? 0 : -ENODEV;
+}
+
#endif /* _ASM_POWERPC_8253PIT_H */
More information about the Linuxppc64-dev
mailing list