On 13.08.2018 21:36, Eugene Grosbein wrote: > 13.08.2018 20:52, Alexander Lochmann wrote: > >> Hi folks! >> >> We are doing some automatic experiments using FreeBSD running in a >> virtual machine. >> To control the experiment from the outside, we use serial ports to >> communicate with an userspace program. >> The communication via serial does work with QEMU. However, it does not >> work with BOCHS which is our desired emulator. >> Even simple operations like 'echo FOO | tee /dev/ttyu1' or 'cat >> /dev/ttyu1' do not work. Both commands block 'forever'. >> It does not matter whether we use ttyu0 (file backend) or ttyu1 (tcp >> socket). >> I put some debug output in sys/dev/uart/uart_dev_ns8250.c. The output >> suggests that the driver more or less reads and writes to the serial >> ports. At least it does something... >> >> Do you have any hints how we can further analyze this problem? >> Did anyone came across a similar problem? > > This could be modem control line "Carrier Detection" (CD) or flow control > problem: > emulators can have distinct default settings for serial ports. > > You should not rely on defaults and make sure you disable modem control/CD > either explicitly (using stty(1) etc.) or implicitly by switching to > /dev/cuau0 > instead of /dev/ttyu0. Flow control settings should match too, for both sides > of virtual port. Thx. I cannot even run 'stty < /dev/ttyu1' to see the current settings. It simply blocks...
'stty < /dev/ttyu0' works perfectly. ttyu0 uses a file-based backend. Whereas ttyu1 uses a tcp server-based backend with a connected netcat. > > -- Technische Universität Dortmund Alexander Lochmann PGP key: 0xBC3EF6FD Otto-Hahn-Str. 16 phone: +49.231.7556141 D-44227 Dortmund fax: +49.231.7556116 http://ess.cs.tu-dortmund.de/Staff/al
signature.asc
Description: OpenPGP digital signature
