mirror of
https://gitlab.com/asus-linux/asusctl.git
synced 2026-02-06 00:15:04 +01:00
Checkpoint
This commit is contained in:
@@ -2,8 +2,11 @@
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
## [v6.1.1]
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
- Fix aura data matching
|
- Fix aura data matching
|
||||||
|
- Fix charge control slider
|
||||||
|
|
||||||
## [v6.1.0]
|
## [v6.1.0]
|
||||||
|
|
||||||
|
|||||||
30
Cargo.lock
generated
30
Cargo.lock
generated
@@ -158,7 +158,7 @@ checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "asusctl"
|
name = "asusctl"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"dmi_id",
|
"dmi_id",
|
||||||
"env_logger",
|
"env_logger",
|
||||||
@@ -177,7 +177,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "asusd"
|
name = "asusd"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
"concat-idents",
|
"concat-idents",
|
||||||
@@ -185,6 +185,7 @@ dependencies = [
|
|||||||
"dmi_id",
|
"dmi_id",
|
||||||
"env_logger",
|
"env_logger",
|
||||||
"futures-lite",
|
"futures-lite",
|
||||||
|
"futures-util",
|
||||||
"inotify",
|
"inotify",
|
||||||
"log",
|
"log",
|
||||||
"logind-zbus",
|
"logind-zbus",
|
||||||
@@ -203,7 +204,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "asusd-user"
|
name = "asusd-user"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"config-traits",
|
"config-traits",
|
||||||
"dirs",
|
"dirs",
|
||||||
@@ -940,7 +941,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "config-traits"
|
name = "config-traits"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"log",
|
"log",
|
||||||
"ron",
|
"ron",
|
||||||
@@ -1332,7 +1333,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "dmi_id"
|
name = "dmi_id"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"log",
|
"log",
|
||||||
"udev 0.8.0",
|
"udev 0.8.0",
|
||||||
@@ -4570,7 +4571,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog-control-center"
|
name = "rog-control-center"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"asusd",
|
"asusd",
|
||||||
"concat-idents",
|
"concat-idents",
|
||||||
@@ -4579,6 +4580,7 @@ dependencies = [
|
|||||||
"dirs",
|
"dirs",
|
||||||
"dmi_id",
|
"dmi_id",
|
||||||
"env_logger",
|
"env_logger",
|
||||||
|
"futures-util",
|
||||||
"gumdrop",
|
"gumdrop",
|
||||||
"image",
|
"image",
|
||||||
"ksni",
|
"ksni",
|
||||||
@@ -4600,7 +4602,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_anime"
|
name = "rog_anime"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"dmi_id",
|
"dmi_id",
|
||||||
"gif 0.12.0",
|
"gif 0.12.0",
|
||||||
@@ -4614,7 +4616,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_aura"
|
name = "rog_aura"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"dmi_id",
|
"dmi_id",
|
||||||
"log",
|
"log",
|
||||||
@@ -4625,7 +4627,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_dbus"
|
name = "rog_dbus"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"asusd",
|
"asusd",
|
||||||
"rog_anime",
|
"rog_anime",
|
||||||
@@ -4639,7 +4641,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_platform"
|
name = "rog_platform"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"concat-idents",
|
"concat-idents",
|
||||||
"inotify",
|
"inotify",
|
||||||
@@ -4652,7 +4654,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_profiles"
|
name = "rog_profiles"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"log",
|
"log",
|
||||||
"rog_platform",
|
"rog_platform",
|
||||||
@@ -4663,7 +4665,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_scsi"
|
name = "rog_scsi"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ron",
|
"ron",
|
||||||
"serde",
|
"serde",
|
||||||
@@ -4673,7 +4675,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_simulators"
|
name = "rog_simulators"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"log",
|
"log",
|
||||||
"rog_anime",
|
"rog_anime",
|
||||||
@@ -4683,7 +4685,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_slash"
|
name = "rog_slash"
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"dmi_id",
|
"dmi_id",
|
||||||
"serde",
|
"serde",
|
||||||
|
|||||||
15
Cargo.toml
15
Cargo.toml
@@ -1,5 +1,5 @@
|
|||||||
[workspace.package]
|
[workspace.package]
|
||||||
version = "6.1.0"
|
version = "6.1.1"
|
||||||
rust-version = "1.82"
|
rust-version = "1.82"
|
||||||
license = "MPL-2.0"
|
license = "MPL-2.0"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
@@ -43,7 +43,8 @@ dirs = "^4.0"
|
|||||||
smol = "^2.0"
|
smol = "^2.0"
|
||||||
mio = "0.8.11"
|
mio = "0.8.11"
|
||||||
|
|
||||||
zbus = "5.1"
|
futures-util = "0.3.31"
|
||||||
|
zbus = "5.1.1"
|
||||||
logind-zbus = { version = "5.0.0" } #, default-features = false, features = ["non_blocking"] }
|
logind-zbus = { version = "5.0.0" } #, default-features = false, features = ["non_blocking"] }
|
||||||
|
|
||||||
serde = { version = "^1.0", features = ["serde_derive"] }
|
serde = { version = "^1.0", features = ["serde_derive"] }
|
||||||
@@ -65,26 +66,26 @@ gif = "^0.12.0"
|
|||||||
|
|
||||||
versions = "6.2"
|
versions = "6.2"
|
||||||
|
|
||||||
notify-rust = { version = "4.11.0", features = ["z", "async"] }
|
notify-rust = { version = "4.11.4", features = ["z", "async"] }
|
||||||
|
|
||||||
sg = { git = "https://github.com/flukejones/sg-rs.git" }
|
sg = { git = "https://github.com/flukejones/sg-rs.git" }
|
||||||
|
|
||||||
[profile.release]
|
[profile.release]
|
||||||
# thin = 57s, asusd = 9.0M
|
# thin = 57s, asusd = 9.0M
|
||||||
# fat = 72s, asusd = 6.4M
|
# fat = 72s, asusd = 6.4M
|
||||||
lto = "fat"
|
lto = "thin"
|
||||||
debug = false
|
debug = false
|
||||||
opt-level = 3
|
opt-level = 3
|
||||||
panic = "abort"
|
panic = "abort"
|
||||||
codegen-units = 1
|
# codegen-units = 1
|
||||||
|
|
||||||
[profile.dev]
|
[profile.dev]
|
||||||
opt-level = 1
|
opt-level = 1
|
||||||
codegen-units = 16
|
# codegen-units = 1
|
||||||
|
|
||||||
[profile.dev.package."*"]
|
[profile.dev.package."*"]
|
||||||
opt-level = 1
|
opt-level = 1
|
||||||
codegen-units = 16
|
# codegen-units = 1
|
||||||
|
|
||||||
[profile.bench]
|
[profile.bench]
|
||||||
debug = false
|
debug = false
|
||||||
|
|||||||
@@ -34,6 +34,7 @@ tokio.workspace = true
|
|||||||
log.workspace = true
|
log.workspace = true
|
||||||
env_logger.workspace = true
|
env_logger.workspace = true
|
||||||
|
|
||||||
|
futures-util.workspace = true
|
||||||
zbus.workspace = true
|
zbus.workspace = true
|
||||||
logind-zbus.workspace = true
|
logind-zbus.workspace = true
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
|
|
||||||
use ::zbus::export::futures_util::lock::Mutex;
|
|
||||||
use config_traits::StdConfig;
|
use config_traits::StdConfig;
|
||||||
|
use futures_util::lock::Mutex;
|
||||||
use log::{debug, error, info};
|
use log::{debug, error, info};
|
||||||
use rog_platform::asus_armoury::{AttrValue, Attribute, FirmwareAttribute, FirmwareAttributes};
|
use rog_platform::asus_armoury::{AttrValue, Attribute, FirmwareAttribute, FirmwareAttributes};
|
||||||
use rog_platform::platform::{PlatformProfile, RogPlatform};
|
use rog_platform::platform::{PlatformProfile, RogPlatform};
|
||||||
@@ -66,7 +66,7 @@ impl AsusArmouryAttribute {
|
|||||||
&mut self,
|
&mut self,
|
||||||
signal_ctxt: SignalEmitter<'static>
|
signal_ctxt: SignalEmitter<'static>
|
||||||
) -> Result<(), RogError> {
|
) -> Result<(), RogError> {
|
||||||
use zbus::export::futures_util::StreamExt;
|
use futures_util::StreamExt;
|
||||||
|
|
||||||
let name = self.name();
|
let name = self.name();
|
||||||
macro_rules! watch_value_notify {
|
macro_rules! watch_value_notify {
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ use std::sync::Arc;
|
|||||||
use std::thread::sleep;
|
use std::thread::sleep;
|
||||||
|
|
||||||
use config_traits::StdConfig;
|
use config_traits::StdConfig;
|
||||||
|
use futures_util::lock::Mutex;
|
||||||
use log::{debug, error, info, warn};
|
use log::{debug, error, info, warn};
|
||||||
use rog_anime::usb::{
|
use rog_anime::usb::{
|
||||||
pkt_flush, pkt_set_brightness, pkt_set_enable_display, pkt_set_enable_powersave_anim,
|
pkt_flush, pkt_set_brightness, pkt_set_enable_display, pkt_set_enable_powersave_anim,
|
||||||
@@ -16,7 +17,6 @@ use rog_anime::usb::{
|
|||||||
use rog_anime::{ActionData, AnimeDataBuffer, AnimePacketType};
|
use rog_anime::{ActionData, AnimeDataBuffer, AnimePacketType};
|
||||||
use rog_platform::hid_raw::HidRaw;
|
use rog_platform::hid_raw::HidRaw;
|
||||||
use rog_platform::usb_raw::USBRaw;
|
use rog_platform::usb_raw::USBRaw;
|
||||||
use tokio::sync::Mutex;
|
|
||||||
|
|
||||||
use self::config::{AniMeConfig, AniMeConfigCached};
|
use self::config::{AniMeConfig, AniMeConfigCached};
|
||||||
use crate::error::RogError;
|
use crate::error::RogError;
|
||||||
@@ -51,7 +51,7 @@ impl AniMe {
|
|||||||
|
|
||||||
/// Will fail if something is already holding the config lock
|
/// Will fail if something is already holding the config lock
|
||||||
async fn do_init_cache(&mut self) {
|
async fn do_init_cache(&mut self) {
|
||||||
if let Ok(mut config) = self.config.try_lock() {
|
if let Some(mut config) = self.config.try_lock() {
|
||||||
if let Err(e) = self.cache.init_from_config(&config, config.anime_type) {
|
if let Err(e) = self.cache.init_from_config(&config, config.anime_type) {
|
||||||
error!(
|
error!(
|
||||||
"Trying to cache the Anime Config failed, will reset to default config: {e:?}"
|
"Trying to cache the Anime Config failed, will reset to default config: {e:?}"
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ impl AniMeZbus {
|
|||||||
/// Set base brightness level
|
/// Set base brightness level
|
||||||
#[zbus(property)]
|
#[zbus(property)]
|
||||||
async fn brightness(&self) -> Brightness {
|
async fn brightness(&self) -> Brightness {
|
||||||
if let Ok(config) = self.0.config.try_lock() {
|
if let Some(config) = self.0.config.try_lock() {
|
||||||
return config.display_brightness;
|
return config.display_brightness;
|
||||||
}
|
}
|
||||||
Brightness::Off
|
Brightness::Off
|
||||||
@@ -113,7 +113,7 @@ impl AniMeZbus {
|
|||||||
|
|
||||||
#[zbus(property)]
|
#[zbus(property)]
|
||||||
async fn builtins_enabled(&self) -> bool {
|
async fn builtins_enabled(&self) -> bool {
|
||||||
if let Ok(config) = self.0.config.try_lock() {
|
if let Some(config) = self.0.config.try_lock() {
|
||||||
return config.builtin_anims_enabled;
|
return config.builtin_anims_enabled;
|
||||||
}
|
}
|
||||||
false
|
false
|
||||||
@@ -158,7 +158,7 @@ impl AniMeZbus {
|
|||||||
|
|
||||||
#[zbus(property)]
|
#[zbus(property)]
|
||||||
async fn builtin_animations(&self) -> Animations {
|
async fn builtin_animations(&self) -> Animations {
|
||||||
if let Ok(config) = self.0.config.try_lock() {
|
if let Some(config) = self.0.config.try_lock() {
|
||||||
return config.builtin_anims;
|
return config.builtin_anims;
|
||||||
}
|
}
|
||||||
Animations::default()
|
Animations::default()
|
||||||
@@ -191,7 +191,7 @@ impl AniMeZbus {
|
|||||||
|
|
||||||
#[zbus(property)]
|
#[zbus(property)]
|
||||||
async fn enable_display(&self) -> bool {
|
async fn enable_display(&self) -> bool {
|
||||||
if let Ok(config) = self.0.config.try_lock() {
|
if let Some(config) = self.0.config.try_lock() {
|
||||||
return config.display_enabled;
|
return config.display_enabled;
|
||||||
}
|
}
|
||||||
false
|
false
|
||||||
@@ -214,7 +214,7 @@ impl AniMeZbus {
|
|||||||
|
|
||||||
#[zbus(property)]
|
#[zbus(property)]
|
||||||
async fn off_when_unplugged(&self) -> bool {
|
async fn off_when_unplugged(&self) -> bool {
|
||||||
if let Ok(config) = self.0.config.try_lock() {
|
if let Some(config) = self.0.config.try_lock() {
|
||||||
return config.off_when_unplugged;
|
return config.off_when_unplugged;
|
||||||
}
|
}
|
||||||
false
|
false
|
||||||
@@ -241,7 +241,7 @@ impl AniMeZbus {
|
|||||||
|
|
||||||
#[zbus(property)]
|
#[zbus(property)]
|
||||||
async fn off_when_suspended(&self) -> bool {
|
async fn off_when_suspended(&self) -> bool {
|
||||||
if let Ok(config) = self.0.config.try_lock() {
|
if let Some(config) = self.0.config.try_lock() {
|
||||||
return config.off_when_suspended;
|
return config.off_when_suspended;
|
||||||
}
|
}
|
||||||
false
|
false
|
||||||
@@ -257,7 +257,7 @@ impl AniMeZbus {
|
|||||||
|
|
||||||
#[zbus(property)]
|
#[zbus(property)]
|
||||||
async fn off_when_lid_closed(&self) -> bool {
|
async fn off_when_lid_closed(&self) -> bool {
|
||||||
if let Ok(config) = self.0.config.try_lock() {
|
if let Some(config) = self.0.config.try_lock() {
|
||||||
return config.off_when_lid_closed;
|
return config.off_when_lid_closed;
|
||||||
}
|
}
|
||||||
false
|
false
|
||||||
|
|||||||
@@ -2,13 +2,13 @@ use std::sync::Arc;
|
|||||||
|
|
||||||
use config::AuraConfig;
|
use config::AuraConfig;
|
||||||
use config_traits::StdConfig;
|
use config_traits::StdConfig;
|
||||||
|
use futures_util::lock::{Mutex, MutexGuard};
|
||||||
use log::info;
|
use log::info;
|
||||||
use rog_aura::keyboard::{AuraLaptopUsbPackets, LedUsbPackets};
|
use rog_aura::keyboard::{AuraLaptopUsbPackets, LedUsbPackets};
|
||||||
use rog_aura::usb::{AURA_LAPTOP_LED_APPLY, AURA_LAPTOP_LED_SET};
|
use rog_aura::usb::{AURA_LAPTOP_LED_APPLY, AURA_LAPTOP_LED_SET};
|
||||||
use rog_aura::{AuraDeviceType, AuraEffect, LedBrightness, PowerZones, AURA_LAPTOP_LED_MSG_LEN};
|
use rog_aura::{AuraDeviceType, AuraEffect, LedBrightness, PowerZones, AURA_LAPTOP_LED_MSG_LEN};
|
||||||
use rog_platform::hid_raw::HidRaw;
|
use rog_platform::hid_raw::HidRaw;
|
||||||
use rog_platform::keyboard_led::KeyboardBacklight;
|
use rog_platform::keyboard_led::KeyboardBacklight;
|
||||||
use tokio::sync::{Mutex, MutexGuard};
|
|
||||||
|
|
||||||
use crate::error::RogError;
|
use crate::error::RogError;
|
||||||
|
|
||||||
|
|||||||
@@ -112,7 +112,7 @@ impl AuraZbus {
|
|||||||
// entirely possible to deadlock here, so use try instead of lock()
|
// entirely possible to deadlock here, so use try instead of lock()
|
||||||
// let ctrl = self.0.lock().await;
|
// let ctrl = self.0.lock().await;
|
||||||
// Ok(config.current_mode)
|
// Ok(config.current_mode)
|
||||||
if let Ok(config) = self.0.config.try_lock() {
|
if let Some(config) = self.0.config.try_lock() {
|
||||||
Ok(config.current_mode)
|
Ok(config.current_mode)
|
||||||
} else {
|
} else {
|
||||||
Err(ZbErr::Failed("Aura control couldn't lock self".to_string()))
|
Err(ZbErr::Failed("Aura control couldn't lock self".to_string()))
|
||||||
@@ -140,7 +140,7 @@ impl AuraZbus {
|
|||||||
#[zbus(property)]
|
#[zbus(property)]
|
||||||
async fn led_mode_data(&self) -> Result<AuraEffect, ZbErr> {
|
async fn led_mode_data(&self) -> Result<AuraEffect, ZbErr> {
|
||||||
// entirely possible to deadlock here, so use try instead of lock()
|
// entirely possible to deadlock here, so use try instead of lock()
|
||||||
if let Ok(config) = self.0.config.try_lock() {
|
if let Some(config) = self.0.config.try_lock() {
|
||||||
let mode = config.current_mode;
|
let mode = config.current_mode;
|
||||||
match config.builtins.get(&mode) {
|
match config.builtins.get(&mode) {
|
||||||
Some(effect) => Ok(effect.clone()),
|
Some(effect) => Ok(effect.clone()),
|
||||||
|
|||||||
@@ -8,11 +8,11 @@ use std::sync::Arc;
|
|||||||
|
|
||||||
use dmi_id::DMIID;
|
use dmi_id::DMIID;
|
||||||
use futures_lite::future::block_on;
|
use futures_lite::future::block_on;
|
||||||
|
use futures_util::lock::Mutex;
|
||||||
use log::{debug, error, info, warn};
|
use log::{debug, error, info, warn};
|
||||||
use mio::{Events, Interest, Poll, Token};
|
use mio::{Events, Interest, Poll, Token};
|
||||||
use rog_platform::error::PlatformError;
|
use rog_platform::error::PlatformError;
|
||||||
use rog_platform::hid_raw::HidRaw;
|
use rog_platform::hid_raw::HidRaw;
|
||||||
use tokio::sync::Mutex;
|
|
||||||
use udev::{Device, MonitorBuilder};
|
use udev::{Device, MonitorBuilder};
|
||||||
use zbus::zvariant::{ObjectPath, OwnedObjectPath};
|
use zbus::zvariant::{ObjectPath, OwnedObjectPath};
|
||||||
use zbus::Connection;
|
use zbus::Connection;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
|
|
||||||
use config::ScsiConfig;
|
use config::ScsiConfig;
|
||||||
|
use futures_util::lock::{Mutex, MutexGuard};
|
||||||
use rog_scsi::{AuraEffect, Device, Task};
|
use rog_scsi::{AuraEffect, Device, Task};
|
||||||
use tokio::sync::{Mutex, MutexGuard};
|
|
||||||
|
|
||||||
use crate::error::RogError;
|
use crate::error::RogError;
|
||||||
|
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ impl ScsiZbus {
|
|||||||
#[zbus(property)]
|
#[zbus(property)]
|
||||||
async fn led_mode_data(&self) -> Result<AuraEffect, ZbErr> {
|
async fn led_mode_data(&self) -> Result<AuraEffect, ZbErr> {
|
||||||
// entirely possible to deadlock here, so use try instead of lock()
|
// entirely possible to deadlock here, so use try instead of lock()
|
||||||
if let Ok(config) = self.0.config.try_lock() {
|
if let Some(config) = self.0.config.try_lock() {
|
||||||
let mode = config.current_mode;
|
let mode = config.current_mode;
|
||||||
match config.modes.get(&mode) {
|
match config.modes.get(&mode) {
|
||||||
Some(effect) => Ok(effect.clone()),
|
Some(effect) => Ok(effect.clone()),
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
|
|
||||||
use config::SlashConfig;
|
use config::SlashConfig;
|
||||||
|
use futures_util::lock::{Mutex, MutexGuard};
|
||||||
use rog_platform::hid_raw::HidRaw;
|
use rog_platform::hid_raw::HidRaw;
|
||||||
use rog_platform::usb_raw::USBRaw;
|
use rog_platform::usb_raw::USBRaw;
|
||||||
use rog_slash::usb::{get_options_packet, pkt_set_mode, pkts_for_init};
|
use rog_slash::usb::{get_options_packet, pkt_set_mode, pkts_for_init};
|
||||||
use rog_slash::SlashType;
|
use rog_slash::SlashType;
|
||||||
use tokio::sync::{Mutex, MutexGuard};
|
|
||||||
|
|
||||||
use crate::error::RogError;
|
use crate::error::RogError;
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
|
|
||||||
use config_traits::{StdConfig, StdConfigLoad};
|
use config_traits::{StdConfig, StdConfigLoad};
|
||||||
|
use futures_util::lock::Mutex;
|
||||||
use log::{debug, error, info};
|
use log::{debug, error, info};
|
||||||
use rog_anime::error::AnimeError;
|
use rog_anime::error::AnimeError;
|
||||||
use rog_anime::usb::get_anime_type;
|
use rog_anime::usb::get_anime_type;
|
||||||
@@ -12,7 +13,6 @@ use rog_platform::usb_raw::USBRaw;
|
|||||||
use rog_scsi::{open_device, ScsiType};
|
use rog_scsi::{open_device, ScsiType};
|
||||||
use rog_slash::error::SlashError;
|
use rog_slash::error::SlashError;
|
||||||
use rog_slash::SlashType;
|
use rog_slash::SlashType;
|
||||||
use tokio::sync::Mutex;
|
|
||||||
|
|
||||||
use crate::aura_anime::config::AniMeConfig;
|
use crate::aura_anime::config::AniMeConfig;
|
||||||
use crate::aura_anime::AniMe;
|
use crate::aura_anime::AniMe;
|
||||||
|
|||||||
@@ -3,13 +3,13 @@ use std::sync::Arc;
|
|||||||
|
|
||||||
use config_traits::{StdConfig, StdConfigLoad};
|
use config_traits::{StdConfig, StdConfigLoad};
|
||||||
use futures_lite::StreamExt;
|
use futures_lite::StreamExt;
|
||||||
|
use futures_util::lock::Mutex;
|
||||||
use log::{debug, error, info, warn};
|
use log::{debug, error, info, warn};
|
||||||
use rog_platform::platform::{PlatformProfile, RogPlatform};
|
use rog_platform::platform::{PlatformProfile, RogPlatform};
|
||||||
use rog_profiles::error::ProfileError;
|
use rog_profiles::error::ProfileError;
|
||||||
use rog_profiles::fan_curve_set::CurveData;
|
use rog_profiles::fan_curve_set::CurveData;
|
||||||
use rog_profiles::{find_fan_curve_node, FanCurvePU, FanCurveProfiles};
|
use rog_profiles::{find_fan_curve_node, FanCurvePU, FanCurveProfiles};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use tokio::sync::Mutex;
|
|
||||||
use zbus::object_server::SignalEmitter;
|
use zbus::object_server::SignalEmitter;
|
||||||
use zbus::{interface, Connection};
|
use zbus::{interface, Connection};
|
||||||
|
|
||||||
|
|||||||
@@ -3,12 +3,12 @@ use std::process::Command;
|
|||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
|
|
||||||
use config_traits::StdConfig;
|
use config_traits::StdConfig;
|
||||||
|
use futures_util::lock::Mutex;
|
||||||
use log::{debug, error, info, warn};
|
use log::{debug, error, info, warn};
|
||||||
use rog_platform::asus_armoury::{AttrValue, FirmwareAttribute, FirmwareAttributes};
|
use rog_platform::asus_armoury::{AttrValue, FirmwareAttribute, FirmwareAttributes};
|
||||||
use rog_platform::cpu::{CPUControl, CPUGovernor, CPUEPP};
|
use rog_platform::cpu::{CPUControl, CPUGovernor, CPUEPP};
|
||||||
use rog_platform::platform::{PlatformProfile, Properties, RogPlatform};
|
use rog_platform::platform::{PlatformProfile, Properties, RogPlatform};
|
||||||
use rog_platform::power::AsusPower;
|
use rog_platform::power::AsusPower;
|
||||||
use zbus::export::futures_util::lock::Mutex;
|
|
||||||
use zbus::fdo::Error as FdoErr;
|
use zbus::fdo::Error as FdoErr;
|
||||||
use zbus::object_server::SignalEmitter;
|
use zbus::object_server::SignalEmitter;
|
||||||
use zbus::{interface, Connection};
|
use zbus::{interface, Connection};
|
||||||
@@ -72,7 +72,7 @@ impl CtrlPlatform {
|
|||||||
let mut inotify_self = ret_self.clone();
|
let mut inotify_self = ret_self.clone();
|
||||||
|
|
||||||
tokio::spawn(async move {
|
tokio::spawn(async move {
|
||||||
use zbus::export::futures_util::StreamExt;
|
use futures_util::StreamExt;
|
||||||
info!("Starting inotify watch for asusd config file");
|
info!("Starting inotify watch for asusd config file");
|
||||||
|
|
||||||
let mut buffer = [0; 32];
|
let mut buffer = [0; 32];
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ use std::env;
|
|||||||
use std::error::Error;
|
use std::error::Error;
|
||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
|
|
||||||
use ::zbus::export::futures_util::lock::Mutex;
|
|
||||||
use ::zbus::Connection;
|
use ::zbus::Connection;
|
||||||
use asusd::asus_armoury::start_attributes_zbus;
|
use asusd::asus_armoury::start_attributes_zbus;
|
||||||
use asusd::aura_manager::DeviceManager;
|
use asusd::aura_manager::DeviceManager;
|
||||||
@@ -11,6 +10,7 @@ use asusd::ctrl_fancurves::CtrlFanCurveZbus;
|
|||||||
use asusd::ctrl_platform::CtrlPlatform;
|
use asusd::ctrl_platform::CtrlPlatform;
|
||||||
use asusd::{print_board_info, start_tasks, CtrlTask, DBUS_NAME};
|
use asusd::{print_board_info, start_tasks, CtrlTask, DBUS_NAME};
|
||||||
use config_traits::{StdConfig, StdConfigLoad1};
|
use config_traits::{StdConfig, StdConfigLoad1};
|
||||||
|
use futures_util::lock::Mutex;
|
||||||
use log::{error, info};
|
use log::{error, info};
|
||||||
use rog_platform::asus_armoury::FirmwareAttributes;
|
use rog_platform::asus_armoury::FirmwareAttributes;
|
||||||
use rog_platform::platform::RogPlatform;
|
use rog_platform::platform::RogPlatform;
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ macro_rules! task_watch_item {
|
|||||||
&self,
|
&self,
|
||||||
signal_ctxt: SignalEmitter<'static>,
|
signal_ctxt: SignalEmitter<'static>,
|
||||||
) -> Result<(), RogError> {
|
) -> Result<(), RogError> {
|
||||||
use zbus::export::futures_util::StreamExt;
|
use futures_util::StreamExt;
|
||||||
|
|
||||||
let ctrl = self.clone();
|
let ctrl = self.clone();
|
||||||
concat_idents::concat_idents!(watch_fn = monitor_, $name {
|
concat_idents::concat_idents!(watch_fn = monitor_, $name {
|
||||||
|
|||||||
@@ -41,6 +41,7 @@ zbus.workspace = true
|
|||||||
dirs.workspace = true
|
dirs.workspace = true
|
||||||
notify-rust.workspace = true
|
notify-rust.workspace = true
|
||||||
concat-idents.workspace = true
|
concat-idents.workspace = true
|
||||||
|
futures-util.workspace = true
|
||||||
|
|
||||||
versions.workspace = true
|
versions.workspace = true
|
||||||
|
|
||||||
|
|||||||
@@ -40,6 +40,9 @@ pub fn setup_system_page(ui: &MainWindow, _config: Arc<Mutex<Config>>) {
|
|||||||
ui.global::<SystemPageData>().set_ppt_platform_sppt(MINMAX);
|
ui.global::<SystemPageData>().set_ppt_platform_sppt(MINMAX);
|
||||||
ui.global::<SystemPageData>().set_nv_dynamic_boost(MINMAX);
|
ui.global::<SystemPageData>().set_nv_dynamic_boost(MINMAX);
|
||||||
ui.global::<SystemPageData>().set_nv_temp_target(MINMAX);
|
ui.global::<SystemPageData>().set_nv_temp_target(MINMAX);
|
||||||
|
ui.global::<SystemPageData>().set_ppt_enabled(false);
|
||||||
|
ui.global::<SystemPageData>()
|
||||||
|
.set_ppt_enabled_available(false);
|
||||||
|
|
||||||
let sys_props = platform.supported_properties().unwrap();
|
let sys_props = platform.supported_properties().unwrap();
|
||||||
log::debug!("Available system properties: {sys_props:?}");
|
log::debug!("Available system properties: {sys_props:?}");
|
||||||
@@ -156,7 +159,7 @@ macro_rules! setup_external {
|
|||||||
concat_idents!(setter = set_, $property {
|
concat_idents!(setter = set_, $property {
|
||||||
tokio::spawn(async move {
|
tokio::spawn(async move {
|
||||||
let mut x = proxy_copy.receive_current_value_changed().await;
|
let mut x = proxy_copy.receive_current_value_changed().await;
|
||||||
use zbus::export::futures_util::StreamExt;
|
use futures_util::StreamExt;
|
||||||
while let Some(e) = x.next().await {
|
while let Some(e) = x.next().await {
|
||||||
if let Ok(out) = e.get().await {
|
if let Ok(out) = e.get().await {
|
||||||
handle_copy
|
handle_copy
|
||||||
@@ -182,7 +185,7 @@ macro_rules! setup_value_watch {
|
|||||||
let mut x = concat_idents!(recv = receive_, $value_type, _value_changed {
|
let mut x = concat_idents!(recv = receive_, $value_type, _value_changed {
|
||||||
proxy_copy.recv().await
|
proxy_copy.recv().await
|
||||||
});
|
});
|
||||||
use zbus::export::futures_util::StreamExt;
|
use futures_util::StreamExt;
|
||||||
while let Some(e) = x.next().await {
|
while let Some(e) = x.next().await {
|
||||||
if let Ok(out) = e.get().await {
|
if let Ok(out) = e.get().await {
|
||||||
concat_idents!(getter = get_, $property {
|
concat_idents!(getter = get_, $property {
|
||||||
@@ -214,7 +217,7 @@ macro_rules! setup_minmax_external {
|
|||||||
let platform_proxy_copy = $platform.clone();
|
let platform_proxy_copy = $platform.clone();
|
||||||
tokio::spawn(async move {
|
tokio::spawn(async move {
|
||||||
let mut x = platform_proxy_copy.receive_platform_profile_changed().await;
|
let mut x = platform_proxy_copy.receive_platform_profile_changed().await;
|
||||||
use zbus::export::futures_util::StreamExt;
|
use futures_util::StreamExt;
|
||||||
while let Some(e) = x.next().await {
|
while let Some(e) = x.next().await {
|
||||||
if let Ok(_) = e.get().await {
|
if let Ok(_) = e.get().await {
|
||||||
debug!("receive_platform_profile_changed, getting new {}", stringify!(attr));
|
debug!("receive_platform_profile_changed, getting new {}", stringify!(attr));
|
||||||
@@ -400,6 +403,14 @@ pub fn setup_system_page_callbacks(ui: &MainWindow, _states: Arc<Mutex<Config>>)
|
|||||||
FirmwareAttribute::ApuMem => {}
|
FirmwareAttribute::ApuMem => {}
|
||||||
FirmwareAttribute::CoresPerformance => {}
|
FirmwareAttribute::CoresPerformance => {}
|
||||||
FirmwareAttribute::CoresEfficiency => {}
|
FirmwareAttribute::CoresEfficiency => {}
|
||||||
|
FirmwareAttribute::PptEnabled => {
|
||||||
|
init_property!(ppt_enabled, handle, value, bool);
|
||||||
|
setup_callback!(ppt_enabled, handle, attr, bool);
|
||||||
|
setup_external!(ppt_enabled, bool, handle, attr, value);
|
||||||
|
handle
|
||||||
|
.global::<SystemPageData>()
|
||||||
|
.set_ppt_enabled_available(true);
|
||||||
|
}
|
||||||
FirmwareAttribute::PptPl1Spl => {
|
FirmwareAttribute::PptPl1Spl => {
|
||||||
init_minmax_property!(ppt_pl1_spl, handle, attr);
|
init_minmax_property!(ppt_pl1_spl, handle, attr);
|
||||||
setup_callback!(ppt_pl1_spl, handle, attr, i32);
|
setup_callback!(ppt_pl1_spl, handle, attr, i32);
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"POT-Creation-Date: 2025-02-06 20:42+0000\n"
|
"POT-Creation-Date: 2025-02-08 10:05+0000\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@@ -47,203 +47,203 @@ msgctxt "SystemPageData"
|
|||||||
msgid "Power"
|
msgid "Power"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:142
|
#: rog-control-center/ui/pages/system.slint:146
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Power settings"
|
msgid "Power settings"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:147
|
#: rog-control-center/ui/pages/system.slint:151
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Charge limit"
|
msgid "Charge limit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:161
|
#: rog-control-center/ui/pages/system.slint:165
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Platform Profile"
|
msgid "Platform Profile"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:171
|
#: rog-control-center/ui/pages/system.slint:175
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Advanced"
|
msgid "Advanced"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:189
|
#: rog-control-center/ui/pages/system.slint:193
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Armoury settings"
|
msgid "Armoury settings"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:199
|
#: rog-control-center/ui/pages/system.slint:203
|
||||||
msgctxt "no_asus_armoury_driver_1"
|
msgctxt "no_asus_armoury_driver_1"
|
||||||
msgid "The asus-armoury driver is not loaded"
|
msgid "The asus-armoury driver is not loaded"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:205
|
#: rog-control-center/ui/pages/system.slint:209
|
||||||
msgctxt "no_asus_armoury_driver_2"
|
msgctxt "no_asus_armoury_driver_2"
|
||||||
msgid "For advanced features you will require a kernel with this driver added."
|
msgid "For advanced features you will require a kernel with this driver added."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:216
|
#: rog-control-center/ui/pages/system.slint:220
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Panel Overdrive"
|
msgid "Panel Overdrive"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:224
|
#: rog-control-center/ui/pages/system.slint:228
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "MiniLED Mode"
|
msgid "MiniLED Mode"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:232
|
#: rog-control-center/ui/pages/system.slint:236
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "POST boot sound"
|
msgid "POST boot sound"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:248
|
#: rog-control-center/ui/pages/system.slint:252
|
||||||
msgctxt "ppt_warning"
|
msgctxt "ppt_warning"
|
||||||
msgid "The following settings are not applied until the toggle is enabled."
|
msgid "The following settings are not applied until the toggle is enabled."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:253
|
#: rog-control-center/ui/pages/system.slint:257 rog-control-center/ui/pages/system.slint:264
|
||||||
msgctxt "ppt_group_enabled"
|
msgctxt "ppt_group_enabled"
|
||||||
msgid "Enable Tuning"
|
msgid "Enable Tuning"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:262 rog-control-center/ui/pages/system.slint:263
|
#: rog-control-center/ui/pages/system.slint:275 rog-control-center/ui/pages/system.slint:276
|
||||||
msgctxt "ppt_pl1_spl"
|
msgctxt "ppt_pl1_spl"
|
||||||
msgid "CPU Sustained Power Limit"
|
msgid "CPU Sustained Power Limit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:264
|
#: rog-control-center/ui/pages/system.slint:277
|
||||||
msgctxt "ppt_pl1_spl_help"
|
msgctxt "ppt_pl1_spl_help"
|
||||||
msgid ""
|
msgid ""
|
||||||
"Long-term CPU power limit that affects sustained workload performance. "
|
"Long-term CPU power limit that affects sustained workload performance. "
|
||||||
"Higher values may increase heat and power consumption."
|
"Higher values may increase heat and power consumption."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:280 rog-control-center/ui/pages/system.slint:281
|
#: rog-control-center/ui/pages/system.slint:293 rog-control-center/ui/pages/system.slint:294
|
||||||
msgctxt "ppt_pl2_sppt"
|
msgctxt "ppt_pl2_sppt"
|
||||||
msgid "CPU Turbo Power Limit"
|
msgid "CPU Turbo Power Limit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:282
|
#: rog-control-center/ui/pages/system.slint:295
|
||||||
msgctxt "ppt_pl2_sppt_help"
|
msgctxt "ppt_pl2_sppt_help"
|
||||||
msgid ""
|
msgid ""
|
||||||
"Short-term CPU power limit for boost periods. Controls maximum power during "
|
"Short-term CPU power limit for boost periods. Controls maximum power during "
|
||||||
"brief high-performance bursts."
|
"brief high-performance bursts."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:298 rog-control-center/ui/pages/system.slint:299
|
#: rog-control-center/ui/pages/system.slint:311 rog-control-center/ui/pages/system.slint:312
|
||||||
msgctxt "ppt_pl3_fppt"
|
msgctxt "ppt_pl3_fppt"
|
||||||
msgid "CPU Fast Burst Power Limit"
|
msgid "CPU Fast Burst Power Limit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:300
|
#: rog-control-center/ui/pages/system.slint:313
|
||||||
msgctxt "ppt_pl3_fppt_help"
|
msgctxt "ppt_pl3_fppt_help"
|
||||||
msgid ""
|
msgid ""
|
||||||
"Ultra-short duration power limit for instantaneous CPU bursts. Affects "
|
"Ultra-short duration power limit for instantaneous CPU bursts. Affects "
|
||||||
"responsiveness during sudden workload spikes."
|
"responsiveness during sudden workload spikes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:315 rog-control-center/ui/pages/system.slint:316
|
#: rog-control-center/ui/pages/system.slint:328 rog-control-center/ui/pages/system.slint:329
|
||||||
msgctxt "ppt_fppt"
|
msgctxt "ppt_fppt"
|
||||||
msgid "Fast Package Power Limit"
|
msgid "Fast Package Power Limit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:317
|
#: rog-control-center/ui/pages/system.slint:330
|
||||||
msgctxt "ppt_fppt_help"
|
msgctxt "ppt_fppt_help"
|
||||||
msgid ""
|
msgid ""
|
||||||
"Ultra-short duration power limit for system package. Controls maximum power "
|
"Ultra-short duration power limit for system package. Controls maximum power "
|
||||||
"during millisecond-scale load spikes."
|
"during millisecond-scale load spikes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:333 rog-control-center/ui/pages/system.slint:334
|
#: rog-control-center/ui/pages/system.slint:346 rog-control-center/ui/pages/system.slint:347
|
||||||
msgctxt "ppt_apu_sppt"
|
msgctxt "ppt_apu_sppt"
|
||||||
msgid "APU Sustained Power Limit"
|
msgid "APU Sustained Power Limit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:335
|
#: rog-control-center/ui/pages/system.slint:348
|
||||||
msgctxt "ppt_apu_sppt_help"
|
msgctxt "ppt_apu_sppt_help"
|
||||||
msgid ""
|
msgid ""
|
||||||
"Long-term power limit for integrated graphics and CPU combined. Affects "
|
"Long-term power limit for integrated graphics and CPU combined. Affects "
|
||||||
"sustained performance of APU-based workloads."
|
"sustained performance of APU-based workloads."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:351 rog-control-center/ui/pages/system.slint:352
|
#: rog-control-center/ui/pages/system.slint:364 rog-control-center/ui/pages/system.slint:365
|
||||||
msgctxt "ppt_platform_sppt"
|
msgctxt "ppt_platform_sppt"
|
||||||
msgid "Platform Sustained Power Limit"
|
msgid "Platform Sustained Power Limit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:353
|
#: rog-control-center/ui/pages/system.slint:366
|
||||||
msgctxt "ppt_platform_sppt_help"
|
msgctxt "ppt_platform_sppt_help"
|
||||||
msgid ""
|
msgid ""
|
||||||
"Overall system power limit for sustained operations. Controls total platform "
|
"Overall system power limit for sustained operations. Controls total platform "
|
||||||
"power consumption over extended periods."
|
"power consumption over extended periods."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:369 rog-control-center/ui/pages/system.slint:370
|
#: rog-control-center/ui/pages/system.slint:382 rog-control-center/ui/pages/system.slint:383
|
||||||
msgctxt "nv_dynamic_boost"
|
msgctxt "nv_dynamic_boost"
|
||||||
msgid "GPU Power Boost"
|
msgid "GPU Power Boost"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:371
|
#: rog-control-center/ui/pages/system.slint:384
|
||||||
msgctxt "nv_dynamic_boost_help"
|
msgctxt "nv_dynamic_boost_help"
|
||||||
msgid ""
|
msgid ""
|
||||||
"Additional power allocation for GPU dynamic boost. Higher values increase "
|
"Additional power allocation for GPU dynamic boost. Higher values increase "
|
||||||
"GPU performance but generate more heat."
|
"GPU performance but generate more heat."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:387 rog-control-center/ui/pages/system.slint:388
|
#: rog-control-center/ui/pages/system.slint:400 rog-control-center/ui/pages/system.slint:401
|
||||||
msgctxt "nv_temp_target"
|
msgctxt "nv_temp_target"
|
||||||
msgid "GPU Temperature Limit"
|
msgid "GPU Temperature Limit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:389
|
#: rog-control-center/ui/pages/system.slint:402
|
||||||
msgctxt "nv_temp_target_help"
|
msgctxt "nv_temp_target_help"
|
||||||
msgid ""
|
msgid ""
|
||||||
"Maximum GPU temperature threshold in Celsius. GPU will throttle to maintain "
|
"Maximum GPU temperature threshold in Celsius. GPU will throttle to maintain "
|
||||||
"temperature below this limit."
|
"temperature below this limit."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:441
|
#: rog-control-center/ui/pages/system.slint:454
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Energy Performance Preference linked to Throttle Policy"
|
msgid "Energy Performance Preference linked to Throttle Policy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:445
|
#: rog-control-center/ui/pages/system.slint:458
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Change EPP based on Throttle Policy"
|
msgid "Change EPP based on Throttle Policy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:453
|
#: rog-control-center/ui/pages/system.slint:466
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "EPP for Balanced Policy"
|
msgid "EPP for Balanced Policy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:463
|
#: rog-control-center/ui/pages/system.slint:476
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "EPP for Performance Policy"
|
msgid "EPP for Performance Policy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:473
|
#: rog-control-center/ui/pages/system.slint:486
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "EPP for Quiet Policy"
|
msgid "EPP for Quiet Policy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:491
|
#: rog-control-center/ui/pages/system.slint:504
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Throttle Policy for power state"
|
msgid "Throttle Policy for power state"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:497
|
#: rog-control-center/ui/pages/system.slint:510
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Throttle Policy on Battery"
|
msgid "Throttle Policy on Battery"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:507 rog-control-center/ui/pages/system.slint:528
|
#: rog-control-center/ui/pages/system.slint:520 rog-control-center/ui/pages/system.slint:541
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:518
|
#: rog-control-center/ui/pages/system.slint:531
|
||||||
msgctxt "PageSystem"
|
msgctxt "PageSystem"
|
||||||
msgid "Throttle Policy on AC"
|
msgid "Throttle Policy on AC"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
@@ -115,8 +115,12 @@ export global SystemPageData {
|
|||||||
callback cb_nv_temp_target(int);
|
callback cb_nv_temp_target(int);
|
||||||
callback cb_default_nv_temp_target();
|
callback cb_default_nv_temp_target();
|
||||||
|
|
||||||
in-out property <bool> enable_ppt_group;
|
in-out property <bool> enable_ppt_group: false;
|
||||||
callback cb_enable_ppt_group(bool);
|
callback cb_enable_ppt_group(bool);
|
||||||
|
|
||||||
|
in-out property <bool> ppt_enabled_available;
|
||||||
|
in-out property <bool> ppt_enabled;
|
||||||
|
callback cb_ppt_enabled(bool);
|
||||||
}
|
}
|
||||||
|
|
||||||
export component PageSystem inherits Rectangle {
|
export component PageSystem inherits Rectangle {
|
||||||
@@ -249,13 +253,22 @@ export component PageSystem inherits Rectangle {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Switch {
|
if !SystemPageData.ppt_enabled_available: Switch {
|
||||||
text: @tr("ppt_group_enabled" => "Enable Tuning");
|
text: @tr("ppt_group_enabled" => "Enable Tuning");
|
||||||
checked <=> SystemPageData.enable_ppt_group;
|
checked <=> SystemPageData.enable_ppt_group;
|
||||||
toggled => {
|
toggled => {
|
||||||
SystemPageData.cb_enable_ppt_group(SystemPageData.enable_ppt_group)
|
SystemPageData.cb_enable_ppt_group(SystemPageData.enable_ppt_group)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if SystemPageData.ppt_enabled_available: Switch {
|
||||||
|
text: @tr("ppt_group_enabled" => "Enable Tuning");
|
||||||
|
checked <=> SystemPageData.ppt_enabled;
|
||||||
|
toggled => {
|
||||||
|
SystemPageData.enable_ppt_group = self.checked;
|
||||||
|
SystemPageData.cb_ppt_enabled(SystemPageData.ppt_enabled)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if SystemPageData.ppt_pl1_spl.current != -1: SystemSlider {
|
if SystemPageData.ppt_pl1_spl.current != -1: SystemSlider {
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ export component RogItem inherits Rectangle {
|
|||||||
export component SystemSlider inherits RogItem {
|
export component SystemSlider inherits RogItem {
|
||||||
in property <string> title;
|
in property <string> title;
|
||||||
in property <string> text;
|
in property <string> text;
|
||||||
in-out property <bool> enabled;
|
in-out property <bool> enabled: true;
|
||||||
in-out property <float> value;
|
in-out property <float> value;
|
||||||
in-out property <float> minimum;
|
in-out property <float> minimum;
|
||||||
in-out property <float> maximum;
|
in-out property <float> maximum;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ use std::fs::{read_dir, File, OpenOptions};
|
|||||||
use std::io::{Read, Write};
|
use std::io::{Read, Write};
|
||||||
use std::path::{Path, PathBuf};
|
use std::path::{Path, PathBuf};
|
||||||
|
|
||||||
use log::debug;
|
use log::{debug, error};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use zbus::zvariant::{OwnedValue, Type, Value};
|
use zbus::zvariant::{OwnedValue, Type, Value};
|
||||||
|
|
||||||
@@ -304,7 +304,8 @@ pub enum FirmwareAttribute {
|
|||||||
GpuMuxMode = 21,
|
GpuMuxMode = 21,
|
||||||
MiniLedMode = 22,
|
MiniLedMode = 22,
|
||||||
PendingReboot = 23,
|
PendingReboot = 23,
|
||||||
None = 24
|
PptEnabled = 24,
|
||||||
|
None = 25
|
||||||
}
|
}
|
||||||
|
|
||||||
impl FirmwareAttribute {
|
impl FirmwareAttribute {
|
||||||
@@ -336,6 +337,7 @@ impl From<&str> for FirmwareAttribute {
|
|||||||
"apu_mem" => Self::ApuMem,
|
"apu_mem" => Self::ApuMem,
|
||||||
"cores_performance" => Self::CoresPerformance,
|
"cores_performance" => Self::CoresPerformance,
|
||||||
"cores_efficiency" => Self::CoresEfficiency,
|
"cores_efficiency" => Self::CoresEfficiency,
|
||||||
|
"ppt_enabled" => Self::PptEnabled,
|
||||||
"ppt_pl1_spl" => Self::PptPl1Spl,
|
"ppt_pl1_spl" => Self::PptPl1Spl,
|
||||||
"ppt_pl2_sppt" => Self::PptPl2Sppt,
|
"ppt_pl2_sppt" => Self::PptPl2Sppt,
|
||||||
"ppt_pl3_fppt" => Self::PptPl3Fppt,
|
"ppt_pl3_fppt" => Self::PptPl3Fppt,
|
||||||
@@ -357,7 +359,10 @@ impl From<&str> for FirmwareAttribute {
|
|||||||
"gpu_mux_mode" => Self::GpuMuxMode,
|
"gpu_mux_mode" => Self::GpuMuxMode,
|
||||||
"mini_led_mode" => Self::MiniLedMode,
|
"mini_led_mode" => Self::MiniLedMode,
|
||||||
"pending_reboot" => Self::PendingReboot,
|
"pending_reboot" => Self::PendingReboot,
|
||||||
_ => panic!("Invalid firmware attribute: {}", s)
|
_ => {
|
||||||
|
error!("Invalid firmware attribute: {}", s);
|
||||||
|
Self::None
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -368,6 +373,7 @@ impl From<FirmwareAttribute> for &str {
|
|||||||
FirmwareAttribute::ApuMem => "apu_mem",
|
FirmwareAttribute::ApuMem => "apu_mem",
|
||||||
FirmwareAttribute::CoresPerformance => "cores_performance",
|
FirmwareAttribute::CoresPerformance => "cores_performance",
|
||||||
FirmwareAttribute::CoresEfficiency => "cores_efficiency",
|
FirmwareAttribute::CoresEfficiency => "cores_efficiency",
|
||||||
|
FirmwareAttribute::PptEnabled => "ppt_enabled",
|
||||||
FirmwareAttribute::PptPl1Spl => "ppt_pl1_spl",
|
FirmwareAttribute::PptPl1Spl => "ppt_pl1_spl",
|
||||||
FirmwareAttribute::PptPl2Sppt => "ppt_pl2_sppt",
|
FirmwareAttribute::PptPl2Sppt => "ppt_pl2_sppt",
|
||||||
FirmwareAttribute::PptPl3Fppt => "ppt_pl3_fppt",
|
FirmwareAttribute::PptPl3Fppt => "ppt_pl3_fppt",
|
||||||
|
|||||||
Reference in New Issue
Block a user