Port-mips archive

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

Re: X problem on PMAGB-B



On Fri, 14 Nov 2025 at 20:41, Dave McGuire <mcguire%neurotica.com@localhost> wrote:
>
>    Annnnd the NetBSD 7.2/pmax CD hangs on boot, at "scsibus0: waiting 2
> seconds fro devices to settle...".  I waited about 10mins.
>
>    This is on a 5000/260 with a PMAGB-B.  The exact same thing happens
> in gxemul, emulating a 5000/200 with a PMAG-B.
>
>    NetBSD/pmax is in pretty sad shape these days. :-(

Well, NetBSD is arguably in a better place now (netbsd-10/11) than it
was in 2018 (netbsd-7) - booting and non-functional X11 usually beats
hang-on-boot :)

While that might seem like cold comfort, it does mean it is much
easier to test changes.

I don't have any pmax hardware to hand, but I ran up a netbsd-11 pmax
build with macallan's
machine_btop(sc->sc_vaddr + SFB_FB_OFFSET + offset);
patch on the offchance you are free to test:
https://sync.absd.org/pmax/netbsd-11-2025-11-15/ - includes iso and
kernels :)

Index: sys/dev/tc/sfb.c
===================================================================
RCS file: /cvsroot/src/sys/dev/tc/sfb.c,v
retrieving revision 1.89
diff -u -p -r1.89 sfb.c
--- sys/dev/tc/sfb.c    6 Dec 2021 16:00:07 -0000       1.89
+++ sys/dev/tc/sfb.c    15 Nov 2025 16:30:24 -0000
@@ -487,7 +487,7 @@ sfbmmap(void *v, void *vs, off_t offset,

        if (offset >= SFB_SIZE || offset < 0)
                return (-1);
-       return machine_btop(sc->sc_vaddr + offset);
+       return machine_btop(sc->sc_vaddr + SFB_FB_OFFSET + offset);
 }

 static int
Index: sys/dev/tc/sfbplus.c
===================================================================
RCS file: /cvsroot/src/sys/dev/tc/sfbplus.c,v
retrieving revision 1.42
diff -u -p -r1.42 sfbplus.c
--- sys/dev/tc/sfbplus.c        6 Dec 2021 17:43:50 -0000       1.42
+++ sys/dev/tc/sfbplus.c        15 Nov 2025 16:30:24 -0000
@@ -509,7 +509,7 @@ sfbmmap(void *v, void *vs, off_t offset,

        if (offset >= 0x1000000 || offset < 0) /* XXX 16MB XXX */
                return (-1);
-       return machine_btop(sc->sc_vaddr + offset);
+       return machine_btop(sc->sc_vaddr + SFB_FB_OFFSET + offset);
 }

 static int


Home | Main Index | Thread Index | Old Index