diff --git a/etc/inc/system.inc b/etc/inc/system.inc
index dfd29bc79a..e5c6c932b4 100644
--- a/etc/inc/system.inc
+++ b/etc/inc/system.inc
@@ -47,10 +47,16 @@ function activate_powerd() {
if(isset($config['system']['powerd_enable'])) {
if ($g["platform"] == "nanobsd")
exec("/sbin/kldload cpufreq");
- $mode = "hadp";
- if (!empty($config['system']['powerd_mode']))
- $mode = $config['system']['powerd_mode'];
- mwexec("/usr/sbin/powerd -b $mode -a $mode");
+
+ $ac_mode = "hadp";
+ if (!empty($config['system']['powerd_ac_mode']))
+ $ac_mode = $config['system']['powerd_ac_mode'];
+
+ $battery_mode = "hadp";
+ if (!empty($config['system']['powerd_battery_mode']))
+ $battery_mode = $config['system']['powerd_battery_mode'];
+
+ mwexec("/usr/sbin/powerd -b $battery_mode -a $ac_mode");
}
}
diff --git a/usr/local/www/system_advanced_misc.php b/usr/local/www/system_advanced_misc.php
index d3243bc574..c9216d4d8c 100644
--- a/usr/local/www/system_advanced_misc.php
+++ b/usr/local/www/system_advanced_misc.php
@@ -69,10 +69,13 @@ $pconfig['thermal_hardware'] = $config['system']['thermal_hardware'];
$pconfig['schedule_states'] = isset($config['system']['schedule_states']);
$pconfig['kill_states'] = isset($config['system']['kill_states']);
-if (!empty($config['system']['powerd_mode']))
- $pconfig['powerd_mode'] = $config['system']['powerd_mode'];
-else
- $pconfig['powerd_mode'] = "hadp";
+$pconfig['powerd_ac_mode'] = "hadp";
+if (!empty($config['system']['powerd_ac_mode']))
+ $pconfig['powerd_ac_mode'] = $config['system']['powerd_ac_mode'];
+
+$pconfig['powerd_battery_mode'] = "hadp";
+if (!empty($config['system']['powerd_battery_mode']))
+ $pconfig['powerd_battery_mode'] = $config['system']['powerd_battery_mode'];
$crypto_modules = array('glxsb' => gettext("AMD Geode LX Security Block"),
'aesni' => gettext("AES-NI CPU-based Acceleration"));
@@ -172,7 +175,8 @@ if ($_POST) {
else
unset($config['system']['powerd_enable']);
- $config['system']['powerd_mode'] = $_POST['powerd_mode'];
+ $config['system']['powerd_ac_mode'] = $_POST['powerd_ac_mode'];
+ $config['system']['powerd_battery_mode'] = $_POST['powerd_battery_mode'];
if($_POST['crypto_hardware'])
$config['system']['crypto_hardware'] = $_POST['crypto_hardware'];
@@ -350,12 +354,20 @@ function maxmss_checked(obj) {
/>
=gettext("Use PowerD"); ?>
- =gettext("Mode"); ?> :
-