【FAQ】全志R329如何在平台修改uboot阶段CPU频率? (转)

在启动优化过程,有一个优化项是提高uboot阶段CPU运行频率,CPU默认配置启动频率为1G,提高CPU频率确实可以提升开机速度,但是在提升CPU频率的时候,需要同步提升 VDD-CPU 的电压,该电压配置需要与芯片的 VF 表一致。

下面以 R818 evb2 方案为例,介绍如何在uboot节点提升 CPU 频率。


* 查看平台的 vf 表,R818当前的 vf 表在内核的dts中有配置,详细的配置参考内核dts的 cpu_opp_l_table 配置即可。R818 1.5G时,VDD-CPU需要配置为1.18V,得到该信息之后,uboot中将配置为该频率启动。


* 方案的 sys_config.fex 中,boot_clock 为uboot阶段CPU频率,当前我们需要以1.5G频率启动,则修改为 boot_clock = 1512。


* 同步修改 VDD-CPU 电压,R818 evb2 方案中,DCDCA输出连接到VDD-CPU,所以需要在uboot阶段,将DCDCA的电压修改为1.18V。配置为 dcdca_vol = 1001180。


* 由于evb2方案没有BMU,uboot中的方案配置需要去掉BMU的配置,将需要修改uboot中,平台defconfig中的配置。

上述总的修改如下:

![fc0883e8aba945c28a4554e6d5461216.jfif](/assets/uploads/files/1637740287942-fc0883e8aba945c28a4554e6d5461216.jfif) 

![32e61aa8493b44179f2c1ba39964b1b5.jfif](/assets/uploads/files/1637740292279-32e61aa8493b44179f2c1ba39964b1b5.jfif) 

补丁如下:

```
// 方案sys_config.fex 中的修改
diff --git a/configs/evb2/sys_config.fex b/configs/evb2/sys_config.fex
index 8c99868..f86464e 100644
--- a/configs/evb2/sys_config.fex
+++ b/configs/evb2/sys_config.fex
@@ -20,7 +20,7 @@ debug_mode  = 8
 ;power_mode    = axp_type,   0:axp81X, 1:dummy, 2:axp806, 3:axp2202, 4:axp858
 ;----------------------------------------------------------------------------------
 [target]
-boot_clock     = 1008
+boot_clock     = 1512
 storage_type    = 2
 advert_enable   = 0
 burn_key        = 1
@@ -38,6 +38,7 @@ power_mode            = 2
 ;dldo1_vol                                                     ---set dldo1 voltage,mV,500-3500,100mV/step
 ;----------------------------------------------------------------------------------
 [power_sply]
+dcdca_vol = 1001180

 [card_boot]
 logical_start   = 40960

// uboot 中,平台defconfig的修改
diff --git a/configs/sun50iw10p1_tina_defconfig b/configs/sun50iw10p1_tina_defconfig
index 581e4b84a6..bc42673f67 100644
--- a/configs/sun50iw10p1_tina_defconfig
+++ b/configs/sun50iw10p1_tina_defconfig
@@ -39,7 +39,7 @@ CONFIG_R_I2C0_ENABLE=y
 CONFIG_SUNXI_POWER=y

 CONFIG_SUNXI_PMU=y
-CONFIG_SUNXI_BMU=y
+#CONFIG_SUNXI_BMU=y
 CONFIG_AXP81X_POWER=y
 CONFIG_AXP81X_SUNXI_I2C_SLAVE=0x34
 CONFIG_AXP858_POWER=y
```
在修改完成之后,uboot的启动log将可以看到下面的信息:

```
[00.794]dcdca_vol = 1180, onoff=1
[00.802]CPU=1512 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz  MBus=400Mhz
```
启动log中有上述信息则修改成功。

其他的平台、方案、频率如何修改?

其他的平台、方案、频率修改都是类似的,只要确定期望uboot启动的CPU频率之后,确认在该频点下,VDD-CPU需要的电压,然后通过原理图确认VDD-CPU是由哪一路DCDC供电的,而后修改sys_config.fex中的boot_clock和power_sply的配置即可。而uboot中的修改,根据实际使用方案,配置PMU和BMU即可,如果发现uboot中的电压没有配置正确,则在uboot中搜索”power_sply“字段信息,查看代码解析"/soc/power_sply"逻辑后修改即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值