Question about xserve G5

Brandon Bergren bdragon at FreeBSD.org
Fri Oct 30 15:26:06 UTC 2020



On Fri, Oct 30, 2020, at 10:02 AM, Javi Hotmail wrote:
> Is there any documentation that I could read about this? Also why is not
> possible from the kernel to run functions from the DT?. I just started
> looking at the code now; It seems to me that depends on some sort of
> openfirmware functionality. Why is this?
> 
> Regards,
> 

It's not possible because we don't have an implementation of the platform function interpreter written.

If someone were to write a BSD-licensed platform function interpreter, it would be pretty easy to hook it in.

The (GPL) linux interpreter is an example of a platform function interpreter. https://github.com/torvalds/linux/blob/master/arch/powerpc/platforms/powermac/pfunc_core.c

Darwin has one as well but when I looked at it it was a bunch of Objective C that would be less work to just reimplement rather than trying to use. (I think the license wasn't BSD either)

The device tree has a series of platform functions that contain bytecode that the kernel runs to do a function like change the cpu clockrate, etc. It's done this way so it can be run without having to context-switch, and have platform drivers that automatically work on all Mac99 machines.

I'm not sure off the top of my head what documentation there is available.


More information about the freebsd-ppc mailing list