static int tz_stop(struct devfreq *devfreq) { struct devfreq_msm_adreno_tz_data *priv = devfreq->data; kgsl_devfreq_del_notifier(devfreq->dev.parent, &priv->nb); return 0; }
static int tz_stop(struct devfreq *devfreq) { struct devfreq_msm_adreno_tz_data *priv = devfreq->data; kgsl_devfreq_del_notifier(devfreq->dev.parent, &priv->nb); /* leaving the governor and cleaning the pointer to private data */ devfreq->data = NULL; return 0; }
static int tz_stop(struct devfreq *devfreq) { struct devfreq_msm_adreno_tz_data *priv = devfreq->data; struct msm_adreno_extended_profile *gpu_profile = container_of( (devfreq->profile), struct msm_adreno_extended_profile, profile); kgsl_devfreq_del_notifier(devfreq->dev.parent, &priv->nb); flush_workqueue(gpu_profile->partner_wq); destroy_workqueue(gpu_profile->partner_wq); /* leaving the governor and cleaning the pointer to private data */ devfreq->data = NULL; partner_gpu_profile = NULL; return 0; }