TTY cleanups have started...

Alexandre "Sunny" Kovalenko Alex.Kovalenko at
Sun Sep 19 18:53:42 PDT 2004

On Sun, 2004-09-19 at 05:43, Karel J. Bosschaart wrote:
> On Fri, Sep 17, 2004 at 01:59:22PM +0200, Poul-Henning Kamp wrote:
> > 
> > I've started cleaning up the TTY code, and the first driver hit
> > big time is ucom which drives a lot of USB serial gadgets.
> > 
> > The P4::phk_tty branch is 3028 lines shorter than current and I
> > will be perambulating the rest of the tty drivers with similar
> > cleanups in the coming weeks.
> > 
> > Let me know if I break something underway, I'm doing my best,
> > but I don't have all the hardware to test all our drivers.
> FYI, with -current sources from last Friday (09/17), my LCD display
> ucom0: Crystalfontz Crystalfontz CFA-633 USB LCD, rev 1.10/2.00, addr 2
> stopped working.
> Karel.
> _______________________________________________
> freebsd-current at mailing list
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at"
Me too, and some details...

I have USB-to-RS232 dongle (serviced by uplcom). Simple program below
will hang on 'open' infinitely. It does not hang on RELENG_5 as of late
EST on Saturday (9/18). My system is 6.0 current as of (9/18) as well
(includes 1.53 of ucom.c). Rolling back uplcom.c did not resolve the
problem. I was not able to cleanly roll back ucom.c -- got compilation
errors -- if there is a suggestion of what else needs to be rolled back
with it, I can give it another try.

I have turned on debugging output in both ucom.c and uplcom.c and it
looks like ucom will attempt to read data from USB pipe while doing
'open' and never comes back from that. Killing the program will result
in read being canceled in the driver, and then everything closes down

Unfortunately, my RELENG_5 laptop (ThinkPad T30 USB, 1.0 on board) is
considerably different from 6.0 one (Averatec 3150H, USB 2.0 on board),
so I cannot say for sure that RELENG_5 would not have this problem on
exactly same hardware. USB-to-serial thingy is the same though.

If there need for any additional information or to test patches, just
let me know.

I also have 'ubsa' device, but I did not get to play with that yet.

Here is the program.
// $Log$
// Reading data from serial port
#include <stdio.h>
#include <fcntl.h>
#include <stdlib.h>

int main(int argc, char *argv[])
  int fd;

  if(argc != 2)
    fprintf(stderr, "Usage: %s <serial port>\n", argv[0]);

  if((fd = open(argv[1], O_RDONLY)) < 0)


Alexandre "Sunny" Kovalenko.

More information about the freebsd-current mailing list