From f6c921ec97323c1eab7d3b8a0cda73abf041a00f Mon Sep 17 00:00:00 2001 From: Konsta Holtta Date: Mon, 5 Jun 2017 16:22:30 +0300 Subject: gpu: nvgpu: bring back tegra idle registration To make do_idle work when nvgpu is built as a module, reverse the order of call dependencies for do_idle. Don't provide visible gk20a_do_{idle,unidle}() functions for the kernel but instead call the kernel for registering and unregistering pointers to them when the driver loads and unloads. Refactor the internal __gk20a_do_{idle,unidle} functions to take a struct gk20a * instead of struct device *, and use the callback api for providing that g instead of retrieving the plat device from device tree. Bug 200290850 Change-Id: Ibef8b069302e547b298069cbb97734f461a10cc3 Signed-off-by: Konsta Holtta Reviewed-on: http://git-master/r/1493774 Reviewed-by: mobile promotions Tested-by: mobile promotions --- include/linux/gk20a.h | 35 ----------------------------------- 1 file changed, 35 deletions(-) delete mode 100644 include/linux/gk20a.h (limited to 'include/linux') diff --git a/include/linux/gk20a.h b/include/linux/gk20a.h deleted file mode 100644 index ec81faf4..00000000 --- a/include/linux/gk20a.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * gk20a GPU driver - * - * Copyright (c) 2014-2016, 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, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#ifndef __GK20A_H -#define __GK20A_H - -#include - -struct channel_gk20a; -struct platform_device; - -#if defined(CONFIG_GK20A) && defined(CONFIG_PM) -int gk20a_do_idle(void); -int gk20a_do_unidle(void); -#else -static inline int gk20a_do_idle(void) { return -ENOSYS; } -static inline int gk20a_do_unidle(void) { return -ENOSYS; } -#endif - -#endif -- cgit v1.2.2