Lower CPU frequency on imx8mq

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

Lower CPU frequency on imx8mq

ソリューションへジャンプ
6,579件の閲覧回数
daisukeyoshinar
Contributor II

Hello,

I am using the latest release 4.9.98_2.0.0 on iMX 8M Quad EVK.

I want to set the CPU frequency lower than 1.0GHz.

I tried to change the dts file with i.MX_Linux Reference_Manual.pdf, but there are 4 operational points already.

~/imx-yocto-bsp/build-xwayland/tmp/work-shared/imx8mqevk/kernel-source/arch/arm64/boot/dts/freescale/fsl-imx8mq-evk.dts
&A53_0 {
   operating-points = <
   /* kHz uV */
   1500000 1000000
   1300000 1000000
   1000000 900000
   800000 900000
   >;
   dc-supply = <&reg_gpio_dvfs>;
};

I confirmed that the EVK board is using this dts.
root@imx8mqevk:/proc/device-tree# strings compatible
fsl,imx8mq-evk
fsl,imx8mq


The operating point is displayed as follows.
root@imx8mqevk:/proc/device-tree/cpus/cpu@0# hexdump -C operating-points
00000000 00 16 e3 60 00 0f 42 40 00 13 d6 20 00 0f 42 40 |...`..B@... ..B@|
00000010 00 0f 42 40 00 0d bb a0 00 0c 35 00 00 0d bb a0 |..B@......5.....|

0x16e360 -> 1500000(1.5GHz)
0x13d620 -> 1300000(1.3GHz)
0xf4240 -> 1000000(1.0GHz)
0xdbba0 -> 900000(900MHz)
0xc3500 -> 800000(800MHz)


However, only two operating points in the governor are displayed.
root@imx8mqevk:/sys/devices/system/cpu/cpu0/cpufreq# cat scaling_available_frequencies
1000000 1500000

Also, the minimum clock cannot be set lower than 1.0GHz.

Where should I change to add an operating point?

Best regards,
Yoshinari.

ラベル(2)
タグ(2)
0 件の賞賛
返信
1 解決策
6,174件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

Hi Yoshinari

these operating points are for both industrial and consumer gardes, while

consumer grade supports only 1.GHz, 1.5GHz according to Table 7. Operating ranges

i.MX 8M Dual / 8M QuadLite / 8M Quad Applications Processors Data Sheet for Consumer Products

industrial grade supports only 800MHz, 1.3GHz according to Table 7. Operating ranges

i.MX 8M Dual / 8M QuadLite / 8M Quad Applications Processors Data Sheet for Industrial Products

>Where should I change to add an operating point?

for other frequencies one will have to modify cpufreq driver described in sect.2.3.3.2.1 Source Code Structure

attached Linux Manual.

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

元の投稿で解決策を見る

0 件の賞賛
返信
3 返答(返信)
6,175件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

Hi Yoshinari

these operating points are for both industrial and consumer gardes, while

consumer grade supports only 1.GHz, 1.5GHz according to Table 7. Operating ranges

i.MX 8M Dual / 8M QuadLite / 8M Quad Applications Processors Data Sheet for Consumer Products

industrial grade supports only 800MHz, 1.3GHz according to Table 7. Operating ranges

i.MX 8M Dual / 8M QuadLite / 8M Quad Applications Processors Data Sheet for Industrial Products

>Where should I change to add an operating point?

for other frequencies one will have to modify cpufreq driver described in sect.2.3.3.2.1 Source Code Structure

attached Linux Manual.

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

0 件の賞賛
返信
4,420件の閲覧回数
yhegde
Contributor I

Hi @igorpadykov,

Are you saying that it is possible to create our own operating points which can be of a frequency below the frequencies mentioned in the data sheet by adding to the OPP tables in the correct dtsi file in arch/arm/boot/dts? Or do we modify the actual NXP cpufreq driver in the correct imx*-cpufreq.c file to create some custom frequency? Is that even possible? For example, if on my i.MX8DXP the only available frequencies in cpufreq are 900000 kHZ and 1200000 kHz, how can I create a setting to go even lower?

0 件の賞賛
返信
6,174件の閲覧回数
daisukeyoshinar
Contributor II

Thank you for quick reply.

The operating point was disabled by grade.
/imx8mqevk/kernel-source/drivers/soc/imx/soc-imx8.c

After changing, it became 800MHz.

Best regards,
Daisuke Yoshinari

0 件の賞賛
返信