imx7d power mode

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

imx7d power mode

2,282 Views
willwang
Contributor II

Our Linux Kernel version is 4.1.15 .My question is how to enter 3 kinds of Low Power Mode , LPSR and SNVS in SW method. How can I confirm the cpu is in the mode mentioned above? What's the cpu freqency in different mode and how to measure it? What operating-points does imx7d support in dts file.

Labels (2)
0 Kudos
Reply
9 Replies

1,650 Views
willwang
Contributor II

Hi ,

I have already read these documents & AN5383., but I still can't get the answers for some of my questions. Could you please give me the specific answer for my questions? 

Thanks for you help,

Will

0 Kudos
Reply

1,650 Views
Yuri
NXP Employee
NXP Employee

Hello,

   NXP Linux supports mem (suspend to RAM) mode, that maps to DORMANT mode,
"which offers most significant power saving, as all blocks in the system are put into a low-power state,
except for memory, which is placed in self-refresh mode to retain its contents. If there is 
"fsl,enable-lpsr" defined in DTB ocrams node, mem is mapped to LPSR mode instead of DORMANT,

and all the blocks in the system are put into power off state, except the LPSR, SNVS, and DRAM power domains."

 To enter :

$ echo mem > /sys/power/state

Regards,

Yuri.

1,650 Views
willwang
Contributor II

Hi Yuri

pastedImage_1.png

pastedImage_2.png

So ,"mem" corresponds to "SUSPEND" which is called "Deep-Sleep" in AN5383, is it right?

Thanks for your help.

Will

0 Kudos
Reply

1,650 Views
Yuri
NXP Employee
NXP Employee

Yes.

0 Kudos
Reply

1,650 Views
willwang
Contributor II

Hi Yuri

There are three kinds of low power mode in IMX7DRM .They are called "System IDLE","Low Power IDLE" and "SUSPEND".

pastedImage_1.png 

How to  enter "System IDLE" and "Low Power IDLE"? Which mode will be entered if "echo standby  > /sys/power/state" is executed? What about "echo freeze > /sys/power/state"? 

pastedImage_2.png

How to enter STOP mode?

Thanks & Best Regards

Will

0 Kudos
Reply

1,650 Views
Yuri
NXP Employee
NXP Employee

Hello,

1.

  from i.MX Linux® Reference Manual :

To enter different system level low power modes:

echo mem > /sys/power/state
echo standby > /sys/power/state

Here standby maps to STOP mode. 

2.

 as for freeze mode, please look at https://community.nxp.com/message/813854 

 

Regards,

Yuri.

1,650 Views
Yuri
NXP Employee
NXP Employee

Hello,

   Please use the recent BSP and its documentation; in particular Chapter 21 [Low-level Power

Management (PM) Driver ] of "i.MX_Linux_Reference_Manual.pdf".

Also, please refer to Chapter 23 [CPU Frequency Scaling (CPUFREQ) Driver].

http://www.nxp.com/webapp/Download?colCode=L4.1.15_2.0.0-LINUX-DOCS&Parent_nodeId=133769948107170617... 

Have a great day,
Yuri

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply

1,650 Views
willwang
Contributor II

Hi Yuri,

I have read these documents before. I didn't find the way to enter LPSR or SNVS  in SW method. As for System idle , it says " System IDLE - This mode is defined as a mode which CPU can automatically enter when there is no thread running. ",so how to kill all thread ? 

I get the way to enter system idle mode in AN5383   6.2. System Idle mode. 

pastedImage_2.png

pastedImage_1.png

it seems that the cpu frequency is 792MHz,but i think the cpufreq should be the lowest frequency of "operating points" which is set in devicetree,and the result of

" cat /sys/devices/system/cpu/*/cpufreq/cpuinfo_cur_freq” is 162MHz.  What's wrong?

I can write “mem”“standby”“freeze” to "/sys/power/state", what's the relationship between these strings and low power modes?

Doesn't executing "cat /sys/devices/system/cpu/cpu0/cpuinfo_cur_freq" stop the idle mode? 

Could you please give me  specific answer for my question?

Thanks for you help.

Will

0 Kudos
Reply

1,650 Views
Yuri
NXP Employee
NXP Employee

Hello,

  >  ... how to kill all thread ...

I do not think this is good idea. Let it will be done automatically.

Regards,

Yuri.

0 Kudos
Reply