(Answer) (Category) Linux on PowerPC FAQ-O-Matic : (Category) PowerPC Linux : (Category) Open Firmware :
Making a 7500/7600 initialize the screen properly
This was posted to the linuxpmac list. I have also put the code into a boot-
variables settings file you can download from http://www.pht.com/~brad

Date: Sun, 17 Aug 1997 02:06:09 -0700
From: Alan Mimms <alanm@unforgettable.com>
To: linux-pmac@arvidsjaur.anu.edu.au
Subject: Fixes for Apple OpenFirmware 1.0.5
Message-ID: <l03102805b01c6ac156c1@[206.107.149.99]>

Hi.

I have finally had enough with the buggy screen and disk drivers in Apple's
Open Firmware on PowerMac 7200, 7500, 7600, 8500, 9500, and probably some
others I'm forgetting.  So I have written some NVRAMRC based patches to
Open Firmware to hack around the bugs enough for my purposes anyway.  I
hope the hacks may help you too.

Start up and break into your Open Firmware -- Cmd-Opt-O-F during the boot
beep held down until the "user interface" for Open Firmware comes up on
your screen or, if you're smart, your serial port.  The banner printed by
Open Firmware shows the Open Firmware version.  These patches ONLY apply to
Open Firmware version 1.0.5.  Other versions will crash if these patches
can be applied at all!

Type at the prompt:

    nvedit

and hit control-L to see the cryptic stuff that is part of your Open
Firmware's startup sequence.  This stuff patches various bugs in the ROM.

Hit control-N enough times that you no longer see a new line of
gobbledegook every time several times in a row.  This means you're at the
bottom.  Either paste the following into a terminal session (NOTE: must be
at least a dozen or so ms delay between characters and maybe 100ms between
lines to work right!) or else enter the following lines very very carefully:

        dev /bandit/gc/via-cuda
        ' write value &W
        : -&We &W swap - execute ;
        : P1 4D8 -&We false 548 -&We ;
        &W FC + ' P1 BLpatch
        : P2 0C 2 ms ;
        &W E0 + ' P2 BLpatch device-end

        : wBoot
        begin
         boot-device ['] $boot catch drop
         ." -Waiting for boot-device" cr
         d# 500 ms
        key? until
        ;

Note that ALL whitespace above except for the line indentation is REQUIRED.
FORTH is a very very very strange "language".  It may be safe to leave the
line indentation as I have it above when pasting if you wish.  It's
wasteful but who cares?

At the end of this laborious typing (or pasting) session hit control-C (yes
that's right: control-C is the end of editing session character in Open
Firmware).  Then type at the prompt

        nvstore

to save the changed NVRAMRC variable into NVRAM.

The first block fixes a bug in the via-cuda driver in which not enough time
is given for the device to settle when it is told to set the video
controller's clocks up.

The second block defines a FORTH word that can be used in place of the
normal boot-command contents to wait for the disk to spin up before
attempting to really boot.  This avoids the standard "black screen the
first time you power on the computer each day" problem.

Then type at the prompt

        setenv boot-command wBoot

This sets up the default command executed on auto-boot (normally on power
on) to run the above disk spinup waiting hack.

FYI: the reason I know about this stuff is that I worked for about two
years as the Copland booting guy.  Sheesh...

Please don't inundate me with a bazillion questions about Open Firmware.  I
have a real job and it takes 60+ hours a week of my time.  I get PAID to do
it.  I just did this to fix MY PPC Linux box and I wanted to help you folks
out a teeny bit if I could.  No, I don't work at Apple anymore.  Cancelling
Copland was the last straw.  I worked there more than nine years.  (sigh)

Happy trails.
a

A copy of the universe is not what is required of art; one of the damned
things is ample.   -- Rebecca West, The Creators, by Daniel J. Boorstin

brad@pht.com
[Append to This Answer]
Previous: (Answer) Multiple Kernels on a 7200
Next: (Answer) Enabling the monitor on a PowerMac 5500
This document is: http://www.jonh.net/cgi-bin/lppcfom/fom?file=378
[Search] [Appearance]
This is a Faq-O-Matic 2.717d.
Hosted by anduin.org and SourceForge Logo