Subject: Re: stupid Ultra 10 serial port question
To: Jonathan A. Kollasch <jakllsch@kollasch.net>
From: Jonathan A. Kollasch <jakllsch@kollasch.net>
List: port-sparc64
Date: 04/17/2006 14:02:24
--tThc/1wpZn/ma/RB
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On Mon, Apr 17, 2006 at 12:55:53PM -0500, Jonathan A. Kollasch wrote:
> I noticed in sys/arch/sparc64/dev/sab82532reg.h:
>=20
> #define SAB_CCR4_ICD 0x10 /* invert polarity of carrier detect */
>=20
> but it is not used in sab.c. I might try adding that bit to SAB_CCR4
> in sabtty_reset(). Also, I'll try connecting between two my two
> Ultra boxes.
Ok, the two Sun boxes both have carrier problem errors, but I almost
expected as much.
So, I tried a modified kernel:
--- sys/arch/sparc64/dev/sab.c.orig 2006-03-28 11:38:27.000000000 -0600
+++ sys/arch/sparc64/dev/sab.c 2006-04-17 13:19:09.000000000 -0500
@@ -1109,7 +1109,7 @@
SAB_WRITE(sc, SAB_CCR1, SAB_CCR1_ODS | SAB_CCR1_BCR | SAB_CCR1_CM_7=
);
SAB_WRITE(sc, SAB_CCR2, SAB_CCR2_BDF | SAB_CCR2_SSEL | SAB_CCR2_TOE=
);
SAB_WRITE(sc, SAB_CCR3, 0);
- SAB_WRITE(sc, SAB_CCR4, SAB_CCR4_MCK4 | SAB_CCR4_EBRG);
+ SAB_WRITE(sc, SAB_CCR4, SAB_CCR4_MCK4 | SAB_CCR4_EBRG | SAB_CCR4_IC=
D);
SAB_WRITE(sc, SAB_MODE, SAB_MODE_RTS | SAB_MODE_FCTS | SAB_MODE_RAC=
);
SAB_WRITE(sc, SAB_RFC,
SAB_RFC_DPS | SAB_RFC_RFDF | SAB_RFC_RFTH_32CHAR);
and wouldn't you know it, it works normally for PPP even.
One *BIT* fixed it. This must have been broken since the import from
OpenBSD.
I'd appreciate testing to make sure this isn't a fix for a hardware
inconsistency isolated to the Ultra 5/10. (If any other hardware even
uses sabtty(4).)
Jonathan Kollasch
--tThc/1wpZn/ma/RB
Content-Type: application/pgp-signature
Content-Disposition: inline
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (NetBSD)
iD8DBQFEQ+ZAOjx1ye3hmokRAij9AJ9fT8HVbdhSxgLIKPRuIfd0LL/MXQCcDgMX
ET8nlSb66qYMcXN8MTZCkeE=
=wW9P
-----END PGP SIGNATURE-----
--tThc/1wpZn/ma/RB--