1) Använd någon fördefinierad baud rate (300, 600, 1,200 osv upp till 1,843,200, och 6,250,000) - den som är närmast 250 k av dem är 230,400.
2) Använd "Scalable Baud Rate". Baud raten blir då 3,125,000 delat med valfritt heltal. Tyvärr måste du dela med 12,5 för att få 250 kBaud.
3) Extern klocka. Baud rate = extern klocka / 8.
4) Använd timer0 som baud rate clock. Baud rate = timer0 / 8. Edit: Max timerklockfrekvens är 12.5 MHz delat med potenser av två. 12.5 MHz/8/250000 = 6,25. Du måste alltså ändra timerns värde: 6, 6, 6, 7, 6, 6, 6, 7 osv.
Med hjälp av lite interrupt så går det antagligen att använda nr 4 för att få nästan valfri baud rate. Problemet är att du kör linux, vilket betyder att drivrutinen måste stödja det hela. Serieportsdrivrutinen för Etraxen heter crisv10.c och är på typ 5000 rader.

Arvid