okash.khawaja@xxxxxxxxx, on sam. 11 mars 2017 13:05:28 +0000, wrote: > This moves call to spk_stop_serial_interrupt() function out of synth_release() > and into release() method of specific spk_synth instances. This is because > a TTY-based synth implementation wouldn't need spk_stop_serial_interrupt() > call. Moving it into each synth's release() method gives the decision of > calling spk_stop_serial_interrupt() to that synth. TTY-based synths which > follow in this patchset simply wouldn't call it. > > Signed-off-by: Okash Khawaja <okash.khawaja@xxxxxxxxx> Reviewed-by: Samuel Thibault <samuel.thibault@xxxxxxxxxxxx> > Index: linux-4.10.1/drivers/staging/speakup/serialio.c > =================================================================== > --- linux-4.10.1.orig/drivers/staging/speakup/serialio.c > +++ linux-4.10.1/drivers/staging/speakup/serialio.c > @@ -158,6 +158,7 @@ > /* Free IRQ */ > free_irq(serstate->irq, (void *)synth_readbuf_handler); > } > +EXPORT_SYMBOL_GPL(spk_stop_serial_interrupt); > > int spk_wait_for_xmitr(struct spk_synth *in_synth) > { > @@ -224,6 +225,7 @@ > > void spk_serial_release(void) > { > + spk_stop_serial_interrupt(); > if (speakup_info.port_tts == 0) > return; > synth_release_region(speakup_info.port_tts, 8); > Index: linux-4.10.1/drivers/staging/speakup/speakup_acntpc.c > =================================================================== > --- linux-4.10.1.orig/drivers/staging/speakup/speakup_acntpc.c > +++ linux-4.10.1/drivers/staging/speakup/speakup_acntpc.c > @@ -304,6 +304,7 @@ > > static void accent_release(void) > { > + spk_stop_serial_interrupt(); > if (speakup_info.port_tts) > synth_release_region(speakup_info.port_tts-1, SYNTH_IO_EXTENT); > speakup_info.port_tts = 0; > Index: linux-4.10.1/drivers/staging/speakup/synth.c > =================================================================== > --- linux-4.10.1.orig/drivers/staging/speakup/synth.c > +++ linux-4.10.1/drivers/staging/speakup/synth.c > @@ -462,7 +462,6 @@ > sysfs_remove_group(speakup_kobj, &synth->attributes); > for (var = synth->vars; var->var_id != MAXVARS; var++) > speakup_unregister_var(var->var_id); > - spk_stop_serial_interrupt(); > synth->release(); > synth = NULL; > } > Index: linux-4.10.1/drivers/staging/speakup/speakup_decpc.c > =================================================================== > --- linux-4.10.1.orig/drivers/staging/speakup/speakup_decpc.c > +++ linux-4.10.1/drivers/staging/speakup/speakup_decpc.c > @@ -483,6 +483,7 @@ > > static void dtpc_release(void) > { > + spk_stop_serial_interrupt(); > if (speakup_info.port_tts) > synth_release_region(speakup_info.port_tts, SYNTH_IO_EXTENT); > speakup_info.port_tts = 0; > Index: linux-4.10.1/drivers/staging/speakup/speakup_dtlk.c > =================================================================== > --- linux-4.10.1.orig/drivers/staging/speakup/speakup_dtlk.c > +++ linux-4.10.1/drivers/staging/speakup/speakup_dtlk.c > @@ -375,6 +375,7 @@ > > static void dtlk_release(void) > { > + spk_stop_serial_interrupt(); > if (speakup_info.port_tts) > synth_release_region(speakup_info.port_tts-1, SYNTH_IO_EXTENT); > speakup_info.port_tts = 0; > Index: linux-4.10.1/drivers/staging/speakup/speakup_keypc.c > =================================================================== > --- linux-4.10.1.orig/drivers/staging/speakup/speakup_keypc.c > +++ linux-4.10.1/drivers/staging/speakup/speakup_keypc.c > @@ -306,6 +306,7 @@ > > static void keynote_release(void) > { > + spk_stop_serial_interrupt(); > if (synth_port) > synth_release_region(synth_port, SYNTH_IO_EXTENT); > synth_port = 0; > -- Samuel <b> il faut combien de chevaux pour tirer une doloréan à 88 morph ? ***b vient de remarque que 88 mph c'est 142 km/h <y> aaaaah <y> c'est pour ça qu'ils limitent à 130 km/h sur les autoroutes <y> c'est pour éviter que les gens voyagent dans le temps <b> probablement _______________________________________________ Speakup mailing list Speakup@xxxxxxxxxxxxxxxxx http://linux-speakup.org/cgi-bin/mailman/listinfo/speakup