diff --git a/drivers/gpu/nvgpu/gk20a/gk20a_scale.c b/drivers/gpu/nvgpu/gk20a/gk20a_scale.c index e5c93db5b..6d60d8998 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a_scale.c +++ b/drivers/gpu/nvgpu/gk20a/gk20a_scale.c @@ -251,6 +251,20 @@ static int gk20a_scale_get_dev_status(struct device *dev, return 0; } +/* + * get_cur_freq(struct device *dev, unsigned long *freq) + * + * This function gets the current GPU clock rate. + */ + +static int get_cur_freq(struct device *dev, unsigned long *freq) +{ + struct gk20a_platform *platform = dev_get_drvdata(dev); + *freq = platform->clk_get_rate(dev); + return 0; +} + + /* * gk20a_scale_init(dev) */ @@ -287,6 +301,7 @@ void gk20a_scale_init(struct device *dev) profile->devfreq_profile.target = gk20a_scale_target; profile->devfreq_profile.get_dev_status = gk20a_scale_get_dev_status; + profile->devfreq_profile.get_cur_freq = get_cur_freq; devfreq = devfreq_add_device(dev, &profile->devfreq_profile,