The ConnectCore 93 contains an NXP PCA945X Power Management IC (PMIC). The PMIC is connected to the CPU via the LPI2C1 port (address 0x25).

The PMIC has the following features:

  • Six high-efficiency step-down regulators

  • Five LDO regulators

  • 32.768 kHz crystal oscillator driver and buffer output

  • Two channel logic level translator

  • Configurable reset behavior

  • Power control IO

  • ESD protection

Kernel configuration

You can manage the PCA9450 driver support through the following kernel configuration option:

  • NXP PCA9450A/PCA9450B/PCA9450C regulator driver (CONFIG_REGULATOR_PCA9450)

This option is enabled as built-in on the default ConnectCore 93 kernel configuration file.

Kernel driver

The driver for PCA9450 driver is located at:

File Description

drivers/regulator/pca9450-regulator.c

NXP PCA9450A/PCA9450B/PCA9450C regulator driver

Device tree bindings and customization

The PCA9450 device tree binding is documented at Documentation/devicetree/bindings/regulator/nxp,pca9450-regulator.yaml.

The PMIC and its regulators are defined on the ConnectCore 93 device tree at arch/arm64/boot/dts/digi/ccimx93.dtsi. Some regulators are used internally inside the ConnectCore 93 and some are used externally on the carrier board. The settings of the external regulators can be modified in the carrier board device tree if required by your platform.

ConnectCore 93 internal regulators

The following regulators are used internally on the ConnectCore 93 and their parameters should not be modified.
Device tree alias PCA9450 regulator Description

VDDQ_DDR

BUCK1

Internal DDR power supply

VDD_SOC_0V8

BUCK2

Internal CPU power supply

VDD_3V3

BUCK4

Internal 3.3 V power supply

VDD_1V8

BUCK5

Internal 1.8 V power supply

VDD2_DDR

BUCK6

Internal DDR power supply

NVCC_BBSM_1V8

LDO1

Internal CPU power supply

VDD_ANA_0V8

LDO4

Internal CPU power supply

ConnectCore 93 external regulators

The following regulators are routed outside the ConnectCore 93 and may be used in the carrier board:

Device tree alias PCA9450 regulator Default voltage Usage on ConnectCore 93 Development Kit

VDD_3V3

BUCK4

3.3 V

RS485, uSD, Ethernet, Camera, LVDS, USB, Audio, Xbee, Mikrobus™

LDO2

LDO2

0.8 V

Not used

LDO3

LDO3

1.8 V

Not used

Digi recommends you use the device tree alias for modifying the ConnectCore 93 external regulator parameters in the final platform DTS file.

Example of a regulator consumer in the device tree

Certain device drivers have a property in the form propname-supply to help users define them as consumers of a power regulator. You can use this property to provide the phandle of the regulator that powers the device. This mechanism reduces the overall power consumption of the system by allowing the driver to enable the regulator when the interface is being used and disable it (or set a lower voltage) when the system goes to suspend or the driver is unloaded.

For example, on the ConnectCore 93 Development Kit, the ADC is powered by a 1.8 V fixed regulator.

ConnectCore 93 Development Kit device tree
/* ADC - 4 channels available on expansion connector */
&adc1 {
	vref-supply = <&reg_vref_1v8>;
	status = "okay";
};