3568开发板android移植-配置 IO 电源域

电源域的概念

其实就是管理 IO 输出的电平;假如硬件上 IO 电源域配置为 3.3V,则 IO 输出最大电平为 3.3V;同理 IO 电源域硬件配置为 1.8V,则 IO 输出最大电平是 1.8V;这样有利于 IO 电平

的灵活配置;IO 电源域一般都会接到 PMU 电源芯片不同组的 LDO,由 PMU(电源管理芯片)

配置输出电平,因为 PMU 的 LDO 可以在 DTS 上配置不同的电压;这样不至于把 IO 的输出

最大的电平写死,可动态调整; RK356x 共有 10 个独立的 IO 电源域,分别为 VCCIO[1:7]和 PMUIO[0:2],从 rk3568 的数据手册可以看出,如下图所示:

3568开发板android移植-配置 IO 电源域_第1张图片

 

 

其中: PMUIO0、 PMUIO1 为固定电平电源域,不可配置; 其余 IO domain 均可进行配置:PMUIO2 和 VCCIO1,VCCIO[3:7]电源域均要求硬件供电电 压与软件的配置(也就是 dts 配置信息)相匹配;VCCIO2 电源域的供电与 FLASH_VOL_SEL 状态关系必须保持一致。kernel/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi 设备树配置 io

电源域如下所示:

&pmu_io_domains {

status = "okay";

pmuio1-supply = <&vcc3v3_pmu>;

pmuio2-supply = <&vcc3v3_pmu>;

vccio1-supply = <&vccio_acodec>;

vccio3-supply = <&vccio_sd>;

vccio4-supply = <&vcc_1v8>;

vccio5-supply = <&vcc_3v3>;

vccio6-supply = <&vcc_1v8>;

vccio7-supply = <&vcc_3v3>;

};

那么是为啥要这样配置呢?接下来查看原理图一一进行讲解。

2 IO 电源域配置方法

首先我们在核心板原理图上找到相关的 IO 电源域,以下依次讲解。

2.1 VCCIO2 解析

RK3568_I(VCCIO2 Domain)原理图如下图所示:

 

3568开发板android移植-配置 IO 电源域_第2张图片

 

由上图文字描述可知,VCCIO2 的供电电压由 FLASH_VOL_SEL(GPIO0_A7_u)的电平状态决定。也就是说,如果 GPIO0_A7_u 输入为高电平,VCCIO_FLASH 必须是 1.8V,VCCIO2 为1.8V;如果 GPIO0_A7_u 输入为低电平,VCCIO_FLASH 必须是 3.3V,VCCIO2 为 3.3V;那么 GPIO0_A7_u/FLASH_VOL_SEL 输入是多少呢?继续查看原理图,如下图所示:

3568开发板android移植-配置 IO 电源域_第3张图片

从上面的原理图我们可以看到 FLASH_VOL_SEL 通过上拉电阻连到了 3v3 的电源上,因此这个引脚为高电平。那么 VCCIO_FLASH 必须是 1.8V,VCCIO2 为 1.8V,因此 VCCIO2 的 IO 电源域完全是由硬件决定,dts 上不需要配置。

2.2 VCCIO1 解析

接着来看 VCCIO1 的原理图,如下图所示:

 

3568开发板android移植-配置 IO 电源域_第4张图片

 

由上图可知,VCCIO1 的 IO 电源域是 VCCIO_ACODEC,那么 VCCIO_ACODEC 是接到电源管理芯片 RK809 的 LDO4 上,如下图所示:

3568开发板android移植-配置 IO 电源域_第5张图片

从上图不难看出,VCCIO1 的电源域接入的是 3.3V 电压,VCCIO1 的 IO 电源域是 3.3V。

VCCIO_ACODEC 是接到 rk809 上面音频编解码使用的。所以我们看看设备树里面 rk809 的配

置,如下图所示:

rk809: pmic@20 {

..................................

vccio_acodec: LDO_REG4 {

regulator-always-on;

regulator-boot-on;

regulator-min-microvolt = <3300000>;

regulator-max-microvolt = <3300000>;

regulator-name = "vccio_acodec";

regulator-state-mem {

regulator-off-in-suspend;

};

};

..................................

};

由上可知,regulator-min-microvolt 和 regulator-max-microvolt 是 3.3V,不是动态调整的。所以设备树上配置:vccio1-supply = <&vccio_acodec>;

3 VCCIO3 解析

接下来来看 VCCIO3 的原理图,如下图所示:

3568开发板android移植-配置 IO 电源域_第6张图片

由上图可知,VCCIO3 的 IO 电源域是 VCCIO_SD,VCCIO_SD 是接到 rk809 的 LDO5 上,如

下图所示:

 

3568开发板android移植-配置 IO 电源域_第7张图片

从上图可以看出,这部分是给 TF 卡外设使用的,我们继续查看设备树里面关于 rk809

的配置,

rk809: pmic@20 {

..................................

vccio_sd: LDO_REG5 {

regulator-always-on;

regulator-boot-on;

regulator-min-microvolt = <1800000>;

regulator-max-microvolt = <3300000>;

regulator-name = "vccio_sd";

regulator-state-mem {

regulator-off-in-suspend;

};

};

};

可看到 regulator-min-microvolt=1.8V 和 regulator-max-microvolt=3.3V,即 vccio_sd 的电压

范围为 1.8~3.3V,电压是可动态调整;假如 vccio_sd 的电压动态调整了,VCCIO3 的 IO 电源

域电压也会跟随 vccio_sd 的电压进行动态调整。所以 dts 上配置引用为:vccio3-supply =

<&vccio_sd>;

4 VCCIO4 解析

VCCIO4 原理图如下图所示:

 

3568开发板android移植-配置 IO 电源域_第8张图片

由上图可知,VCCIO4 连接的 1.8V,DNP 是不焊接的意思

 

3568开发板android移植-配置 IO 电源域_第9张图片

VCC_1V8 是接到 PMU 的 BUCK5 上,如下图所示:

 

3568开发板android移植-配置 IO 电源域_第10张图片

BUCK5 是属于 DCDC_REG5,查看设备树如下图所示:

rk809: pmic@20 {

vcc_1v8: DCDC_REG5 {

regulator-always-on;

regulator-boot-on;

regulator-min-microvolt = <1800000>;

regulator-max-microvolt = <1800000>;

regulator-name = "vcc_1v8";

regulator-state-mem {

regulator-off-in-suspend;

};

};

};

DCDC_REG5 动态调整的电压最小和最大值都为 1.8V,所以该路只输出 1.8V,不进行电压动态调整;即 dts 上配置为:vccio4-supply = <& vcc_1v8>;

5 VCCIO5 解析

VCCIO5 电路图如下图所示:

 

3568开发板android移植-配置 IO 电源域_第11张图片

由上图可知,VCCIO5 的电源域是 VCC_3V3,VCC_3V3 连接到 rk809 的 2.1A SWOUT1,如

下图所示:

 

3568开发板android移植-配置 IO 电源域_第12张图片

我们继续查看设备树里面关于 rk809 的配置,如下所示:

rk809: pmic@20 {

..................................

vcc_3v3: SWITCH_REG1 {

regulator-always-on;

regulator-boot-on;

regulator-name = "vcc_3v3";

regulator-state-mem {

regulator-off-in-suspend;

};

};

};

可看到 vcc_3v3 是 3.3V ,所以 dts 上配置引用为:vccio5-supply = <&vcc_3v3>;

  

3568开发板android移植-配置 IO 电源域_第13张图片

你可能感兴趣的:(RK3568开发板,嵌入式硬件,物联网,RK3568,Android)