1. AW37004 LDO在MTK平台Linux驱动调试实战
作为一名在电源管理领域摸爬滚打多年的硬件工程师,最近在MTK平台调试AW37004这颗LDO时踩了不少坑。这颗芯片在摄像头模组供电场景中很常见,但实际调试中会遇到电压跟随性差、负载调整率不足等问题。今天我就把从硬件设计到驱动调试的全流程经验做个系统梳理,特别是如何解决"负载变化时输出电压不稳"这个高频痛点。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 硬件设计基础与原理分析
2.1 LDO选型关键参数解析
AW37004作为低压差线性稳压器,在MTK平台常用于传感器、摄像头模组的供电。选型时这几个参数必须重点关注:
- Dropout Voltage:典型值120mV@300mA,意味着输入至少要比输出高120mV才能正常工作
- Load Regulation:数据手册标称±0.5%,但实际PCB布局不良会导致恶化到±3%以上
- PSRR:在1kHz时典型值60dB,高频段性能下降明显(10kHz时仅40dB)
2.2 典型应用电路设计要点
参考官方设计手册时,这几个元件选型容易出错:
c复制// 典型应用电路关键元件
#define INPUT_CAP 10μF(X7R) // 必须低ESR陶瓷电容
#define OUTPUT_CAP 22μF(X5R) // 容量不足会导致振荡
#define FB_RES1 100kΩ(1%) // 分压电阻精度影响输出电压精度
特别注意:输出电容的ESR值建议在50-200mΩ之间,过大或过小都会影响环路稳定性。曾经有个项目用了铝电解电容导致启动时出现400mV的电压跌落。
3. MTK平台驱动移植与调试
3.1 设备树(DTS)配置详解
在MTK的kernel-4.19中,AW37004的节点要放在i2c总线子节点下:
dts复制&i2c3 {
aw37004: pmic@30 {
compatible = "awinic,aw37004";
reg = <0x30>;
regulator-name = "cam_ldo";
regulator-min-microvolt = <1200000>;
