Latest Frequency driver implementation

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

Latest Frequency driver implementation

5,682 Views
arunkvnss
Contributor I

Its really a great architecture and design which is introduced as a part of IMX 8 series,I just went through the CPUREq driver code in the 4.14.98 kernel version, And observed that an new file name cpufreq_imx8 has been introduced, which consist of a driver implementation for the  cpu frequency scaling, previously for the sabra like boards, generic driver has been working for the same. And understood that during the set target function callback for the latest driver, we just write the cpu frequency using smc call and retrieve the same frequency to the cpu related structure for giving the changes back to the userspace.

And i wonder how come the Voltage regulator thing is managed for this ! :smileyhappy:, Previous generic device driver was setting the regulator voltage during the set callback. Finally i reached to an another point that the new architecture contains an secure firmware which is running in one of the arm core. And which includes the pmic pf8100 driver which mainly do the voltage set and get, And Linux kernel driver interacts with the secure firmware using an inter processor communication mechanism.  

So i expected some code in the latest cpu freq driver code, which will communicate with the SCFW firmware and ask to set the voltage. But i did not see that, I might be wrong and the same will handled in another and better way too, But just for a curiosity i would like to ask this, How come the corresponding voltage (read from the opp) is set to the pmic during the frequency change. ? And all device driver from the kernel should be go through the secure channel only ? 

0 Kudos
2 Replies

5,524 Views
arunkvnss
Contributor I

Hi team,

Please have look on my queries, After spending time with the source code, I got a little insight that the Linux kernel is making a Secure monitor call to the Atmel trusted firmware, and this guy inform the SCU  using a remote procedure call (inter processor communication) , And finally the scu firmware (SCFW) will set the voltage to the PMIC.So far very fine, And the confusing thing is that from where the  SCFW will get the voltage corresponding to the frequency, Previously it was part of the kernel DTB, How that is managed under SCFW firmware ?. Kindly reply me with information, And During boot up how the board_XXXXXX functions are invoked ? I didnt find any reference in the source code for those functions,

Thanks in advance :smileyhappy:.

0 Kudos

5,524 Views
mariuslucianand
NXP Employee
NXP Employee

Hello arunkvnss@gmail.com‌,

 

This community space do not cover the topic you need assistance on.

Please create new thread on the i.MX Processors  community space or new NXP support case according to following procedure:https://community.nxp.com/docs/DOC-329745

Hope this helps,

Marius

0 Kudos