For the benefit of anyone else trying to do this, here's what worked, step by step.
I had to create a file called rc-local.service with the following contents:
- Code: Select all
[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local
[Service]
Type=forking
ExecStart=/bin/sh /etc/rc.local
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target
Alias=rc-local.service
Then I created an rc.local file with the following:
- Code: Select all
echo mid > /sys/class/drm/card0/device/power_profile
I set these files to executable in Dolphin, then moved the files to where they belonged by running the following as root:
- Code: Select all
mv rc.local /etc
mv rc-local.service /etc/systemd/system
I changed ownership of the files to root:
- Code: Select all
chown root /etc/rc.local
chown root /etc/systemd/system/rc-local.service
I enabled rc.local compatibility in systemd and started the service:
- Code: Select all
systemctl enable rc-local.service
systemctl start rc-local.service
I received errors for both the systemctl commands, but when I rebooted, my GPU was running at the cooler temperature, and a check of
- Code: Select all
cat /sys/class/drm/card0/device/power_profile
reported the value "mid". Success.
