修改后,对应的.config DEFAULT 策略发生变化:
默认原来的策略是:
或者直接串口写入 echo performance >/sys/devices/system/cpu/cpufreq/policy0/scaling_governor动态修改。
调整后,看下图就可以知道,系统在空载的情况下,CPU仍然是1.2G运转。
CPU: 0.0% usr 0.7% sys 0.0% nic 99.2% idle 0.0% io 0.0% irq 0.0% sirq
Load average: 0.00 0.00 0.00 1/58 929
[7m PID PPID USER STAT VSZ %VSZ CPU %CPU COMMAND[0m
877 1 root S 1144 0.4 0 0.2 adbd
887 1 root R 676 0.2 0 0.2 /sbin/swupdate-progress -w
920 877 root S 916 0.3 0 0.0 /bin/sh
894 1 root S 916 0.3 0 0.0 -/bin/sh
929 920 root R 916 0.3 0 0.0 top
1 0 root S 912 0.3 0 0.0 /sbin/init
665 2 root SW 0 0.0 0 0.0 [kworker/0:2]
3 2 root SW 0 0.0 0 0.0 [kworker/0:0]
7 2 root SW 0 0.0 0 0.0 [rcu_preempt]
5 2 root SW 0 0.0 0 0.0 [kworker/u2:0]
6 2 root SW 0 0.0 0 0.0 [ksoftirqd/0]
880 2 root SW 0 0.0 0 0.0 [file-storage]
12 2 root SW 0 0.0 0 0.0 [kworker/u2:1]
462 2 root SW 0 0.0 0 0.0 [spi0]
262 2 root SW 0 0.0 0 0.0 [oom_reaper]
11 2 root SW 0 0.0 0 0.0 [kdevtmpfs]
268 2 root SW< 0 0.0 0 0.0 [kblockd]
266 2 root SW< 0 0.0 0 0.0 [bioset]
308 2 root SW 0 0.0 0 0.0 [irq/329-axp2101]
304 2 root SW 0 0.0 0 0.0 [kworker/0:1]
root@(none):/sys/kernel/debug/clk# cat clk_summary[J
clock enable_cnt prepare_cnt rate accuracy phase
----------------------------------------------------------------------------------------
osc48m 0 0 48000000 0 0
osc48md4 0 0 12000000 0 0
usbohci0_12m 0 0 12000000 0 0
pll_periph0div25m 0 0 25000000 0 0
ephy_25m 0 0 25000000 0 0
hosc 13 13 24000000 0 0
csi_master0 0 0 24000000 0 0
dcxo_out 0 0 24000000 0 0
spwm 0 0 24000000 0 0
cpurapbs2 0 0 24000000 0 0
cpurcpus 1 1 24000000 0 0
cpurahbs 1 1 24000000 0 0
cpurapbs1 2 2 24000000 0 0
cpurpio 1 1 24000000 0 0
stwi 1 1 24000000 0 0
csi_master1 0 0 24000000 0 0
mipi_host0 1 1 24000000 0 0
usbphy0 1 1 24000000 0 0
ths 1 1 24000000 0 0
gpadc 1 1 24000000 0 0
spi2 0 0 24000000 0 0
spi1 0 0 24000000 0 0
sdmmc2_rst 0 0 24000000 0 0
sdmmc2_bus 0 0 24000000 0 0
sdmmc2_mod 0 0 24000000 0 0
sdmmc1_rst 0 0 24000000 0 0
sdmmc1_bus 0 0 24000000 0 0
sdmmc1_mod 0 0 24000000 0 0
sdmmc0_rst 1 1 24000000 0 0
sdmmc0_bus 1 1 24000000 0 0
dbgsys 0 0 24000000 0 0
avs 0 0 24000000 0 0
apb2 1 1 24000000 0 0
twi3 0 0 24000000 0 0
twi2 0 0 24000000 0 0
twi1 0 0 24000000 0 0
twi0 0 0 24000000 0 0
uart3 0 0 24000000 0 0
uart2 0 0 24000000 0 0
uart1 0 0 24000000 0 0
uart0 1 1 24000000 0 0
hoscd2 0 0 12000000 0 0
pll_csi 0 0 336000000 0 0
csi_top 0 0 336000000 0 0
pll_audio 4 4 22579200 0 0
codec_1x 1 1 22579200 0 0
i2s0 1 1 22579200 0 0
codec_4x 0 0 22579200 0 0
i2s1 0 0 22579200 0 0
pll_audiox2 0 0 45158400 0 0
pll_audiox4 0 0 90316800 0 0
pll_video0 2 2 99000000 0 0
dspo 0 0 99000000 0 0
tcon_lcd 1 1 99000000 0 0
mipi_dphy0 1 1 24750000 0 0
pll_video0x4 0 0 396000000 0 0
pll_uni 3 4 600000000 0 0
eise 0 0 600000000 0 0
isp 0 0 300000000 0 0
ve 0 1 600000000 0 0
de 1 1 300000000 0 0
g2d 1 1 300000000 0 0
pll_unix2 1 1 1200000000 0 0
sdmmc0_mod 1 1 300000000 0 0
pll_periph0 4 4 600000000 0 0
spi0 1 1 100000000 0 0
cpurapbs2_pll 0 0 600000000 0 0
cpurcpus_pll 0 0 600000000 0 0
nna_rst 0 0 600000000 0 0
apb1 2 2 100000000 0 0
pio 1 1 100000000 0 0
pwm 1 1 100000000 0 0
ahb3 2 2 200000000 0 0
display_top 1 1 200000000 0 0
usbotg 1 1 200000000 0 0
usbehci0 0 0 200000000 0 0
usbohci0 0 0 200000000 0 0
gmac 0 0 200000000 0 0
psi 1 1 200000000 0 0
ahb2 0 0 200000000 0 0
ahb1 2 2 200000000 0 0
iommu 1 1 200000000 0 0
hstimer 0 0 200000000 0 0
dma 1 1 200000000 0 0
periph32k 0 0 32768 0 0
pll_periph0x2 0 0 1200000000 0 0
nna 0 0 1200000000 0 0
ce 0 0 300000000 0 0
pll_ddr0 0 0 1584000000 0 0
sdram 0 0 1584000000 0 0
mbus 0 0 396000000 0 0
pll_cpu 0 0 1200000000 0 0
cpu 0 0 1200000000 0 0
cpuapb 0 0 300000000 0 0
axi 0 0 400000000 0 0
iosc 0 0 16000000 0 0
losc 1 1 32768 0 0
losc_out 1 1 32768 0 0
cpurowc 0 0 32768 0 0
root@(none):/sys/kernel/debug/clk#
补充:
值得一提的是,这种动态调压调频的策略和配置方案并非ARM独有的,mainline的X84 make menuconfig的时候的配置几乎和ARM一样
结束!


