[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: kernel 2.6.24 & speakup



maximilian attems, le Thu 27 Mar 2008 17:13:58 +0100, a écrit :
> On Thu, Mar 27, 2008 at 03:39:42PM +0100, Samuel Thibault wrote:
> > maximilian attems, le Wed 26 Mar 2008 14:58:57 +0100, a écrit :
> > > anyway the -mm patch
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc5/2.6.25-rc5-mm1/broken-out/input-put-ledstate-in-the-keyboard-notifier.patch
> > > seems to apply fine for 2.6.25, but has none of the wanted exports.
> > 
> > BTW, the patch that adds the export is
> > basic-braille-screen-reader-support.patch
> 
> i have head ache today, so i'll keep it short.
> it would be great if this messy thread comes to some result.
> 
> the braille module itself unless merged would be in
> linux-modules-extra. does it still need a specific patch in linux-2.6
> itself for 2.6.25 and if yes please point to the mm one instead
> of letting people fish in the dark, thanks :)

Erf, it looks like I've brought even more confusion with that braille
patch.  I'll try to be clearly sum up:

- Vanilla 2.6.24 has keyboard/VT notifier support
- both braille module and speakup need additional 4 exports to work
- to get braille module in -mm, I had to stuff the 4 exports in its
  patch

Now, I was not talking about importing the whole braille module patch
into the debian kernel, but just the 4 exports, so that speakup can be
compiled as modules.  So

- either (as I originally said in the thread) apply Speakup's
speakup/patches/kernel-integration-2.6.24-source.patch ,
- or use the equivalent exerpt of the -mm braille patch, attached to
this mail.

and then speakup can be compiled as separate modules in
linux-modules-extra.

Samuel
diff -puN drivers/char/consolemap.c~basic-braille-screen-reader-support drivers/char/consolemap.c
--- a/drivers/char/consolemap.c~basic-braille-screen-reader-support
+++ a/drivers/char/consolemap.c
@@ -277,6 +277,7 @@ u16 inverse_translate(struct vc_data *co
 			return p->inverse_translations[m][glyph];
 	}
 }
+EXPORT_SYMBOL_GPL(inverse_translate);
 
 static void update_user_maps(void)
 {
diff -puN drivers/char/keyboard.c~basic-braille-screen-reader-support drivers/char/keyboard.c
--- a/drivers/char/keyboard.c~basic-braille-screen-reader-support
+++ a/drivers/char/keyboard.c
@@ -109,6 +109,7 @@ const int max_vals[] = {
 const int NR_TYPES = ARRAY_SIZE(max_vals);
 
 struct kbd_struct kbd_table[MAX_NR_CONSOLES];
+EXPORT_SYMBOL_GPL(kbd_table);
 static struct kbd_struct *kbd = kbd_table;
 
 struct vt_spawn_console vt_spawn_con = {
@@ -259,6 +260,7 @@ void kd_mksound(unsigned int hz, unsigne
 	} else
 		kd_nosound(0);
 }
+EXPORT_SYMBOL_GPL(kd_mksound);
 
 /*
  * Setting the keyboard rate.
diff -puN drivers/char/vt.c~basic-braille-screen-reader-support drivers/char/vt.c
--- a/drivers/char/vt.c~basic-braille-screen-reader-support
+++ a/drivers/char/vt.c
@@ -4003,6 +4003,7 @@ u16 screen_glyph(struct vc_data *vc, int
 		c |= 0x100;
 	return c;
 }
+EXPORT_SYMBOL_GPL(screen_glyph);
 
 /* used by vcs - note the word offset */
 unsigned short *screen_pos(struct vc_data *vc, int w_offset, int viewed)

Reply to: