Booting and Installing Release 12 on PowerMac G5 "Quad Core"

Mark Millard marklmi at yahoo.com
Mon Jan 28 05:57:13 UTC 2019



On 2019-Jan-27, at 16:05, Curtis Hamilton <clhamilto at gmail.com> wrote:

> Is there a recommended solution to booting/installing Release 12 on the PowerMac G5 "Quad Core"?
> 
> I've read through all the threads in this mailing list, but have yet to find a solution that works on my Mac.  Many of the referenced snapshot kernels could not be located.  Building from source yielded the same results as down loaded pre-built images.
> 
> Any tips or hits would be appreciated.

A specific change was made for powerpc64 that lead to this G5 boot problem.
However, it appears to just have exposed some previously unknown problem rather
than the change itself being wrong. I'm not aware of anyone having figured
out the underlying problem --or even of having figured out a way to figure
it out. I know I've not come up with any ideas so far. So far as I know, only
old PowerMacs show such odd behavior with the change.

So for now I base my builds on reverting the change in question. (I normally
use head, including 12 back when it was head.)

. . ./sys/powerpc/include/vmparam.h has a definition of VM_MAX_KERNEL_ADDRESS .
I reverted the:

#define VM_MAX_KERNEL_ADDRESS           0xe0000007ffffffffUL

to be:

#define VM_MAX_KERNEL_ADDRESS           0xe0000001c7ffffffUL

instead. But, again, I expect that this is a way of sidestepping another
problem that has not been found: a hack/workaround instead of a valid,
general fix.

Disabling smp via the following at the loader prompt seems to avoid
the problem without such a change to to VM_MAX_KERNEL_ADDRESS :

set kern.smp.disabled=1

Nothing else has to be set to my knowledge. But using a single CPU/core
has other consequences that may be of note depending on what one wants
to do with the G5.



[For the following: I believe it only applies to head , not even
stable/12: The fix so that usefdt would work at all ( -r341614 )
is for . . ./sys/powerpc/powermac/macgpio.c and has not been
merged to stable/12 ( and, so, not to release/12.0.0 ).]

As far as I know the following by itself at the loader prompt does not
side step the VM_MAX_KERNEL_ADDRESS related problem:

set usefdt=1

However, usefdt should avoid other issues with mixing use of Apple's
OpenFirmware with FreeBSD execution. (It does swap which Ethernet
port is 0 vs. 1 as seen in FreeBSD.)

So once stable/12 has the update to sys/powerpc/powermac/macgpio.c
then usefdt=1 would likely be recommended for stable/12 as well.
(It will be a while before it shows up in a release/12.?.? .)


===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-ppc mailing list