This should only matter for the time during RAM, right? Is it a larger issue?
Once we have printk in CAR for almost all CPUs, it matters even for CAR stage.
I meant the RAM init time when you're in CAR. After CAR the APs should be stopped until CPU init time, which is relatively short.
They do. It's hard to know if someone is already (ab)using them,
though.
Well, a quick (or not so quick) coreboot code search should help find out if the areas in question are already used. Do you know of an example fur such a MMIO area for the K8 with 690/SB600? That would help me implement a proof of concept.
From the BKD for Opterons:
3.5.13 Scratch Register Scratch Register Function 2: Offset 9Ch
Bits Mnemonic Function R/W Reset 31-0 Data Scratch Data R/W 0h
Field Descriptions Scratch Data (Data)-Bits 31-0.
So you get one per socket, first one at PCI_DEV(0,0x18,2) 0x9C
Another option would be to only let the BSP print messages by default.
That
would clean up most people's logs most of the time.
Except for the problem Ward is seeing right now. For that, we really want the AP messages. And preferably they should be readable (not intertwined).
You're right. He needs to know that his APs are still running even though they should be stopped. I guess the intertwined messages tell him that.
Thanks, Myles