NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: PR/48720 CVS commit: src/sys/dev/ic
The following reply was made to PR bin/48720; it has been noted by GNATS.
From: christos%zoulas.com@localhost (Christos Zoulas)
To: gnats-bugs%NetBSD.org@localhost, gnats-admin%netbsd.org@localhost,
netbsd-bugs%netbsd.org@localhost,
src153%gmail.com@localhost
Cc:
Subject: Re: PR/48720 CVS commit: src/sys/dev/ic
Date: Mon, 7 Apr 2014 20:09:33 -0400
On Apr 7, 10:05pm, src153%gmail.com@localhost (John Kelly) wrote:
-- Subject: Re: PR/48720 CVS commit: src/sys/dev/ic
| The following reply was made to PR bin/48720; it has been noted by GNATS.
|
| From: John Kelly <src153%gmail.com@localhost>
| To: gnats-bugs%netbsd.org@localhost
| Cc: Christos Zoulas <christos%netbsd.org@localhost>
| Subject: Re: PR/48720 CVS commit: src/sys/dev/ic
| Date: Mon, 7 Apr 2014 22:02:37 +0000
|
| On 4/6/14, Christos Zoulas <christos%netbsd.org@localhost> wrote:
|
| > Log Message:
| > PR/48720: John Kelly: com driver does not allow B0 to be set. The code to
| > handle B0 was commented out for no reason given at revision 1.99. POSIX
| > mandates to hangup on B0:
| > http://pubs.opengroup.org/onlinepubs/9699919799/functions/tcsetattr.html
|
| > To generate a diff of this commit:
| > cvs rdiff -u -r1.323 -r1.324 src/sys/dev/ic/com.c
|
| Thanks for a quick response. Your patch allows B0 to be set, which
| drops DTR. But once that's done, changing the baud to a non-zero value
| fails to bring DTR back up.
|
|
| @@ -1426,9 +1424,9 @@
| <----->}
| <----->sc->sc_msr_mask = sc->sc_msr_cts | sc->sc_msr_dcd;
| .
| -#if 0
| <----->if (ospeed == 0)
| <-----><------>CLR(sc->sc_mcr, sc->sc_mcr_dtr);
| +#if 0
| <----->else
| <-----><------>SET(sc->sc_mcr, sc->sc_mcr_dtr);
| #endif
|
|
| SET is still commented out, but it's needed too. Reactivating the else
| and SET allows a non zero baud rate to bring DTR back up. That fixes
| the POSIX compliance problem.
|
| But the fix may be risky. There are things happening with DTR in com.c
| that I don't fully understand yet. Looking at the CVS history, I see
| Hannum made some comments about DTR. Maybe he was trying to fix some
| other problem, when he caused the POSIX problem.
|
| At least I know where the problem is now. I can test it further when I
| have more time. If you want to revert the fix for safety's sake, it's
| OK with me.
|
| I leave it to your judgement.
I wanted to be safe by not dealing with resetting dtr... hoping that something
else would do it, but I've committed a better patch.
christos
Home |
Main Index |
Thread Index |
Old Index