diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c index 93852c171..6f650a3bd 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gk20a.c @@ -40,6 +40,7 @@ #include #include #include +#include #include @@ -1298,6 +1299,10 @@ static int gk20a_pm_init(struct platform_device *dev) if (IS_ENABLED(CONFIG_PM_GENERIC_DOMAINS)) err = gk20a_pm_initialise_domain(dev); + platform->reset_control = devm_reset_control_get(&dev->dev, NULL); + if (IS_ERR(platform->reset_control)) + platform->reset_control = NULL; + return err; } diff --git a/drivers/gpu/nvgpu/gk20a/platform_gk20a.h b/drivers/gpu/nvgpu/gk20a/platform_gk20a.h index 29c88f44d..46f83d6da 100644 --- a/drivers/gpu/nvgpu/gk20a/platform_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/platform_gk20a.h @@ -3,7 +3,7 @@ * * GK20A Platform (SoC) Interface * - * Copyright (c) 2014, NVIDIA CORPORATION. All rights reserved. + * Copyright (c) 2014-2015, NVIDIA CORPORATION. All rights reserved. * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, @@ -55,6 +55,9 @@ struct gk20a_platform { struct clk *clk[3]; int num_clks; + /* Reset control for device */ + struct reset_control *reset_control; + /* Delay before rail gated */ int railgate_delay;