On Sat, Nov 06, 2010 at 03:32:30PM +0100, xdrudis wrote:
So I would suppose you don't really need to check all cores in a processor. If they share the northbridge how could they require different frequencies for it ?. But this is only with respect to the frecuency. Maybe you want to wait for all simply to make sure you already set the NBVid before you set the NbFid? I believe for tilapia_fam10 you already have waited at wait_all_other_cores_started before calling init_fidvid_bsp, so you could have SET_FIDVID_CORE_RANGE to 1 and save a little.
Sorry, I was mistaken. wait_all_other_cores_started does not mean wait for all cores that have started (until they're done) but wait for all cores to start. I mean that wait_all_other_cores_started waits until cores have written F10_APSTATE_STARTED to the lapic and init_fidvid_bsp waits until they have written F10_APSTATE_RESET, just after seting nbvid an changing to pstate 1 and then core0 to pstate 0
I'm not 100% that BKDG 2.4.2.9.1 requires synchronization after each step, which we don't do, but if it is required between steps 6 and 8 then SET_FIDVID_CORE_RANGE can't be set to 1 because we wouldn't be waiting for all cores to change to p1.