diff options
author | Shilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com> | 2018-02-02 12:32:32 +0530 |
---|---|---|
committer | Stewart Smith <stewart@linux.vnet.ibm.com> | 2018-02-08 18:21:42 -0600 |
commit | 85a1de35cbe47618e9d4104880f182121806af4d (patch) | |
tree | a8d91ce33973908fc3403be14217c5b0aa0d4c8d /core/init.c | |
parent | d2cc3957abef48f3afdf8ec61d69e87e3446d562 (diff) | |
download | talos-skiboot-85a1de35cbe47618e9d4104880f182121806af4d.tar.gz talos-skiboot-85a1de35cbe47618e9d4104880f182121806af4d.zip |
fast-boot: occ: Re-parse the pstate table during fast-boot
OCC shares the frequency list to host by copying the pstate table to
main memory in HOMER. This table is parsed during boot to create
device-tree properties for frequency and pstate IDs. OCC can update
the pstate table to present a new set of frequencies to the host. But
host will remain oblivious to these changes unless it is re-inited
with the updated device-tree CPU frequency properties. So this patch
allows to re-parse the pstate table and update the device-tree
properties during fast-reboot.
OCC updates the pstate table when asked to do so using pstate-table
bias command. And this is mainly used by WOF team for
characterization purposes.
Signed-off-by: Shilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com>
Tested-by: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'core/init.c')
-rw-r--r-- | core/init.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/core/init.c b/core/init.c index 6eb4d830..36cf28de 100644 --- a/core/init.c +++ b/core/init.c @@ -486,6 +486,8 @@ void __noreturn load_and_boot_kernel(bool is_reboot) ipmi_set_fw_progress_sensor(IPMI_FW_OS_BOOT); + occ_pstates_init(); + if (!is_reboot) { /* We wait for the nvram read to complete here so we can * grab stuff from there such as the kernel arguments @@ -499,7 +501,6 @@ void __noreturn load_and_boot_kernel(bool is_reboot) * OCC takes few secs to boot. Call this as late as * as possible to avoid delay. */ - occ_pstates_init(); occ_sensors_init(); } else { |