FreeBSD on e500mc 36bit physical addressing
Aleksey Fedorov
aleksey.v.fedorov at gmail.com
Wed Oct 3 20:14:18 UTC 2012
Hi!
2012/9/27 Rafal Jaworowski <raj at semihalf.com>:
> We are supposed to be compatible with ePAPR spec of the device tree (so is Linux), so no special handling is needed.
>
> Regarding the error it might be caused by the recent import of changes for ARM which affected FDT infrastructure code (http://svn.freebsd.org/changeset/base/239268). We had a side conversation with Marcel regarding DSI panic during localbus node processing, which seems similar to what you're seeing. Can you try some older code base (prior to r239268) to see if it shows the same/related problem?
>
> Rafal
>
This changes in fdt_common.c help me to deal with "interrupt-parent":
- if (OF_getprop(node, "interrupt-parent", &iph, sizeof(iph)) <= 0) {
+ if (OF_searchprop(node, "interrupt-parent", &iph, sizeof(iph)) <= 0) {
Next waypoint is to bring up SMP APs. Now I have:
Adding CPU 0, pir=0, awake=1
Waking up CPU 1 (dev=1)
SMP: CPU 0 didn't wake up (trace code 0).
Waking up CPU 2 (dev=2)
SMP: CPU 0 didn't wake up (trace code 0).
Waking up CPU 3 (dev=3)
SMP: CPU 0 didn't wake up (trace code 0).
Waking up CPU 4 (dev=4)
SMP: CPU 0 didn't wake up (trace code 0).
Waking up CPU 5 (dev=5)
SMP: CPU 0 didn't wake up (trace code 0).
Waking up CPU 6 (dev=6)
SMP: CPU 0 didn't wake up (trace code 0).
Waking up CPU 7 (dev=7)
SMP: CPU 0 didn't wake up (trace code 0).
SMP: 8 CPUs found; 8 CPUs usable; 1 CPUs woken
What is the right way to bring up cores in FreeBSD? Using ePAPR
spinlocks or custom reset?
More information about the freebsd-ppc
mailing list