[Nouveau] [PATCH v4 30/37] clk: seperate the locking from the implementation in nvkm_clk_update
Martin Peres
martin.peres at free.fr
Wed Apr 20 22:00:44 UTC 2016
sepArate
On 18/04/16 22:14, Karol Herbst wrote:
Would be nice to say what for.
With a better commit message and the typo fixed:
Reviewed-by: Martin Peres <martin.peres at free.fr>
> Signed-off-by: Karol Herbst <nouveau at karolherbst.de>
> ---
> drm/nouveau/nvkm/subdev/clk/base.c | 16 ++++++++++++----
> 1 file changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/drm/nouveau/nvkm/subdev/clk/base.c b/drm/nouveau/nvkm/subdev/clk/base.c
> index 7f86e41..d6f239f 100644
> --- a/drm/nouveau/nvkm/subdev/clk/base.c
> +++ b/drm/nouveau/nvkm/subdev/clk/base.c
> @@ -319,14 +319,11 @@ nvkm_pstate_prog(struct nvkm_clk *clk, int pstateid)
> }
>
> static void
> -nvkm_clk_update_work(struct work_struct *work)
> +nvkm_clk_update_impl(struct nvkm_clk *clk)
> {
> - struct nvkm_clk *clk = container_of(work, typeof(*clk), work);
> struct nvkm_subdev *subdev = &clk->subdev;
> int pstate, ret;
>
> - if (!atomic_xchg(&clk->waiting, 0))
> - return;
> clk->pwrsrc = power_supply_is_system_supplied();
>
> if (clk->pstate)
> @@ -350,6 +347,17 @@ nvkm_clk_update_work(struct work_struct *work)
> nvkm_error(subdev, "error setting pstate %d: %d\n",
> pstate, ret);
> }
> +}
> +
> +static void
> +nvkm_clk_update_work(struct work_struct *work)
> +{
> + struct nvkm_clk *clk = container_of(work, typeof(*clk), work);
> +
> + if (!atomic_xchg(&clk->waiting, 0))
> + return;
> +
> + nvkm_clk_update_impl(clk);
>
> wake_up_all(&clk->wait);
> nvkm_notify_get(&clk->pwrsrc_ntfy);
More information about the Nouveau
mailing list