Messages in this thread | | | Date | Thu, 23 Feb 2023 15:06:26 +0530 | Subject | Re: [Patch v2 7/9] cpufreq: tegra194: add OPP support and set bandwidth | From | Sumit Gupta <> |
| |
On 22/02/23 09:33, Viresh Kumar wrote: > External email: Use caution opening links or attachments > > > On 20-02-23, 19:35, Sumit Gupta wrote: >> +static int tegra_cpufreq_set_bw(struct cpufreq_policy *policy, unsigned long freq_khz) >> +{ >> + struct dev_pm_opp *opp; >> + struct device *dev; >> + int ret; >> + >> + dev = get_cpu_device(policy->cpu); >> + if (!dev) >> + return -ENODEV; >> + >> + opp = dev_pm_opp_find_freq_exact(dev, freq_khz * KHZ, true); >> + if (IS_ERR(opp)) >> + return PTR_ERR(opp); >> + >> + ret = dev_pm_opp_set_opp(dev, opp); >> + dev_pm_opp_put(opp); > > What about dev_pm_opp_set_rate() instead ? > >> + return ret; >> +} > > -- > viresh
Tried using it and got below crash. It seems to be coming because we don't have clocks property within CPU node for SoC's having BPMP-FW.
Unable to handle kernel NULL pointer dereference at virtual address 000000000000002e .... Call trace: clk_round_rate+0x38/0xd8 dev_pm_opp_set_rate+0xe4/0x1a8 tegra194_cpufreq_set_target+0x74/0x88 __cpufreq_driver_target+0x154/0x250 cpufreq_online+0x7b4/0x9ac
Thanks, Sumit
| |