I've got my Pi-3 booting u-boot in 64-bit (aarch64) mode from the SD card. Seems to work OK, but it isn't clear what cores 1,2 and 3 are doing.
I load my simple & stupid bare metal startup program over tftp and run it. The load address is 0x10800000 --- well away from u-boot and anything else that might be there. It runs and writes stuff to the uart (same uart as u-boot uses).
The Pi-3 seems to be running in EL-2 at that point (the currentEL register contains 0x8). The affinity register contains 0x0000000800000000.
My problem is that I can't get the other 3 cores to start.
According to the u-boot sources, they ought to be looping around a wfe instruction, waiting for a non-zero address to appear in the CPU_RELEASE_ADDR location. But I put my core1 start address there and execute SEV - nothing happens.
Can anyone give me any hint about what I'm doing wrong?