Date: Thu, 16 Jan 1997 19:54:40 +1100 (EST)
From: Martin Mitchell <mem@modem-b-63.mp.usyd.edu.AU>
To: linux-m68k@phil.uni-sb.de
Subject: L68K: Misc patches for 2.1.21
Sender: owner-linux-m68k@phil.uni-sb.de
Reply-To: gevans@mail.usyd.edu.au

Hi there,

Here's a collection of miscellaneous diffs to compile 2.1.21.
- atari_mch_cookie, request_irq, free_irq multiply defined.
- ex_table_stop didn't exist
- update lp_m68k driver for new symbol table system

	Martin.

--- linux-2.1.21/arch/m68k/atari/atari_ksyms.c.orig	Thu Jan 16 17:37:03 1997
+++ linux-2.1.21/arch/m68k/atari/atari_ksyms.c	Thu Jan 16 17:38:39 1997
@@ -24,7 +24,6 @@
 EXPORT_SYMBOL(atari_mouse_buttons);
 EXPORT_SYMBOL(atari_mouse_interrupt_hook);
 EXPORT_SYMBOL(atari_MIDI_interrupt_hook);
-EXPORT_SYMBOL(atari_mch_cookie);
 EXPORT_SYMBOL(ikbd_write);
 EXPORT_SYMBOL(ikbd_mouse_y0_top);
 EXPORT_SYMBOL(ikbd_mouse_thresh);
--- linux-2.1.21/arch/m68k/atari/config.c.orig	Thu Jan 16 17:55:39 1997
+++ linux-2.1.21/arch/m68k/atari/config.c	Thu Jan 16 17:55:54 1997
@@ -57,7 +57,7 @@
 extern void atari_init_IRQ (void);
 extern int atari_request_irq (unsigned int irq, void (*handler)(int, void *, struct pt_regs *),
                               unsigned long flags, const char *devname, void *dev_id);
-extern int atari_free_irq (unsigned int irq, void *dev_id);
+extern void atari_free_irq (unsigned int irq, void *dev_id);
 extern void atari_enable_irq (unsigned int);
 extern void atari_disable_irq (unsigned int);
 extern int atari_get_irq_list (char *buf);
--- linux-2.1.21/arch/m68k/kernel/m68k_ksyms.c.orig	Thu Jan 16 18:04:01 1997
+++ linux-2.1.21/arch/m68k/kernel/m68k_ksyms.c	Thu Jan 16 18:04:14 1997
@@ -32,8 +32,6 @@
 EXPORT_SYMBOL(mm_ptov);
 EXPORT_SYMBOL(mm_end_of_chunk);
 EXPORT_SYMBOL(m68k_debug_device);
-EXPORT_SYMBOL(request_irq);
-EXPORT_SYMBOL(free_irq);
 EXPORT_SYMBOL(dump_fpu);
 EXPORT_SYMBOL(dump_thread);
 EXPORT_SYMBOL(strnlen);
--- linux-2.1.21/arch/m68k/mm/extable.c.orig	Thu Jan 16 16:52:14 1997
+++ linux-2.1.21/arch/m68k/mm/extable.c	Thu Jan 16 16:52:39 1997
@@ -46,7 +46,7 @@
 		if (mp->ex_table_start == NULL)
 			continue;
 		ret = search_one_table(mp->ex_table_start,
-				       mp->ex_table_stop-1, addr);
+				       mp->ex_table_end-1, addr);
 		if (ret) return ret;
 	}
 #endif
--- linux-2.1.21/drivers/char/lp_m68k.c.orig	Thu Jan 16 16:55:01 1997
+++ linux-2.1.21/drivers/char/lp_m68k.c	Thu Jan 16 17:06:20 1997
@@ -34,8 +34,8 @@
  *
  */
 
-#include <linux/module.h>
 #include <linux/config.h>
+#include <linux/module.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/major.h>
@@ -458,16 +458,12 @@
 };
 
 #ifdef CONFIG_MODULES
-static struct symbol_table parallel_syms = {
-#include <linux/symtab_begin.h>
-	X(lp_table),
-	X(lp_irq),
-	X(lp_interrupt),
-	X(lp_init),
-	X(register_parallel),
-	X(unregister_parallel),
-#include <linux/symtab_end.h>
-};
+	EXPORT_SYMBOL(lp_table);
+	EXPORT_SYMBOL(lp_irq);
+	EXPORT_SYMBOL(lp_interrupt);
+	EXPORT_SYMBOL(lp_init);
+	EXPORT_SYMBOL(register_parallel);
+	EXPORT_SYMBOL(unregister_parallel);
 #endif
 
 int lp_init(void)
@@ -481,14 +477,6 @@
 		printk(KERN_ERR "unable to get major %d for line printer\n", LP_MAJOR);
 		return -ENXIO;
 	}
-
-#ifdef CONFIG_MODULES
-	if (register_symtab(&parallel_syms)) {
-		unregister_chrdev(LP_MAJOR, "lp");
-		printk(KERN_CRIT "unable to register parallel symtab\n");
-		return -ENXIO;
-	}
-#endif
 
 #if WHICH_DRIVER == FORCE_POLLING
 	lp_irq = 0;

