i.MX28 Linear Regulator Status

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

i.MX28 Linear Regulator Status

Jump to solution
1,991 Views
lategoodbye
Senior Contributor I

Hi,

i'm currently working on a Mainline Linux driver for the linear regulators (vddd, vdda, vddio, vddmem) of the i.MX28.

Which hardware register values are prefered to check the current regulator state (enabled / disabled)?

Best regards

Stefan Wahren

Labels (2)
0 Kudos
Reply
1 Solution
1,713 Views
JorgeRama_rezRi
NXP Employee
NXP Employee

Hi Stefan,

For VDDD, VDDA and VDDMEM you can check their respective ENABLE_LINREG bits in their control registers:

HW_PWR_VDDDCTRL           0x8004_4040

HW_PWR_VDDACTRL           0x8004_4050

HW_PWR_VDDMEMCTRL     0x8004_4070

For VDDIO, you have to check the TRG bits in the HW_PWR_VDDIOCTRL register (0x8004_4060) and see what the voltage setting of the regulator is and check the DISABLE_FET bit, which disables the VDDIO DCDC converter.

Best regards.

Jorge.

View solution in original post

0 Kudos
Reply
8 Replies
1,713 Views
lategoodbye
Senior Contributor I

I've some more questions about this topic:

1. What is the expected state of the linear regulators after the imx-bootlets finished on a 5V power source only  device?

2. Is it harmless to reduce CPU frequency in case the linear regulators are disabled?

3. What is the preferred method for detecting 5V power source within a linux driver (VBUSVALID0_STATUS, VDD5V_GT_VDDIO, IRQ or power status register)?

0 Kudos
Reply
1,713 Views
igorpadykov
NXP Employee
NXP Employee

expected state of the linear regulators after the imx-bootlets

depends on particular board configuartion and this is fully programmable.

CPU frequency can be reduced in case the linear regulators are disabled.

Prefered VBUSVALID method as suggests AN4199

0 Kudos
Reply
1,713 Views
lategoodbye
Senior Contributor I

Thank you very much

0 Kudos
Reply
1,714 Views
JorgeRama_rezRi
NXP Employee
NXP Employee

Hi Stefan,

For VDDD, VDDA and VDDMEM you can check their respective ENABLE_LINREG bits in their control registers:

HW_PWR_VDDDCTRL           0x8004_4040

HW_PWR_VDDACTRL           0x8004_4050

HW_PWR_VDDMEMCTRL     0x8004_4070

For VDDIO, you have to check the TRG bits in the HW_PWR_VDDIOCTRL register (0x8004_4060) and see what the voltage setting of the regulator is and check the DISABLE_FET bit, which disables the VDDIO DCDC converter.

Best regards.

Jorge.

0 Kudos
Reply
1,713 Views
lategoodbye
Senior Contributor I

Hi Jorge,

thanks for your reply. I'm not sure about your last sentence.

DISABLE_FET = 1 -> VDDIO disabled

DISABLE_FET = 0 -> VDDIO enabled

I'm i right?

BR Stefan

0 Kudos
Reply
1,713 Views
igorpadykov
NXP Employee
NXP Employee

Hi Stefan

DISABLE_FET bit disables the VDDIO DCDC converter.

LinReg (note HW_POWER_VDDIOCTRL has not bit ENABLE_LINREG)

can not be disabled for VDDIO.

Best regards

igor

0 Kudos
Reply
1,713 Views
lategoodbye
Senior Contributor I

Hi igor,

so LinReg for VDDIO is always on?

Best regards

Stefan

0 Kudos
Reply
1,713 Views
igorpadykov
NXP Employee
NXP Employee

yes

~igor