I am having a rather strange serial (EIA-232) I/O problem under 8.0-RELEASE-p2. I have seen this on 2 different systems that I've tried: an AMD Athlon 64 X2 4200+ on a Biostar MC-P6P-M2+, and a Pentium III 450 in an HP Vectra VLI8. In both cases I'm using the first built-in serial port on the motherboard.
I have code that communicates with 1-wire devices (DS18B20, DS2406) through a DS9097U-S09 EIA-232 adapter. This code works very well under FreeBSD 6.4 and 7.x on all hardware I've tried, but fails miserably under 8.0. I know the default driver has changed from the sio driver to the uart driver, and have made the appropriate name changes. It almost works on 8.0, but it seems that every data transfer results in a CRC error. I have confirmed that the modem control signals and TX and RX data look right with an oscilloscope. It is hard to believe that data overruns are occurring because I never see a value above 27 interrupts per second with "systat -v" when it is failing, and I am only running one port at this time. I run this code on a Pentium-100 under 6.4 with 4 serial ports going without any issues.
The UART is reported like this at boot time on the P3 box:
Any suggestions (I mean, other than waiting for 8.1)?
I have code that communicates with 1-wire devices (DS18B20, DS2406) through a DS9097U-S09 EIA-232 adapter. This code works very well under FreeBSD 6.4 and 7.x on all hardware I've tried, but fails miserably under 8.0. I know the default driver has changed from the sio driver to the uart driver, and have made the appropriate name changes. It almost works on 8.0, but it seems that every data transfer results in a CRC error. I have confirmed that the modem control signals and TX and RX data look right with an oscilloscope. It is hard to believe that data overruns are occurring because I never see a value above 27 interrupts per second with "systat -v" when it is failing, and I am only running one port at this time. I run this code on a Pentium-100 under 6.4 with 4 serial ports going without any issues.
The UART is reported like this at boot time on the P3 box:
Code:
Mar 10 17:27:03 fillhole kernel: uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
Mar 10 17:27:03 fillhole kernel: uart0: [FILTER]
Mar 10 17:27:03 fillhole kernel: uart1: <16550 or compatible> port 0x2f8-0x2ff irq 3 on acpi0
Mar 10 17:27:03 fillhole kernel: uart1: [FILTER]
Any suggestions (I mean, other than waiting for 8.1)?