Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-9]: src/sys/arch/hp300/dev Pull up following revision(s) (request...



details:   https://anonhg.NetBSD.org/src/rev/b300059ecc59
branches:  netbsd-9
changeset: 372545:b300059ecc59
user:      martin <martin%NetBSD.org@localhost>
date:      Tue Dec 06 19:19:26 2022 +0000

description:
Pull up following revision(s) (requested by tsutsui in ticket #1551):

        sys/arch/hp300/dev/topcat.c: revision 1.6

Fix silent bus error panic on 98543A topcat framebuffer on HP320 and HP360.

It looks DELAY(100)s before checking cmap_busy in old pre-wscons grf_tc.c
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/hp300/dev/Attic/grf_tc.c?rev=1.42
are actually necessary on 68020 (HP320) and 68030 (HP360) machines,
while it works without them on 68040 (HP380).

Should be pulled up to netbsd-9.

diffstat:

 sys/arch/hp300/dev/topcat.c |  6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diffs (27 lines):

diff -r 4ea7faf9ec6f -r b300059ecc59 sys/arch/hp300/dev/topcat.c
--- a/sys/arch/hp300/dev/topcat.c       Sat Nov 05 11:21:06 2022 +0000
+++ b/sys/arch/hp300/dev/topcat.c       Tue Dec 06 19:19:26 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: topcat.c,v 1.4.64.1 2021/04/21 17:59:47 martin Exp $   */
+/*     $NetBSD: topcat.c,v 1.4.64.2 2022/12/06 19:19:26 martin Exp $   */
 /*     $OpenBSD: topcat.c,v 1.15 2006/08/11 18:33:13 miod Exp $        */
 
 /*
@@ -448,6 +448,8 @@
                tc->gdata  = fb->cmap.g[index];
                tc->bdata  = fb->cmap.b[index];
                tc->strobe = 0xff;
+               /* XXX delay required on 68020/30 to avoid bus error */
+               DELAY(100);
 
                tccm_waitbusy(tc);
                tc->cindex = 0;
@@ -459,6 +461,8 @@
                tc->bdata  = fb->cmap.b[index];
                tc->cindex = ~index;
                tc->strobe = 0xff;
+               /* XXX delay required on 68020/30 to avoid bus error */
+               DELAY(100);
 
                tccm_waitbusy(tc);
                tc->rdata  = 0;



Home | Main Index | Thread Index | Old Index