--- /dev/null
+#!/bin/bash
+
+case "$1" in
+ default)
+ # PPT to 142W
+ printf '%0*x' 48 142000 | fold -w 2 | tac | tr -d '\n' | xxd -r -p | sudo tee /sys/kernel/ryzen_smu_drv/smu_args && \
+ printf '\x53' | sudo tee /sys/kernel/ryzen_smu_drv/rsmu_cmd
+
+ # TDC to 95 A
+ printf '%0*x' 48 95000 | fold -w 2 | tac | tr -d '\n' | xxd -r -p | sudo tee /sys/kernel/ryzen_smu_drv/smu_args && \
+ printf '\x54' | sudo tee /sys/kernel/ryzen_smu_drv/rsmu_cmd
+
+ # EDC to 140 A
+ printf '%0*x' 48 140000 | fold -w 2 | tac | tr -d '\n' | xxd -r -p | sudo tee /sys/kernel/ryzen_smu_drv/smu_args && \
+ printf '\x55' | sudo tee /sys/kernel/ryzen_smu_drv/rsmu_cmd
+ ;;
+ silent)
+ # PPT to 92W
+ printf '%0*x' 48 92000 | fold -w 2 | tac | tr -d '\n' | xxd -r -p | sudo tee /sys/kernel/ryzen_smu_drv/smu_args && \
+ printf '\x53' | sudo tee /sys/kernel/ryzen_smu_drv/rsmu_cmd
+
+ # TDC to 65 A
+ printf '%0*x' 48 65000 | fold -w 2 | tac | tr -d '\n' | xxd -r -p | sudo tee /sys/kernel/ryzen_smu_drv/smu_args && \
+ printf '\x54' | sudo tee /sys/kernel/ryzen_smu_drv/rsmu_cmd
+
+ # EDC to 91 A
+ printf '%0*x' 48 91000 | fold -w 2 | tac | tr -d '\n' | xxd -r -p | sudo tee /sys/kernel/ryzen_smu_drv/smu_args && \
+ printf '\x55' | sudo tee /sys/kernel/ryzen_smu_drv/rsmu_cmd
+ ;;
+ oc)
+ # PPT to 165W
+ printf '%0*x' 48 165000 | fold -w 2 | tac | tr -d '\n' | xxd -r -p | sudo tee /sys/kernel/ryzen_smu_drv/smu_args && \
+ printf '\x53' | sudo tee /sys/kernel/ryzen_smu_drv/rsmu_cmd
+
+ # TDC to ??? A
+ printf '%0*x' 48 105000 | fold -w 2 | tac | tr -d '\n' | xxd -r -p | sudo tee /sys/kernel/ryzen_smu_drv/smu_args && \
+ printf '\x54' | sudo tee /sys/kernel/ryzen_smu_drv/rsmu_cmd
+
+ # EDC to ??? A
+ printf '%0*x' 48 150000 | fold -w 2 | tac | tr -d '\n' | xxd -r -p | sudo tee /sys/kernel/ryzen_smu_drv/smu_args && \
+ printf '\x55' | sudo tee /sys/kernel/ryzen_smu_drv/rsmu_cmd
+ ;;
+ *)
+ echo "Usage: ryzenpwr ( default | silent | oc )"
+esac
+