On Wed, 15 Nov 2023 at 09:55, Manivannan Sadhasivam <[email protected]> wrote: > > + Dmitry > > On Wed, Nov 15, 2023 at 12:02:01PM +0530, Viresh Kumar wrote: > > On 11-10-23, 11:18, Viresh Kumar wrote: > > > On 16-02-23, 12:17, Manivannan Sadhasivam wrote: > > > > Sorry for the delay. I've submitted the dts changes [1] to handle the > > > > CPU clocks > > > > for the rest of the Qcom SoCs. > > > > > > > > For the Qcom GPUs, I've CCed Rob Clark who is the maintainer. > > > > > > > > Rob, here is the background on the issue that is being discussed in this > > > > thread: > > > > > > > > Viresh submitted a series [2] back in July to improve the OPP > > > > framework, but > > > > that ended up breaking cpufreq on multiple Qcom SoCs. After > > > > investigation, it > > > > was found that the series was expecting the clocks supplied to the OPP > > > > end > > > > devices like CPUs/GPUs to be modeled in DT. But on Qcom platforms even > > > > though > > > > the clocks for these nodes are supplied by a separate entity, like > > > > CPUFreq > > > > (EPSS/OSM) for CPUs and GMU for GPUs, there was no clock property > > > > present in > > > > the respective nodes. And these nodes are using OPP table to switch > > > > frequencies > > > > dynamically. > > > > > > > > While the series was merged with a hack that still allows the OPP nodes > > > > without > > > > clock property in DT, we came to an agreement that the clock hierarchy > > > > should > > > > be modeled properly. > > > > > > > > So I submitted a series [3] that added clock provider support to > > > > cpufreq driver > > > > and sourced the clock from cpufreq node to CPU nodes in DT. > > > > > > > > Likewise, it should be handled for the adreno GPUs whose clock is > > > > managed by > > > > GMU on newer SoCs. Can you take a look at this? > > > > > > Any update on this ? > > > > Mani, > > > > Ping. > > > > Dmitry, can you please look into this? Please read my above reply to Rob > to get the background.
The issue is that we don't have an actual clock that corresponds to the GPU frequency. Not even a read-only one. Can we get away by manually setting config_clocks()? Also could you please remind me, can we sleep inside the config_clks() callback? -- With best wishes Dmitry
