Correct. I spent a lot of time and effort in the past trying to get a pcie serial card working with nothing to show for it. I even tried hard coding the irq/ioport addresses and loading the speakup_acnt driver after the card was initialized, but I still couldn't get it working. I'm sure someone who knows there way around the kernel could get it working, but no one was interested in working on this when I asked for help. Sort of like how no one is interested in getting hardware synths working properly now. I believe most of the speakup developers use software speech, so they likely have no motivation to work on hardware speech. On Mon, 26 Aug 2013, Keith Wessel wrote: > Trevor, > > I presume your modification to serialio.c will get hardware synths working, > but only for on-board serial ports and not add-on PCI serial ports. Is that > a correct assumption? From what I've both heard and found for myself in the > Speakup source, add-on serial port support takes more than what you've done, > but I could be wrong. > > Keith > > > -----Original Message----- > From: Speakup [mailto:speakup-bounces at linux-speakup.org] On Behalf Of Trevor > Astrope > Sent: Monday, August 26, 2013 6:52 PM > To: speakup at linux-speakup.org > Subject: Build Speakup Modules > > Here is how I built speakup as modules for my distribution kernel (Debian > Jessie 3.10-2-amd64) without having to configure and compile the kernel. > > The below requires that you have the kernel headers for your distribution's > kernel installed. You should have some files and directories under > /lib/modules/<kernel_ver>/build. On my system, `ls > /lib/modules/3.10-2-amd64/build' shows the following: > > arch include Makefile Module.symvers scripts > > > First, download the speakup source code if you don't already have it. > > $ git clone http://linux-speakup.org/speakup.git > > Change to the actual source directory: > > $ cd speakup/drivers/staging/speakup > > Rename Makefile to Kbuild: > > $ mv Makefile Kbuild > > Save the attached Makefile to speakup/drivers/staging/speakup/Makefile and > follow the instructions in speakup/INSTALLATION for building speakup as > modules. > > The modules will be installed in /lib/modules/<kernel_ver>/extra. If your > distribution kernel includes speakup, you will need to move them to > /lib/modules/<kernel_ver>/kernel/drivers/staging/speakup to avoid any > confusion with the version installed by your distribution. > > # mv /lib/modules/<kernel_ver>/extra/*.ko \ > /lib/modules/<kernel_ver>/kernel/drivers/staging/speakup > > Run depmod to update module dependencies: > > # depmod <kernel_ver> > > Lastly, update the init image with the new speakup modules and boot your > kernel. In Debian you can run: > > # update-initramfs -u > > If you are using a hardware synth, you may need to modify the speakup source > in order to get speech. If this is the case for you, edit > speakup/drivers/staging/speakup/serialio.c and remove the below around line > 37. Then repeat these instructions. > > if (synth_request_region(ser->port, 8)) { > /* try to take it back. */ > printk(KERN_INFO "Ports not available, trying to steal > them\n"); > __release_region(&ioport_resource, ser->port, 8); > err = synth_request_region(ser->port, 8); > if (err) { > pr_warn("Unable to allocate port at %x, errno %i", > ser->port, err); > return NULL; > } > } > > > > _______________________________________________ > Speakup mailing list > Speakup at linux-speakup.org > http://linux-speakup.org/cgi-bin/mailman/listinfo/speakup > >