how to get cpu max or min frequency from kernel ?

今天來講講怎麼如何取得cpu max/min frequency

這一兩周改module剛好有用到

在cpufreq policy的struct底下其實是有紀錄的

但其實並不是準的,因為Policy這個可以隨著需要而更動的。

在cpu driver init時候會call下面function,來get & validate cpufreq_table

在這裡policy, policy->cpuinfo的max/min frequency都會被設置一樣的

但policy在後續彈性比較多,看governor要怎麼調整。

cpuinfo沒意外就沒有再任何變動了,是個固定值。在kernel下可以透過下面這個fucntiionx來get cpu policy的pointer

接著就能讀底下的cpuinfo.max_freq /cpuinfo.max_freq惹惹


要更保險的話就從更底層的cpufreq_frequency_table來獲得這方面的資訊

cpufreq_frequency_table的話就是從cpu driver init時被賦予value,表示該cpu支援那些頻率