Re: sgimips o2 and ARCS console in video mode hangs when it scrolls

Adrian Chadd <[email protected]> Sun, 19 Apr 2026 11:08:33 -0700
Newsgroups gmane.os.netbsd.ports.mips.devel
Message-ID <CAJ-Vmon+KfjrrQZ4q5La0ekNAS+j0ZzOwcDjhjcdjSXjkNBruA@mail.gmail.com>
(cc'ing maya@ as they introduced this way back when!)

On Wed, 15 Apr 2026 at 16:08, Adrian Chadd <[email protected]> wrote:

> I did boot various NetBSD IP3x installer kernels. It worked on 8.3 and
> failed on 9.0.
> The ARCS video console does scroll a whole bunch before the crmfb driver is
> initialised and takes over.
>
> So, something changed between those two releases that broke the environment ARCS
> is expecting to be maintained during early boot on the O2.

I found it - it's v1.213 -> v1.214 of sys/arch/mips/mips/locore.S :

Author: maya <[email protected]>
Date:   Wed Mar 7 15:56:33 2018 +0000

    Add duplicate code to read the FPU ID.
    enable & disable the FPU around it.

If I comment out the FPU disable in trunk (well, trunk from Jan 2026;
i'll update everything again soon and re-test!)
then the O2 boots fine.

My guess is that some versions of the ARCS firmware on SGI require the
FPU to be enabled to run some code.
So my /guess/ is the real fix should be enabling the FPU before the
arcbios jump and then disabling the FPU afterwards.

I'll go file a PR about it soon with the initial "fix" against trunk
to demonstrate it works, and then I'll have to go
remember (again!) how MIPS assembly works enough to disable/enable the
FPU around the arcbios calls.


-adrian