1) sudo nvme get-feature /dev/nvme0n1 -f 0x10 -H
(0x10 = Host Controlled Thermal Management Feature)
If "NVMe status: Invalid Field in Command: A reserved coded value or an unsupported value in a defined field(0x2)" exit -> Not Supported
Else
2) Allow benchmarking with different temperature set and show bandwidth + temperature differences + battery consumption differences (?):
for setting temperature: sudo nvme set-feature /dev/nvme0n1 -f 0x10 -v 0x<Temp For Begin Throttling In Kelvin Hex, 4 hex numbers><Temp For Hard Throttling In Kelvin Hex, 4 hex numbers> -s (for asking the SSD controller to permanently save, see below)
This parameter might be claimed as salvable (AKA persistent after an SSD shutdown like sleep and power off). My Samsung PM991a does claim that, but it just lie and I need to reset the value after each SSD wakeup. Check for that in software.
Allow to change power profiles depending if on battery or plugged in?
1) sudo nvme get-feature /dev/nvme0n1 -f 0x10 -H
(0x10 = Host Controlled Thermal Management Feature)
If "NVMe status: Invalid Field in Command: A reserved coded value or an unsupported value in a defined field(0x2)" exit -> Not Supported
Else
2) Allow benchmarking with different temperature set and show bandwidth + temperature differences + battery consumption differences (?):
for setting temperature: sudo nvme set-feature /dev/nvme0n1 -f 0x10 -v 0x<Temp For Begin Throttling In Kelvin Hex, 4 hex numbers><Temp For Hard Throttling In Kelvin Hex, 4 hex numbers> -s (for asking the SSD controller to permanently save, see below)
This parameter might be claimed as salvable (AKA persistent after an SSD shutdown like sleep and power off). My Samsung PM991a does claim that, but it just lie and I need to reset the value after each SSD wakeup. Check for that in software.
Allow to change power profiles depending if on battery or plugged in?