文档说明

本文档以SC806-CN-00(MSM8909平台)为例,说明如何修改LDO电压值。

修改方法

以修改LDO5,从1.8V改为1.9V为例。

首先查看PM8909的IC specification,确保想要修改的电压值在芯片支持的范围内,如下:

可以看出,L5支持的电压范围为1.75~3.337V,默认电源值为1.8V。

下面是软件修改方法,软件里面需要修改的地方如下:

1)修改BP源码部分RPM电源输出范围配置值。

文件路径:

rpm_proc/core/systemdrivers/pmic/config/msm8909/pm8909/pm_config_target.c

修改ldo_rail_a数组内容:

/* LpHpCurrentThreshold, SafetyHeadRoom, IsSawControlled, AccessAllowed, AlwaysOn, MinPwrMode, BypassDisallowed, DroopDetect, MinVoltage, MaxVoltage, MinSettlingTime, SettlingErrorEnabled, SettlingEnabled, Reserved */
pm_rpm_ldo_rail_info_type ldo_rail_a[] =
{... ...{5, 150, 0, PM_ACCESS_ALLOWED, PM_ALWAYS_ON, PM_NPA_SW_MODE_LDO__IPEAK, PM_NPA_BYPASS_DISALLOWED, PM_DROOP_DETECT_DIS, 1800, 1800, 0, PM_SETTLING_ERR_EN, PM_SETTLING_EN, 0}, // LDO5   LDO LV_P300... ...
};

其中 1800,1800 表示该路LDO支持的最小电压和最大电压,这里表示LDO5稳定输出1.8V;PM_ALWAYS_ON表示该路LDO上电后一直处于打开状态(灭屏休眠也有输出),与之相对的,如果需要使用时才打开,这里设置成PM_NONE。

将上面的电源范围改为1900,1900即为输出1.9V了,修改后如下:

pm_rpm_ldo_rail_info_type ldo_rail_a[] =
{... ...{5, 150, 0, PM_ACCESS_ALLOWED, PM_ALWAYS_ON, PM_NPA_SW_MODE_LDO__IPEAK, PM_NPA_BYPASS_DISALLOWED, PM_DROOP_DETECT_DIS, 1900, 1900, 0, PM_SETTLING_ERR_EN, PM_SETTLING_EN, 0}, // LDO5   LDO LV_P300... ...
};

2)修改AP源码部分DTS文件中的电源输出范围配置。

文件路径:

kernel/arch/arm/boot/dts/qcom/sc806-evk/msm8909-regulator.dtsi

【注】路径中的sc806-evk表示当前项目目录,具体配置哪个项目则进入哪个目录。

修改节点rpm-regulator-ldoa5的输出电压配置,如下:

        rpm-regulator-ldoa5 {status = "okay";pm8909_l5: regulator-l5 {status = "okay";regulator-min-microvolt = <1800000>;regulator-max-microvolt = <1800000>;qcom,init-voltage = <1800000>;};};

将其中最小电压,最大电压和初始化电压改为1900000即可:

        rpm-regulator-ldoa5 {status = "okay";pm8909_l5: regulator-l5 {status = "okay";regulator-min-microvolt = <1900000>;regulator-max-microvolt = <1900000>;qcom,init-voltage = <1900000>;};};

3)修改使用LDO5电源的模块对该路电源的电压配置。

【注】前面两步仅用于限制该路电源的电压输出范围以及初始输出电压。具体使用时还需要根据模块所需的电压值对该路电压进行实际配置,如果原本想要配置的电压已经在上述配的范围之内,则前两步可省略,直接在模块配置部分进行电压值修改即可(由于上述LDO5上下限电压都是1.9V,所以相关模块配置该路电源也只能配1.9V)。

一般模块对于所用电源的配置都在dts文件中完成(少数也会直接在.c源码文件中配置,这类需要根据log信息去查找配置的地方)。可以在 kernel/arch/arm/boot/dts/qcom/sc806-evk/ 目录下搜索“pm8909_l5”关键字,如下:

然后到具体引用该路LDO电源的dtsi文件中查看是否对该路电源进行了电压配置,如 msm8909-mtp.dtsi 文件中对该路电源配置如下:

&sdhc_1 {... ...vdd-io-supply = <&pm8909_l5>;qcom,vdd-io-always-on;qcom,vdd-io-lpm-sup;qcom,vdd-io-voltage-level = <1800000 1800000>;qcom,vdd-io-current-level = <200 60000>;... ...status = "ok";
};

可以看出,这是sd卡驱动部分的配置,将其中电压改成1900000即可:

&sdhc_1 {... ...vdd-io-supply = <&pm8909_l5>;qcom,vdd-io-always-on;qcom,vdd-io-lpm-sup;qcom,vdd-io-voltage-level = <1900000 1900000>;qcom,vdd-io-current-level = <200 60000>;... ...status = "ok";
};

其他dts文件中的配置修改类同。

【注】如果引用该路LDO电源的电压值未改,则开机会停留在开机logo界面无法进入系统,uart log会提示如下信息:

[ 4.603222] sdhci-pltfm: SDHCI platform and OF driver helper

