imx8m low power mode in Linux

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

imx8m low power mode in Linux

ソリューションへジャンプ
4,812件の閲覧回数
akbar123
Contributor III

Hello,

I want to figure out how imx8m power management is done in Linux and cores are put into low power:

Q1- As I guessed, low power mode relates to power and clock. Is there any things except them?

Q2- Which Linux source files implement the reference manual stuffs relating to power and clock?

Q3- Is there any other document except reference manual about imx8m low power mode?

Thanks in advance

 

ラベル(2)
0 件の賞賛
返信
1 解決策
4,786件の閲覧回数
igorpadykov
NXP Employee
NXP Employee
0 件の賞賛
返信
7 返答(返信)
4,798件の閲覧回数
akbar123
Contributor III

Hi igor,

The document describes some benchmarks. My question is about the low power functionality in i.MX8M.

Q1- How does the power management and clock system work at both sides Hardware and Linux?

Q2- Is there any other document except reference manual about these topics?

 

Thanks

0 件の賞賛
返信
4,787件の閲覧回数
igorpadykov
NXP Employee
NXP Employee
0 件の賞賛
返信
4,779件の閲覧回数
akbar123
Contributor III

Hi igor,

My ultimate goal is to run a program on Cortex-M4 (CM4) to control a peripheral (e.g. GPIO, UART, CAN or etc) when Cortex-A (CA) cores are in sleep (i.e. echo mem > /sys/power/state).

The current implementation puts CM4 in sleep when Linux goes into sleep. As I searched the kernel source code, there are two important files: (These are just my guesses)

1- psci.c: is used to manage CA cores, e.g. put them into sleep

2- gpc-psci.c: is used to manage imx8 power domains, e.g. to turn off power of domain and put that domain into sleep

 

Q1- Are the power management operations (e.g. putting CA and CM4 into sleep) implemented in Linux source code (psci.c and gpc-psci.c) or in ATF (gpc.c)? I can't realize Linux and ATF relationship in handling power management.

Q2- I guess CA core0 is always ON and not put into sleep even if I use "echo mem > /sys/power/state". Is that right?

Q3- Are there any documents about imx8mq power domains except the reference manual?

0 件の賞賛
返信
4,769件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

Hi asghar 

 

> My ultimate goal is to run a program on Cortex-M4 (CM4) to control a peripheral
>(e.g. GPIO, UART, CAN or etc) when Cortex-A (CA) cores are in sleep
>(i.e. echo mem > /sys/power/state).

 

such use case (example with audio) is provided in AN12195  Implement Low-Power Audio on i.MX8M

AN12195SW

 

>Are there any documents about imx8mq power domains except the reference manual?

 

not, sorry.

 

Best regards
igor

0 件の賞賛
返信
4,762件の閲覧回数
akbar123
Contributor III

Hi igor,

Thanks for your help.

what about this question:

Q2- I guess CA core0 is always ON and not put into sleep even if I use "echo mem > /sys/power/state". Is that right?

0 件の賞賛
返信
4,759件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

Hi asghar 

 

> I guess CA core0 is always ON and not put into sleep even

>if I use "echo mem > /sys/power/state". Is that right?

 

not, sorry.

 

Best regards
igor

0 件の賞賛
返信
4,804件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

Hi Asghar

 

for description of i.MX8MQ low power modes one can look at

AN12118  i.MX 8M Quad Power Consumption Measurement

sect.2.5.1 Low Level Power Management (PM), sect.2.5.1.3 Source Code Structure

i.MX Linux Reference Manual​

 

Best regards
igor

0 件の賞賛
返信