Nico Huber has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/36865 )
Change subject: mb/google/hatch: Override CPU flex ratio ......................................................................
Patch Set 9:
Patch Set 9:
Patch Set 9:
So, is it just the ratio that should be active while that vboot code runs or is there another effect of flex ratio that helps here?
this needs a soft reset to apply new flex ratio. hence its better we set this early.
Sorry, I'm not asking how to use flex ratio. I'm asking if flex ratio is really needed.
Also as i told we are trying to minimize the platform (+SOC) power consumption in FW boot hence trying not to boot using non-turbo max.
I'm asking because flex ratio seems to have some side effects that might need more attention.
I don't get this part, can you please help to explain about side effect?
It changes CPUID and MSR values that otherwise can't be changed (mostly to align multiple processor packages, is what I found in documentation). This affects all the code in coreboot that reads those registers. For instance, I suspect that our ACPI p-state table generation might be wrong of flex ratio is used.
And if just changing the frequency is enough, we could just set a different speed-step state with a single MSR write, no?
Are you referring at EIST here ?
Yes. In `soc/intel/cannonlake/cpu.c` we're already calling cpu_set_max_ratio(). This is the first place I would expect someone to change the ratio. I don't know how (if) it is affected by flex ratio, btw.