On Sat, 1 Mar 2003, Roger Butenuth wrote: > [...] > c) Can you activate DMA for the cdrom? This reduces the cpu load. Most > modern cdroms support DMA. It turned out that DMA was already in use, but thanks - you set me on the right track. I found a reference in one of the HOWTOs when I searched for DMA information, suggesting either hdparm -d0 -c1 /dev/hdd or hdparm -d1 -X34 /dev/hdd neither of which helped. However, the -u option of hdparm can be used to turn on interrupt unmasking: hdparm -u1 /dev/hdd fixed the problem (with FIFO off, so the speech works properly). On Fri, 28 Feb 2003, Nicolas Pitre wrote: > [...] > You can't enable transmit and receive fifoes independently on the 16550. What I have now is two hacks (turning the FIFO off and turning on interrupt unmasking), but it works, so I'm unlikely to press this further. However, I'm curious: what would happen if I hacked the serial driver to just send one byte at a time when transmitting (i.e. to pretend that there isn't an output FIFO)? > [...] > There is no irq priority in standard Linux. Strangely enough, it did turn out to be something vaguely related: from what I can gather, the IDE driver was masking other interrupts while it was processing its own, so some serial interrupts were being ignored and overruns were occurring. There's even a mention of serial overruns in the HDPARM(8) manpage... Of course, the underlying problem remains: the CombiBraille's speech malfunctions badly when used with a FIFO-enabled serial UART. I've no idea why: it could be flow control (there was no information about that in the protocol document from Tieman), but I don't understand why this should be such a big issue with the FIFO on, and no issue at all with it off; but there you go. Thanks, everyone, for your help! Cheers, Nikhil. _______________________________________________ Blinux-list@redhat.com https://listman.redhat.com/mailman/listinfo/blinux-list