Vicki Pfau
ffcd702172
Run clang fmt
2024-07-24 21:18:19 -07:00
Vicki Pfau
3c2dd55f87
power: Add basic tests for CPUScalingGovernor getters
2024-07-24 21:17:48 -07:00
Vicki Pfau
63902f8cc9
Run clang fmt
2024-07-24 20:01:33 -07:00
Vicki Pfau
deb8cf620f
power: Add basic tests for GPUPowerProfile getters
2024-07-24 20:01:02 -07:00
Vicki Pfau
d503712f29
hardware: Add tests for FanControl
2024-07-23 20:50:17 -07:00
Vicki Pfau
f6fce8d84a
systemd: Improve test coverage
2024-07-23 20:20:24 -07:00
Vicki Pfau
6e925e91d9
testing: Add subprocess dbus session interface for test isolation
2024-07-23 20:20:24 -07:00
Vicki Pfau
24223a4827
systemd: Fix warning
2024-07-22 19:46:23 -07:00
Vicki Pfau
a7355ab922
systemd: Move EnableState to using strum
2024-07-22 19:43:56 -07:00
Vicki Pfau
bc9cb4d414
job: Make Job struct private
...
This does not need to be public, and nothing was using it.
2024-07-18 16:06:45 -07:00
Vicki Pfau
603cd7217c
job: Split out from process
...
Rename ProcessManager to JobManager, as that's what it really handles. This
also renames get_command_object_path, which actually spawns a job instead of
just getting something. Further, it moves job spawning into the Job object
instead of being a helper function on ProcessManager.
2024-07-16 20:12:26 -07:00
Vicki Pfau
450541b2bd
Import a few more zbus things to reduce namespace line length
2024-07-16 19:16:20 -07:00
Vicki Pfau
7213ea5179
xml: Fix some formatting, add description for UdevEvents.OverCurrent
2024-07-15 18:52:26 -07:00
Vicki Pfau
af3cb08778
manager: Fix tests hanging ( fixes #2 )
...
I'm not 100% sure why this works, but I expect it has to do with messages being sent to D-Bus before the initial handshake is done.
2024-07-15 18:38:13 -07:00
Vicki Pfau
a6f3b37897
manager: Clean up dbus session at end of tests
2024-07-10 18:14:32 -07:00
Jeremy Whiting
b54cb5638a
Use Strum for GPUPerformanceLevel.
...
Can't use it with GPUPowerProfile because one of the sysfs
strings starts with a '3' digit.
2024-06-28 22:52:41 +00:00
Vicki Pfau
336fe1d3be
Run cargo fmt
2024-06-28 15:51:27 -07:00
Vicki Pfau
5e8b4160d2
power: Combine GPU prefix lookups into simpler helpers
...
Previously we had two diferent lookup functions for finding the GPU in
/sys/class/drm/card* and /sys/class/hwmon/hwmon*, but for the former we only
used paths under it in device/. In both these cases, the device/ directory is a
symbolic link to the same directory, so in the case of one AMD GPU in a
machine, these operations were equivalent.
This MR removes the /sys/class/drm version as well as refactoring some of the
utility code to reduce code duplication.
2024-06-28 15:11:50 -07:00
Jeremy Whiting
93e153079d
Rework the CPUGovernors enum a bit.
...
Change to CPUScalingGovernors and use strum
crate to remove some cruft.
2024-06-28 08:59:11 -06:00
Jeremy Whiting
c75c50762d
Add cpu governor getting and setting to steamosctl.
...
TODO: Need to test this manually but config issues are causing
daemon's to die here currently because of missing paths.
2024-06-28 08:59:11 -06:00
Jeremy Whiting
7f9d25074e
Add CPU Scheduler Governors.
...
Add a new enumeration for cpu scheduler governors.
Adds a property to get the available governors as a map of
value to strings similar to how we expose GPU Power Profiles.
Adds another property to get and set the current governor which
is applied to all cpus when set.
2024-06-28 08:59:08 -06:00
Vicki Pfau
71827ac7ee
xml: Fix documentation errors
2024-06-27 22:46:29 -07:00
Vicki Pfau
4dd23fce8e
proxy: Add missing UdevEvents proxy
2024-06-26 20:55:53 -07:00
Vicki Pfau
1892320db7
daemon: Config structs don't need to be Serialize
2024-06-25 19:30:05 -07:00
Vicki Pfau
b9e23b74e2
manager/root: Add a few more tests
2024-06-21 19:10:51 -07:00
Vicki Pfau
04d4dc74af
Run cargo fmt
2024-06-18 18:44:35 -07:00
Vicki Pfau
0f14facac9
manager/user: Add ReloadConfig method
2024-06-17 21:27:56 -07:00
Vicki Pfau
cd14f50f68
manager/root: Add ReloadConfig method
2024-06-17 21:12:25 -07:00
Vicki Pfau
bf218d248d
daemon/user: Mark some structs pub(crate) as appropriate
2024-06-17 21:12:25 -07:00
Vicki Pfau
0c05b760ed
Actually commit correct file this time...
2024-06-13 14:37:55 -07:00
Vicki Pfau
6285530a4a
Run cargo fmt
2024-06-13 14:34:36 -07:00
Vicki Pfau
2d6da03520
daemon/root: Move ftrace initialization
2024-06-13 13:12:45 -07:00
Vicki Pfau
38d52626e8
daemon: Hold onto and expose connection object
2024-06-13 13:12:45 -07:00
Jeremy Whiting
b51569b657
Improve logging on config loading failures.
...
When we fail to load a config directory we are logging that
it wasn't a directory. With this change also log which directory
we were expecting to load that isn't one so we can fix it...
2024-06-13 08:22:01 -06:00
Vicki Pfau
334faffaa8
daemon: Import EnvFilter so RUST_LOG env var works
2024-06-12 18:10:49 -07:00
Vicki Pfau
a56101c71c
daemon/root: Fix state loading
2024-06-12 18:02:07 -07:00
Vicki Pfau
5b8deecd45
daemon: Mark default state and config with serde(default)
2024-06-12 17:44:40 -07:00
Vicki Pfau
037d418553
daemon/root: Allow DsInhibit to be toggled at runtime
2024-06-12 23:16:09 +00:00
Vicki Pfau
cae5a69e6e
ds_inhibit: Fix license
2024-06-12 16:10:40 -07:00
Vicki Pfau
f5b17330bc
daemon: Move configs from /usr/lib to /usr/share to avoid path conflict with bin
2024-06-12 15:55:12 -07:00
Vicki Pfau
2410334c0b
manager: Simplify test setup
2024-06-10 21:35:03 -07:00
Vicki Pfau
6dc04e70d2
udev: Add udev listener service
...
This service lives in the user daemon and has the path
/com/steampowered/SteamOSManager1/UdevEvents
2024-06-10 20:55:43 -07:00
Vicki Pfau
67736cef01
thread: Add AsyncJoinHandle for waiting on threads asynchronously
2024-06-10 20:50:57 -07:00
Vicki Pfau
2f784f9741
daemon: Add config loading
2024-06-11 03:38:21 +00:00
Vicki Pfau
1a69cce50b
daemon: Allow context-specific commands on the message channel
2024-06-11 03:38:21 +00:00
Vicki Pfau
b582d51c90
daemon: Add message channel for sending commands to the daemon object
2024-06-11 03:38:21 +00:00
Vicki Pfau
c6113ee739
daemon: Start bringing up contexts and state loading/saving
2024-06-11 03:38:21 +00:00
Vicki Pfau
23267c65e0
daemon: Start restructuring config reloading
2024-06-11 03:38:21 +00:00
Jeremy Whiting
f30c54c907
Add gpu power profile(s) property management to steamosctl.
...
Adds get-gpu-power-profiles to list supported profiles
get-gpu-power-profile to list current and
set-gpu-power-profile to set.
2024-06-05 15:38:25 -06:00
Jeremy Whiting
0759ff7077
Add gpu power profile(s) properties.
...
Add profiles property to give back available
profiles on this device.
Add profile property to get and set current gpu
power profile.
Filter possible properties when on deck.
Get current profile based on position of * character.
Get card0 path based on which cardX has vendor 0x1002
Add some basic tests.
TODO:
Possibly cache available properties instead of fetching repeatedly.
2024-06-05 15:36:41 -06:00