From 93eea1d72934b28db4707e5aa7ab4dab65d89551 Mon Sep 17 00:00:00 2001 From: Alex Waterman Date: Thu, 22 Sep 2016 10:07:53 -0700 Subject: gpu: nvgpu: Move CE cleanup Move the CE cleanup to before the FIFO cleanup. Since the CE closes a channel during its cleanup the FIFO needs to be initialized since the FIFO code maintains the vmalloc()'ed channels. Bug 1816516 Change-Id: Ia7a97059a12a0c2b52368ffe411e597f803e8e6e Signed-off-by: Alex Waterman Reviewed-on: http://git-master/r/1225613 (cherry picked from commit 707bd2a6d4672c6a7b7a8b2e581ea3a606ed971d) Reviewed-on: http://git-master/r/1240106 GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom --- drivers/gpu/nvgpu/gk20a/mm_gk20a.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'drivers/gpu/nvgpu/gk20a/mm_gk20a.h') diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.h b/drivers/gpu/nvgpu/gk20a/mm_gk20a.h index b2cca072..1a9bee5f 100644 --- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.h @@ -376,6 +376,11 @@ struct mm_gk20a { #ifdef CONFIG_ARCH_TEGRA_18x_SOC struct mem_desc bar2_desc; #endif + /* + * Separate function to cleanup the CE since it requires a channel to + * be closed which must happen before fifo cleanup. + */ + void (*remove_ce_support)(struct mm_gk20a *mm); void (*remove_support)(struct mm_gk20a *mm); bool sw_ready; int physical_bits; -- cgit v1.2.2