主题中讨论的其他器件:AM6442、 TPS65220、TPS65219 、 SK-AM64B、SK-AM62-LP
工具与软件:
尊敬的社区:
对于定制电路板、我们使用 AM6442 SOC。 对于 PMIC、我们使用 TI TPS65220;对于以太网、我们使用两个 TI DP83822 PHY。
我们需要在 AVD = 1.8V 的情况下运行 PHY。 因此、我们将其连接到 LDO4 (默认值:2.5V)、上电后、输出电压应尽快设置为1.8V (PMIC VSYS=3.3V)。
我会观察到 PMIC 在启动序列期间根本没有初始化。 只有 Linux 在内核引导期间配置 PMIC。 我希望 SPL (R5或 A53)或至少 U-Boot 初始化所有属性为"regulator-boot-on"和"regulator-always-on";设置的稳压器。
由于 PMIC 由 Linux 初始化、我想我在 U-Boot 中做了一些错误的事情。
这是我的 u-boot 器件树中的 PMIC 片段(等于 Linux 使用的器件树)。
&main_i2c0 { bootph-all; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&main_i2c0_pins_default>; clock-frequency = <400000>; tps65219: pmic@30 { bootph-all; compatible = "ti,tps65219"; reg = <0x30>; buck1-supply = <&vcc_3v3_sys>; buck2-supply = <&vcc_3v3_sys>; buck3-supply = <&vcc_3v3_sys>; ldo1-supply = <&vcc_3v3>; ldo2-supply = <&buck2_reg>; ldo3-supply = <&vcc_3v3>; ldo4-supply = <&vcc_3v3>; pinctrl-names = "default"; pinctrl-0 = <&pmic_irq_pins_default>; interrupt-parent = <&gic500>; interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>; regulators { buck1_reg: buck1 { bootph-all; regulator-name = "VDD_CORE"; regulator-min-microvolt = <750000>; regulator-max-microvolt = <750000>; regulator-boot-on; regulator-always-on; }; buck2_reg: buck2 { bootph-all; regulator-name = "VCC1V8_SYS"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-boot-on; regulator-always-on; }; buck3_reg: buck3 { bootph-all; regulator-name = "VDD_LPDDR4"; regulator-min-microvolt = <1100000>; regulator-max-microvolt = <1100000>; regulator-boot-on; regulator-always-on; }; ldo1_reg: ldo1 { bootph-all; regulator-name = "VDDSHV_SDIO_PMIC"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-always-on; }; ldo2_reg: ldo2 { bootph-all; regulator-name = "VDDAR_CORE"; regulator-min-microvolt = <850000>; regulator-max-microvolt = <850000>; regulator-boot-on; regulator-always-on; }; ldo3_reg: ldo3 { bootph-all; regulator-name = "VDDA_1V8"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-boot-on; regulator-always-on; }; ldo4_reg: ldo4 { bootph-all; regulator-name = "VDD_PHY_1V8"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-boot-on; regulator-always-on; }; }; }; };
&pmic_irq_pins_default { bootph-all; }; &ldo4_reg{ regulator-init-microvolt = <1800000>; };
CONFIG_DM_PMIC=y CONFIG_PMIC_TPS65219=y CONFIG_DM_REGULATOR=y CONFIG_DM_REGULATOR_TPS65219=y
CONFIG_DM_REGULATOR=y CONFIG_SPL_DM_REGULATOR=y CONFIG_DM_REGULATOR_GPIO=y CONFIG_SPL_DM_REGULATOR_GPIO=y