Re: [PATCH] clk: tegra: dfll: Fix drvdata overwriting issue

From: Thierry Reding
Date: Thu Oct 19 2017 - 04:23:24 EST


On Thu, Oct 12, 2017 at 04:09:59PM -0700, Nicolin Chen wrote:
> Both tegra124-dfll and clk-dfll are using platform_set_drvdata
> to set drvdata of the exact same pdev while they use different
> pointers for the drvdata. Once the drvdata has been overwritten
> by tegra124-dfll, clk-dfll will never get its td pointer as it
> expects.
>
> Since tegra124-dfll merely needs its soc pointer in its remove
> function, this patch fixes the bug by removing the overwriting
> in the tegra124-dfll file and letting the tegra_dfll_unregister
> return an soc pointer for it.
>
> Signed-off-by: Nicolin Chen <nicoleotsuka@xxxxxxxxx>
> ---
>
> As I don't have a T124 platform, I can't verify it on a board.
> If someone could provide a Tested-by, it would be very helpful.
> The test could be a simple system suspend/resume that activates
> runtime_suspend/resume() where a platform_get_drvdata() would
> be called. -- Nicolin
>
> drivers/clk/tegra/clk-dfll.c | 10 +++++-----
> drivers/clk/tegra/clk-dfll.h | 2 +-
> drivers/clk/tegra/clk-tegra124-dfll-fcpu.c | 12 +++++-------
> 3 files changed, 11 insertions(+), 13 deletions(-)

Applied, thanks.

Thierry

Attachment: signature.asc
Description: PGP signature