Wpis z mikrobloga

Usunałem poprzednie pytanie bo było zbyt skomplikowane a doczytałem troszkę i teraz mam w zasadzie jedną wątpliwość.
Będę potrzebował napisać driver do clock generatora, który będziemy używać w projekcie. Generalnie ten clock generator posiada eeprom, w którym będą jakieś defaultowe wartości, natomiast przy starcie systemu, ten clock generator jeżeli będzie taka potrzeba to będzie reconfigurowany. Chciałbym to ogarnąć za pomocą device tree oraz oczywiście drivera.

Patrzyłem na driver od renesansa, dla versaclock3 - .compatible = "renesas,5p35023.
Z tego co rozumiem, driver rejestruje w Clock Common Framework wszystkie komponenty jakie znajdują się w tym układzie, czyli bramki, dividery, multiplexery itp.
Moje pytanie więc brzmi - czy jeżeli zarejestruje poprawnie wszystkie komponenty mojego clock generatora, to czy gdzieś później w kodzie np. drivera od phy ethernetowego - zawołam clksetrate(tutaj częstotliwość) to czy Clock Common Framework sam policzy co ma poprzestawiać (ponownie - bramki, dividery, multiplexery) i jedyne co zrobi później to wywoła odpowiednie funkcje mojego drivera, które już nic nie będą liczyć a jedynie co to zapiszą wartości (przeliczone przez Clock Common Framework) do odpowiednich rejestrów? Jeżeli tak to powiedzmy, że rozumiem ideę tego Clock Common Frameworka, jeżeli jednak w kodzie drivera sam muszę policzyć to wszystko to jaki sens miałoby rejestrowanie tego?

#embedded
  • 4
Stawiam że nie otrzymasz odpowiedzi na to pytanie na Wykopie ;)
Uderz na jakąś mail listę do kernela.
Najlepiej zagadaj do kogoś kto opiekuje się tym frameworkiem.
@Rosly: Chyba masz rację, że to najwyższy czas zaprzyjaźnić się z mailing listami - już od jakiegoś czasu jestem zapisany na pare różnych mailing list, bo chciałem się zapoznać jak to mniej więcej wygląda :) A generalnie to zasięgnąłem trochę wiedzy na temat tego CCF i wygląda na to, że wszelkimi kalkulacjami (generalnie) zajmuje się właśnie CCF i po to rejestruje się wszystkie komponenty (inputy, outputy, muxy, pll, bramki) danego clock
@pepepanpatryk: Tylko pisz na liste komponentu bo inaczej nikt ci nie odpowie. List z dużym ruchem nikt nie czyta. Sporo ludzi tez rozmawia na kernelowych stack overflow o takich rzeczach