iMx95 processor frequency and turning off peripherals

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

iMx95 processor frequency and turning off peripherals

567 Views
min-eta
Contributor II

We would like to know how can we control the power consumption on the iMX95 chip from Yocto Linux. This will be to turn off peripherals we are not using in our application (like SAI3, ENET2, WIFI and so on...), and also by turning down the frequency and voltage of the various processors (like A55, M33 and NPU at a lower speed, and the M7 turned off altogether).

I am not used to developing in Linux, but come from a background of embedded MCUs, like the MCX-N94x or the MIMXRT700 series, where we would use an RTOS and directly turn down PMIC voltages, set lower frequency clocks, and turning off peripherals by turning off their clocks, and so on.

I would like to know how this is done in Linux, and if we delete a device from the DTS file, does Linux then turn off the peripheral?

I also see that we can turn down the frequency of the A55s with the "cpufreq-set" command, but how do we control the frequency of all the other processors?

min-eta
0 Kudos
Reply
3 Replies

495 Views
Chavira
NXP TechSupport
NXP TechSupport

Hi @min-eta,

Thank you for contacting NXP Support.


On the i.MX95 platform, the System Manager is responsible for managing clocks and peripherals. When you use Linux commands to reduce the frequency in the background, the system interacts with the System Manager to adjust the core frequencies and clocks accordingly.


Could you please provide more details about what you are trying to accomplish? This will help us guide you more effectively.


The i.MX95 processor offers extensive configuration options because it is designed for safety- and security-critical applications. If you are not familiar with the MPU architecture and its functionalities, you might find it easier to work with a simpler MPU such as the i.MX93 or i.MX8MM, which are better suited for less complex use cases.

 

Best Regards!

Chavira

0 Kudos
Reply

452 Views
min-eta
Contributor II

We are interested in measure energy consumption in the chip when we are running ML with eIQ. So we would measure the currents in the VDD_ARM and VDD_SOC power domains, while the components that we need are running (A55s, M7, M33, NPU, GPU depending on if we are running on the CPU and/or NPU and/or GPU, as needed).

Ideally we would turn off anything else in these power domains that we don't need, like the VPU, Camera controller, ISP, etc.

Also, we would like to test the chip in the three power modes: low drive (0.8V), nominal drive (0.85V) and over drive (0.9V). At each mode, we would turn all the processor frequencies to their highest available at the given drive mode (like at 0.8V, A55=900 MHz, M7=500MHz, etc).

min-eta
0 Kudos
Reply

445 Views
Chavira
NXP TechSupport
NXP TechSupport

Hi @min-eta,

That it is possible using the iMX95-EVK board and we have the AN14449 where we expose some use cases and the power consumption in each use case.


