Pmic PCA9450 for imx8mm

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Pmic PCA9450 for imx8mm

4,552 Views
sebastiansuesen
Contributor II

Hello,

 

we will have a customer board with imx8 mini processor.

Our development base is the imx8mm-evk.

 

The imx8mm-evk board use the BD7184 pmic. This pmic is configured via uboot.

Our customer board get a other pmic PCA9450.

 

Do we need some configuration in uboot?

 

 

We found following hint in the Mscale-DDR-Tool:

 

"Use the same PMIC and DDR power supply connection as MX8MSCALE EVK board,
or guarantee DDR power supply is no need to adjust when it boots to serial download
mode."

 

Can we use this pmic for Mscale-DDR-Tool?

 

Best regards,

Sebastian

Labels (1)
0 Kudos
Reply
8 Replies

3,101 Views
BiyongSUN
NXP Employee
NXP Employee

New BSP default is PCA9450 since  rel_imx_5.4.70_2.3.2 

the below is lf-5.10.35-2.0.0 for example.


https://source.codeaurora.org/external/imx/uboot-imx/tree/board/freescale/imx8mm_evk/spl.c?h=lf-5.10...

#ifdef CONFIG_POWER
#define I2C_PMIC 0
#ifdef CONFIG_POWER_PCA9450
int power_init_board(void)
{
struct pmic *p;
int ret;

ret = power_pca9450_init(I2C_PMIC);
if (ret)
printf("power init failed");
p = pmic_get("PCA9450");
pmic_probe(p);

/* BUCKxOUT_DVS0/1 control BUCK123 output */
pmic_reg_write(p, PCA9450_BUCK123_DVS, 0x29);

/* Buck 1 DVS control through PMIC_STBY_REQ */
pmic_reg_write(p, PCA9450_BUCK1CTRL, 0x59);

/* Set DVS1 to 0.8v for suspend */
pmic_reg_write(p, PCA9450_BUCK1OUT_DVS1, 0x10);

/* increase VDD_DRAM to 0.95v for 3Ghz DDR */
pmic_reg_write(p, PCA9450_BUCK3OUT_DVS0, 0x1C);

/* VDD_DRAM needs off in suspend, set B1_ENMODE=10 (ON by PMIC_ON_REQ = H && PMIC_STBY_REQ = L) */
pmic_reg_write(p, PCA9450_BUCK3CTRL, 0x4a);

/* set VDD_SNVS_0V8 from default 0.85V */
pmic_reg_write(p, PCA9450_LDO2CTRL, 0xC0);

/* set WDOG_B_CFG to cold reset */
pmic_reg_write(p, PCA9450_RESET_CTRL, 0xA1);

return 0;
}
#else
int power_init_board(void)
{
struct pmic *p;
int ret;

ret = power_bd71837_init(I2C_PMIC);
if (ret)
printf("power init failed");

p = pmic_get("BD71837");
pmic_probe(p);



https://source.codeaurora.org/external/imx/linux-imx/tree/arch/arm64/boot/dts/freescale/imx8mm-evk.d...


&i2c1 {
clock-frequency = <400000>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c1>;
status = "okay";

pmic_nxp: pca9450@25 {
compatible = "nxp,pca9450a";
reg = <0x25>;
pinctrl-0 = <&pinctrl_pmic>;
pinctrl-names = "default";
interrupt-parent = <&gpio1>;
interrupts = IRQ_TYPE_LEVEL_LOW>;

regulators {
buck1_reg: BUCK1 {
regulator-na


0 Kudos
Reply

3,279 Views
AlexandreFiset
Contributor II

Hello,

 

is there some news about the pca9450, because we have some problem with the integration.

Does an integration guide exist ? 

 

Thank you very much in advance,

Alexandre Fiset

0 Kudos
Reply

3,726 Views
EErdem
Contributor I

Hi is this comment still valid? I would like to use pca9450 PMIC for my 8M mini-application. 

Using this PMIC can cause a kind of issues? 

0 Kudos
Reply

3,815 Views
sebastiansuesen
Contributor II

Ok,

when can we get the uboot and linux update for pmic?

We will get our customer board at the end of October.

Can you answre this question?

Can we use this pmic for Mscale-DDR-Tool?

0 Kudos
Reply

3,101 Views
BiyongSUN
NXP Employee
NXP Employee

If your customer board is lpddr, the pca default fuse settings already can work with ddr stress tool.

If not, ddr stress tool also can configure the pmic for example for ddr3 or ddr4 and for the uart. 

please read the ddr stress tool guide for the details.

you can see I have a demo to use ddr stress tool with PCA pmic board and use script to change the uart.

Solved: Re: DDR TOOL hangs with iMX8MM board - NXP Community

0 Kudos
Reply

3,815 Views
AldoG
NXP TechSupport
NXP TechSupport

Hello,

 

Yes, some changes may be needed in uboot and to the Linux kernel, unfortunately this is still in development so that’s all the public information we have so far.

 

Thank you for your understanding,

Best regards,

Aldo

0 Kudos
Reply

3,106 Views
hhm95
Contributor II

I have same problem. I am newbie.

My device is old device, using BD71850MWV PMIC.

But when I create new boot, the default using PCA9450 PMIC.

So, how to change this, step by step is good.

Thanks you so much! 

Tags (1)
0 Kudos
Reply

3,724 Views
EErdem
Contributor I

Hi is this comment still valid? I would like to use pca9450 PMIC for my 8M mini-application. 

Using this PMIC can cause a kind of issues? 

0 Kudos
Reply