Хм, думаю не все так просто. Я полагаю, что это не будет задача по реализации двух функций типа go_to_sleep() и return_from_sleep().
Придется изучить все задачи и драйвера, внедрить в них программные датчики активности или датчики битрейта. Построить программный менеджер всех процессов или драйверов и внедрить в него событийно управляемый планировщик вычислительных ресурсов проца и согласно плану уже регулировать частоту ядра.
Не даром же это называется ПО.
Ставка тыс. на пять баксов тянет.