But from now this information is shared only with registered customers with NDA.

 

 

 

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-2202720%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EiMx95%20processor%20frequency%20and%20turning%20off%20peripherals%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2202720%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EWe%20would%20like%20to%20know%20how%20can%20we%20control%20the%20power%20consumption%20on%20the%20iMX95%20chip%20from%20Yocto%20Linux.%20This%20will%20be%20to%20turn%20off%20peripherals%20we%20are%20not%20using%20in%20our%20application%20(like%20SAI3%2C%20ENET2%2C%20WIFI%20and%20so%20on...)%2C%20and%20also%20by%20turning%20down%20the%20frequency%20and%20voltage%20of%20the%20various%20processors%20(like%20A55%2C%20M33%20and%20NPU%20at%20a%20lower%20speed%2C%20and%20the%20M7%20turned%20off%20altogether).%3C%2FP%3E%3CP%3EI%20am%20not%20used%20to%20developing%20in%20Linux%2C%20but%20come%20from%20a%20background%20of%20embedded%20MCUs%2C%20like%20the%20MCX-N94x%20or%20the%20MIMXRT700%20series%2C%20where%20we%20would%20use%20an%20RTOS%20and%20directly%20turn%20down%20PMIC%20voltages%2C%20set%20lower%20frequency%20clocks%2C%20and%20turning%20off%20peripherals%20by%20turning%20off%20their%20clocks%2C%20and%20so%20on.%3C%2FP%3E%3CP%3EI%20would%20like%20to%20know%20how%20this%20is%20done%20in%20Linux%2C%20and%20if%20we%20delete%20a%20device%20from%20the%20DTS%20file%2C%20does%20Linux%20then%20turn%20off%20the%20peripheral%3F%3C%2FP%3E%3CP%3EI%20also%20see%20that%20we%20can%20turn%20down%20the%20frequency%20of%20the%20A55s%20with%20the%20%22cpufreq-set%22%20command%2C%20but%20how%20do%20we%20control%20the%20frequency%20of%20all%20the%20other%20processors%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2205319%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20iMx95%20processor%20frequency%20and%20turning%20off%20peripherals%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2205319%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F224771%22%20target%3D%22_blank%22%3E%40min-eta%3C%2FA%3E%2C%3C%2FP%3E%0A%3CP%3EThat%20it%20is%20possible%20using%20the%20iMX95-EVK%20board%20and%20we%20have%20the%26nbsp%3BAN14449%20where%20we%20expose%20some%20use%20cases%20and%20the%20power%20consumption%20in%20each%20use%20case.%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3EBut%20from%20now%20this%20information%20is%20shared%20only%20with%20registered%20customers%20with%20NDA.%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CBR%20%2F%3E%0A%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2205242%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20iMx95%20processor%20frequency%20and%20turning%20off%20peripherals%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2205242%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EWe%20are%20interested%20in%20measure%20energy%20consumption%20in%20the%20chip%20when%20we%20are%20running%20ML%20with%20eIQ.%20So%20we%20would%20measure%20the%20currents%20in%20the%20VDD_ARM%20and%20VDD_SOC%20power%20domains%2C%20while%20the%20components%20that%20we%20need%20are%20running%20(A55s%2C%20M7%2C%20M33%2C%20NPU%2C%20GPU%20depending%20on%20if%20we%20are%20running%20on%20the%20CPU%20and%2For%20NPU%20and%2For%20GPU%2C%20as%20needed).%3C%2FP%3E%3CP%3EIdeally%20we%20would%20turn%20off%20anything%20else%20in%20these%20power%20domains%20that%20we%20don't%20need%2C%20like%20the%20VPU%2C%20Camera%20controller%2C%20ISP%2C%20etc.%3C%2FP%3E%3CP%3EAlso%2C%20we%20would%20like%20to%20test%20the%20chip%20in%20the%20three%20power%20modes%3A%20low%20drive%20(0.8V)%2C%20nominal%20drive%20(0.85V)%20and%20over%20drive%20(0.9V).%20At%20each%20mode%2C%20we%20would%20turn%20all%20the%20processor%20frequencies%20to%20their%20highest%20available%20at%20the%20given%20drive%20mode%20(like%20at%200.8V%2C%20A55%3D900%20MHz%2C%20M7%3D500MHz%2C%20etc).%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2203956%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20iMx95%20processor%20frequency%20and%20turning%20off%20peripherals%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2203956%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F224771%22%20target%3D%22_blank%22%3E%40min-eta%3C%2FA%3E%2C%3C%2FP%3E%0A%3CP%3EThank%20you%20for%20contacting%20NXP%20Support.%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3EOn%20the%20i.MX95%20platform%2C%20the%20System%20Manager%20is%20responsible%20for%20managing%20clocks%20and%20peripherals.%20When%20you%20use%20Linux%20commands%20to%20reduce%20the%20frequency%20in%20the%20background%2C%20the%20system%20interacts%20with%20the%20System%20Manager%20to%20adjust%20the%20core%20frequencies%20and%20clocks%20accordingly.%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3ECould%20you%20please%20provide%20more%20details%20about%20what%20you%20are%20trying%20to%20accomplish%3F%20This%20will%20help%20us%20guide%20you%20more%20effectively.%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3EThe%20i.MX95%20processor%20offers%20extensive%20configuration%20options%20because%20it%20is%20designed%20for%20safety-%20and%20security-critical%20applications.%20If%20you%20are%20not%20familiar%20with%20the%20MPU%20architecture%20and%20its%20functionalities%2C%20you%20might%20find%20it%20easier%20to%20work%20with%20a%20simpler%20MPU%20such%20as%20the%20i.MX93%20or%20i.MX8MM%2C%20which%20are%20better%20suited%20for%20less%20complex%20use%20cases.%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3EBest%20Regards!%3C%2FP%3E%0A%3CP%3EChavira%3C%2FP%3E%3C%2FLINGO-BODY%3E