From 8eae6501b75ca47aed682e9cf083ac9ef024b397 Mon Sep 17 00:00:00 2001 From: Alexander Boettcher Date: Wed, 15 Jan 2025 18:29:17 +0100 Subject: [PATCH] tool: use bender hwp options also for foc and seL4 Issue #5406 --- tool/run/bender.inc | 28 ++++++++++++++++++++++++++++ tool/run/boot_dir/foc | 4 +++- tool/run/boot_dir/hw | 28 +--------------------------- tool/run/boot_dir/nova | 28 +--------------------------- tool/run/boot_dir/sel4 | 4 +++- 5 files changed, 36 insertions(+), 56 deletions(-) create mode 100644 tool/run/bender.inc diff --git a/tool/run/bender.inc b/tool/run/bender.inc new file mode 100644 index 0000000000..5251f470e4 --- /dev/null +++ b/tool/run/bender.inc @@ -0,0 +1,28 @@ +# +# Return Bender option that configures Bender's Intel HWP plugin +# +# \param --bender-intel-hwp-mode Run the Intel HWP plugin of Bender in the +# given mode. Valid argument values are +# "off", +# "performance", +# "balanced", and +# "power_saving" +# The argument value defaults to +# "performance". +# +proc bender_intel_hwp_mode_option { } { + + set opt [get_cmd_arg_first --bender-intel-hwp-mode "performance"] + if {$opt == "off"} { + return "intel_hwp_off" + } elseif {$opt == "performance"} { + return "intel_hwp_performance" + } elseif {$opt == "balanced"} { + return "intel_hwp_balanced" + } elseif {$opt == "power_saving"} { + return "intel_hwp_power_saving" + } else { + return "intel_hwp_performance" + } +} + diff --git a/tool/run/boot_dir/foc b/tool/run/boot_dir/foc index b7d6438e95..564eb4997f 100644 --- a/tool/run/boot_dir/foc +++ b/tool/run/boot_dir/foc @@ -1,3 +1,5 @@ +source [genode_dir]/tool/run/bender.inc + proc binary_name_ld_lib_so { } { return "ld-foc.lib.so" } proc binary_name_core_a { } { return "core-foc-[board].a" } proc binary_name_timer { } { return "foc_timer" } @@ -94,7 +96,7 @@ proc run_boot_dir_x86 {binaries} { exec mv [run_dir]/image.elf [run_dir]/boot/image.elf - set options_bender "[boot_output]" + set options_bender "[boot_output] [bender_intel_hwp_mode_option]" if {[have_include "image/iso"] || [have_include "image/disk"] || [have_include image/uefi]} { diff --git a/tool/run/boot_dir/hw b/tool/run/boot_dir/hw index 5a8648ecbb..e342d92a9e 100644 --- a/tool/run/boot_dir/hw +++ b/tool/run/boot_dir/hw @@ -1,30 +1,4 @@ -# -# Return Bender option that configures Bender's Intel HWP plugin -# -# \param --bender-intel-hwp-mode Run the Intel HWP plugin of Bender in the -# given mode. Valid argument values are -# "off", -# "performance", -# "balanced", and -# "power_saving" -# The argument value defaults to -# "performance". -# -proc bender_intel_hwp_mode_option { } { - - set opt [get_cmd_arg_first --bender-intel-hwp-mode "performance"] - if {$opt == "off"} { - return "intel_hwp_off" - } elseif {$opt == "performance"} { - return "intel_hwp_performance" - } elseif {$opt == "balanced"} { - return "intel_hwp_balanced" - } elseif {$opt == "power_saving"} { - return "intel_hwp_power_saving" - } else { - return "intel_hwp_performance" - } -} +source [genode_dir]/tool/run/bender.inc proc binary_name_ld_lib_so { } { return "ld-hw.lib.so" } proc binary_name_core_a { } { return "core-hw.a" } diff --git a/tool/run/boot_dir/nova b/tool/run/boot_dir/nova index 820262dc6a..41cb168521 100644 --- a/tool/run/boot_dir/nova +++ b/tool/run/boot_dir/nova @@ -1,30 +1,4 @@ -# -# Return Bender option that configures Bender's Intel HWP plugin -# -# \param --bender-intel-hwp-mode Run the Intel HWP plugin of Bender in the -# given mode. Valid argument values are -# "off", -# "performance", -# "balanced", and -# "power_saving" -# The argument value defaults to -# "performance". -# -proc bender_intel_hwp_mode_option { } { - - set opt [get_cmd_arg_first --bender-intel-hwp-mode "performance"] - if {$opt == "off"} { - return "intel_hwp_off" - } elseif {$opt == "performance"} { - return "intel_hwp_performance" - } elseif {$opt == "balanced"} { - return "intel_hwp_balanced" - } elseif {$opt == "power_saving"} { - return "intel_hwp_power_saving" - } else { - return "intel_hwp_performance" - } -} +source [genode_dir]/tool/run/bender.inc proc binary_name_ld_lib_so { } { return "ld-nova.lib.so" } proc binary_name_core_a { } { return "core-nova.a" } diff --git a/tool/run/boot_dir/sel4 b/tool/run/boot_dir/sel4 index 0f188000a5..c2cc03c92f 100644 --- a/tool/run/boot_dir/sel4 +++ b/tool/run/boot_dir/sel4 @@ -1,3 +1,5 @@ +source [genode_dir]/tool/run/bender.inc + proc binary_name_ld_lib_so { } { return "ld-sel4.lib.so" } proc binary_name_core_a { } { return "core-sel4.a" } proc binary_name_timer { } { @@ -57,7 +59,7 @@ proc run_boot_dir {binaries} { exec mv [run_dir]/image.elf [run_dir]/boot/image.elf - set options_bender "[boot_output] phys_max=256M" + set options_bender "[boot_output] [bender_intel_hwp_mode_option] phys_max=256M" if {[have_include "image/iso"] || [have_include "image/disk"] || [have_include image/uefi]} {