Jump to content

ASRock HDD Saver


sunrise
 Share

Recommended Posts

Płyty główne ASRock Z97 exterme4 i extreme6 (oraz inne wspierające tą technologię) umożliwiają wyłączanie i włączanie zasilania dysków lub urządzeń za pomocą specjalnego przewodu.

Dla systemu Windows producent dostarcza program a dla Linuksa oczywiście go brak. Ponieważ posiadam taką płytę (Z97 extreme4) postanowiłem napisać łatkę do modułu nct6775, który to obsługuje sterowanie m.in. wentylatorów i pomiar temperatury oraz sterowanie zasilaniem dysków.

OSTRZEŻENIE!!!

Wszystko robisz na własną odpowiedzialność, nie odpowiadam za żadne szkody wynikłe z użycia tego kodu.

Testowane Na Z97 extreme4 powinno też działać na Z97 extreme6 ale nie było testowane.

Patch działa na jądrach 5.12.x

No to działamy

  1. Instalujemy pakiet rpmdevtools, rpm-build oraz dnf-plugins-core
  2. Jak zwykły użytkownik uruchamiamy polecenie rpmdev-setuptree
  3. Pobieramy interesujące na źródła kernel (pakiet .src.rpm) ze strony https://koji.fedoraproject.org/koji/packageinfo?packageID=8
  4. Instalujemy go jako zwykły użytkownik poleceniem rpm -ihv kernel-<tutaj nasza wersja>.src.rpm
  5. W katalogu ~/rpmbuild/SPECS/ będzie plik kernel.spec a w ~/rpmbuild/SOURCES/ źródła kernela
  6. Uruchamiamy jako root polecenie dnf builddep <ścieżka do pliku kernel.spec> i instalujemy pakiety wymagane do zbudowania kernela
  7. Kopiujemy zawartość patcha do pliku ~/rpmbuild/SOURCES/linux-kernel-test.patch
  8. Budujemy pakiet poleceniem rpmbuild -ba <ścieżka do pliku kernel.spec>
  9. Jeżeli wszystko przebiegło pomyślnie nasz nowe pakiety jądra będą w katalogu ~/rpmbuild/RPMS/x86_64/
  10. Instalujemy/aktualizujemy pakiety jądra
  11. Uruchamiamy ponownie system

Jeżeli wszystko przebiegło prawidłowo, powinniśmy mieć plik

/sys/devices/platform/nct6775.656/hwmon/hwmon<X>/hddsaver_enable gdzie <X> to jakiś numer np. 3

Aktualny stan sprawdzamy odczytując ten plik np. poleceniem cat

cat /sys/devices/platform/nct6775.656/hwmon/hwmon3/hddsaver_enable 

Zwracany wartość to Off lub On

Włączamy zasilanie zapisując wartość On do tego pliku, a wyłączamy zapisując Off np.

echo On > /sys/devices/platform/nct6775.656/hwmon/hwmon3/hddsaver_enable 
echo Off > /sys/devices/platform/nct6775.656/hwmon/hwmon3/hddsaver_enable 

 

Kod patcha znajduje się pod adresem https://lkml.org/lkml/2021/5/3/475

Z niewiadomych powodów nie mogę go wstawić do postu (błąd forum)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...