[ 4.613321] pm8909_l5: requested voltage range [1800000, 1800000] does not fit within constraints: [1900000, 1900000]

[ 4.622933] sdhci_msm_vreg_set_voltage: regulator_set_voltage(vdd-io)failed. min_uV=1800000,max_uV=1800000,ret=-22

可根据这条log的上下文信息知道哪个模块使用了该路LDO且配置的电压超出了限制范围,进而进行修改即可。

【注】上述LDO5仅用于测试性修改,实际修改LDO电压时务必谨慎!因为有些LDO可能负载了多路设备,设置的电压值过高可能会烧坏其他负载设备,切记!

高通MSM8909平台L1系统修改LDO电压值相关推荐

  1. 高通MSM8909 qpnp-vibrator.c

    记录高通MSM8909平台的vibrator manual mode的工作方式: static int qpnp_vibrator_probe(struct spmi_device *spmi) { ...

  2. android修改默认遥控器键值,RK3128平台android系统修改添加遥控器键值码值

    本帖最后由 微笑,一路向前 于 2017-1-4 15:34 编辑 最近帮客户定制RK3128平台的固件,涉及到定制新的遥控器,需要添加或修改遥控码值.RK3128平台Android系统修改遥控器码值 ...

  3. 高通SDM450平台的LDO 输出与电压调节

    开始之前,首先我们要知道什么是LDO?有什么作用?LDO调试需要调哪些? 什么是LDO,有什么作用? LDO为 低压线性稳压器,高通平台有多路LDO电压输出,以SDM450 为例 共有 LDO1~LD ...

  4. 高通android平台修改开机小企鹅logo

    高通平台修改开机画面 小企鹅LOGO 高通android平台修改开机小企鹅logo 方法一 方法二 高通android平台修改开机小企鹅logo 高通android平台开机lk阶段默认使用小企鹅log ...

  5. 高通SDX12平台:启动流程梳理

    高通SDX12平台 启动流程梳理 1. 高通平台CPU类型介绍 通常我们所说的CPU如高通平台MSM8998.苹果A12, 华为海思平台(麒麟980.990)等,这些我们虽然叫CPU,但并不是只有一个 ...

  6. 高通SDX12平台:LINUX上MBIM功能异常

    高通SDX12平台 LINUX上MBIM功能异常 1. 问题描述 按照高通SDX12平台产品规格,其支持RMNET.ECM.RNDIS.PPP.MBIM等拨号:但经测试,发现Windos下MBIM功能 ...

  7. 高通SDX55平台:R8168 PHY驱动适配

    高通SDX55平台 R8168 PHY驱动适配 1. SDX55 CPE应用场景 高通5G平台SDX55支持5G独立组网(SA)和非独立组网(NSA)两种网络架构,同时兼容LTE和WCDMA制式,拥有 ...

  8. 高通MDM9607平台--线程资源泄漏问题定位

    高通MDM9607平台--线程资源泄漏问题定位 1.问题描述 2.问题分析 3.问题定位 4.问题解决 1.问题描述 客户xx公司,TTS报警项目,项目需求是在营业厅中放置一个报警设备,需要报警的时候 ...

  9. 【转载】高通msm8996平台的ASOC音频路径分析(基于androidN及linux3.1x)

    高通msm8996平台的ASOC音频路径分析(基于androidN及linux3.1x) tags : msm8996 sound linux android 原文:高通msm8996平台的ASOC音 ...

最新文章

  1. 并发编程协程(Coroutine)之Gevent
  2. getservbyname和getservbyport
  3. OpenGL 坐标系统(Perspective)
  4. 产品经理必须要了解的经济学原理--“口红效应”
  5. mysql rpm 安装后修改路径_mysql rpm包安装后修改数据目录
  6. 数据结构 第一章 绪论
  7. 网址采集器-批量URL网站链接提取-批量关键词网站采集
  8. ARM体系结构与编程模型总结
  9. 德勤:迈向移动操作系统—建立城市交通通用语言
  10. 服务器和客户端TSL协议不一致
  11. ie11启用java时打不开_ie11打不开解决方法
  12. 无cmd窗口运行jar包的方法
  13. 阻抗匹配基础知识详解
  14. RC电路(积分电路,微分电路)
  15. 从Google白皮书看企业安全最佳实践
  16. 通过Kali Linux暴力破解WiFi密码
  17. 音频信号耦合为何要用极性电容?如何选型?
  18. 电子科技大学 编译原理期末女娲补天
  19. 自定义切面会吃掉异常,导致事务不生效的问题。
  20. 开源工具:OpenPR

热门文章

  1. 基于灰度的模板匹配算法:MAD、SAD、SSD、MSD、NCC、SSDA算法
  2. Android点击水波纹扩散效果整理(附带一个自定义的水波纹效果控件)
  3. rk3399 9.0 GMS 服务使用
  4. 强大!腾讯在线文档来了
  5. MDT 评测 — 华为 P30 Pro 屏幕素质报告
  6. 日语能力考试流程及时间安排的说明
  7. 牛客练习赛61 B 吃水果
  8. 2012年吉林省联通远程数据复制软件采购
  9. LBP(Local Binary Patterns)特征
  10. Android图片叠加效果