• Hello MLAers! We've re-enabled auto-approval for accounts. If you are still waiting on account approval, please check this thread for more information.

OpenFirmware System Bus Variable?

I've been tinkering with a Gigabit Ethernet G4 and making preparations to swap a Quicksilver CPU into it. It's already got a modern PSU to replace a dead one along with a custom built ATX adapter and a Radeon 9000 Pro from a late MDD with more mods on the way. Thing is, I want my CPU clock speed to be reported correctly when I do, and that won't happen if I just change the jumper settings on the back of the motherboard to go from a 100MHz bus to a 120 or 133MHz bus. While testing, my motherboard was set to a 120MHz bus, and at a 6.5x multiplier on a natively 867MHz CPU, it reports as 650MHz even though it should be running at 780MHz.

I saw in another thread discussing overclocking a Quicksilver's system bus to 150MHz, mentioned here, that there's an OpenFirmware variable you can change to tell the OS that the system bus is a different speed. People used to think this was a softwaare overclock but it's not, it's just changing the reporting of the bus speed. Thing is, I can't find any information on how to actually set that variable and none of the ones when [printenv] is run seem to suggest that's what they do.

Does anyone know how to do this? It'd help your girl out a lot.
 

Attachments

  • PMG4.jpg
    PMG4.jpg
    940.3 KB · Views: 1
I think the correct approach would be to fix the firmware so that it correctly reports the hardware. I don't know how to do this. The powerlogix patch will fix some of the atypical multiples, but not the bus speed (at least not 120MHz). There was a giga designs kext that would also do better, but I don't remember if it would detect bus speed. Anyway, I did a quick search and this hack might do what you want; I found this in one of the hits:

How to edit and store the NVRAMRC for 133MHz bus

(1) Boot by holding down "Cmd" + "Opt" + "O" + "F" keys to enter the OpenFirmware terminal.
(2) Enter the NVRAMRC editor. (<return> shows you should type "return" key)
nvedit<return>
(3) Type following script exactly (including space).
" /" select-dev<return>
7efdc44 " clock-frequency" get-my-property 2drop !<return>
" /cpus/PowerPC,G4@0" select-dev<return>
1fca0554 " clock-frequency" get-my-property 2drop !<return>
7efdc44 " bus-frequency" get-my-property 2drop !<return>
1fbf711 " timebase-frequency" get-my-property 2drop !
(4) Type "Cntl" + "C" to exit NVRAMRC editor.
(5) Save the script
nvstore<return>
(6) To enable the NVRAMRC, type this command.
setenv use-nvramrc? true<return>
(7) Reboot with new timebase constant.
reset-all<return>
 
Back
Top