From a299b8857f6dca1ef47f197fd09a897ea0b1964d Mon Sep 17 00:00:00 2001 From: Mahantesh Kumbar Date: Fri, 15 Mar 2019 16:40:47 +0530 Subject: [PATCH] gpu: nvgpu: Move HAL gsp code to hal/gsp folder Moved GSP HAL code from gv100/gsp_gv100.* to hal/gsp/gsp_gv100.* JIRA NVGPU-2039 Change-Id: Id85d5355dcb2b0831afd177568a9a2ba3faec664 Signed-off-by: Mahantesh Kumbar Reviewed-on: https://git-master.nvidia.com/r/2073675 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/Makefile | 4 ++-- drivers/gpu/nvgpu/Makefile.sources | 4 ++-- drivers/gpu/nvgpu/common/acr/acr_tu104.c | 3 +-- drivers/gpu/nvgpu/gv100/hal_gv100.c | 3 ++- drivers/gpu/nvgpu/{gv100 => hal/gsp}/gsp_gv100.c | 4 ++-- drivers/gpu/nvgpu/{gv100 => hal/gsp}/gsp_gv100.h | 2 +- drivers/gpu/nvgpu/include/nvgpu/gk20a.h | 1 + drivers/gpu/nvgpu/tu104/hal_tu104.c | 3 ++- 8 files changed, 13 insertions(+), 11 deletions(-) rename drivers/gpu/nvgpu/{gv100 => hal/gsp}/gsp_gv100.c (97%) rename drivers/gpu/nvgpu/{gv100 => hal/gsp}/gsp_gv100.h (95%) diff --git a/drivers/gpu/nvgpu/Makefile b/drivers/gpu/nvgpu/Makefile index 33b9dc38d..6155887af 100644 --- a/drivers/gpu/nvgpu/Makefile +++ b/drivers/gpu/nvgpu/Makefile @@ -218,7 +218,8 @@ nvgpu-y += \ hal/nvlink/minion_gv100.o \ hal/nvlink/minion_tu104.o \ hal/nvlink/link_mode_transitions_gv100.o \ - hal/nvlink/link_mode_transitions_tu104.o + hal/nvlink/link_mode_transitions_tu104.o \ + hal/gsp/gsp_gv100.o # Linux specific parts of nvgpu. nvgpu-y += \ @@ -485,7 +486,6 @@ nvgpu-y += \ gv100/fifo_gv100.o \ gv100/gr_gv100.o \ gv100/hal_gv100.o \ - gv100/gsp_gv100.o \ gv100/clk_gv100.o \ tu104/mm_tu104.o \ tu104/hal_tu104.o \ diff --git a/drivers/gpu/nvgpu/Makefile.sources b/drivers/gpu/nvgpu/Makefile.sources index a5aeab072..f8773981d 100644 --- a/drivers/gpu/nvgpu/Makefile.sources +++ b/drivers/gpu/nvgpu/Makefile.sources @@ -278,7 +278,6 @@ srcs += common/sim.c \ gv100/fifo_gv100.c \ gv100/gr_gv100.c \ gv100/hal_gv100.c \ - gv100/gsp_gv100.c \ gv100/clk_gv100.c \ common/mc/mc_tu104.c \ tu104/bios_tu104.c \ @@ -373,7 +372,8 @@ srcs += common/sim.c \ hal/nvlink/minion_gv100.c \ hal/nvlink/minion_tu104.c \ hal/nvlink/link_mode_transitions_gv100.c \ - hal/nvlink/link_mode_transitions_tu104.c + hal/nvlink/link_mode_transitions_tu104.c \ + hal/gsp/gsp_gv100.c ifeq ($(NVGPU_DEBUGGER),1) srcs += common/debugger.c diff --git a/drivers/gpu/nvgpu/common/acr/acr_tu104.c b/drivers/gpu/nvgpu/common/acr/acr_tu104.c index 234f9e219..3c85cb272 100644 --- a/drivers/gpu/nvgpu/common/acr/acr_tu104.c +++ b/drivers/gpu/nvgpu/common/acr/acr_tu104.c @@ -29,7 +29,6 @@ #include "acr_gv100.h" #include "acr_tu104.h" -#include "gv100/gsp_gv100.h" #include "tu104/sec2_tu104.h" @@ -114,7 +113,7 @@ static void nvgpu_tu104_acr_asb_sw_init(struct gk20a *g, acr_asb->bl_dmem_desc_size = (u32)sizeof(struct flcn_bl_dmem_desc_v1); acr_asb->acr_flcn = &g->gsp_flcn; - acr_asb->acr_flcn_setup_boot_config = gv100_gsp_flcn_setup_boot_config; + acr_asb->acr_flcn_setup_boot_config = g->ops.gsp.falcon_setup_boot_config; } void nvgpu_tu104_acr_sw_init(struct gk20a *g, struct nvgpu_acr *acr) diff --git a/drivers/gpu/nvgpu/gv100/hal_gv100.c b/drivers/gpu/nvgpu/gv100/hal_gv100.c index a521e677c..469459f61 100644 --- a/drivers/gpu/nvgpu/gv100/hal_gv100.c +++ b/drivers/gpu/nvgpu/gv100/hal_gv100.c @@ -61,6 +61,7 @@ #include "hal/gr/init/gr_init_gv11b.h" #include "hal/gr/hwpm_map/hwpm_map_gv100.h" #include "hal/falcon/falcon_gk20a.h" +#include "hal/gsp/gsp_gv100.h" #include "common/ptimer/ptimer_gk20a.h" #include "common/xve/xve_gp106.h" @@ -130,7 +131,6 @@ #include "gv100.h" #include "hal_gv100.h" -#include "gsp_gv100.h" #include "gv100/bios_gv100.h" #include "gv100/fifo_gv100.h" #include "gv100/gr_gv100.h" @@ -1241,6 +1241,7 @@ static const struct gpu_ops gv100_ops = { }, .gsp = { .falcon_base_addr = gv100_gsp_falcon_base_addr, + .falcon_setup_boot_config = gv100_gsp_flcn_setup_boot_config, .gsp_reset = gv100_gsp_reset, }, .chip_init_gpu_characteristics = gv100_init_gpu_characteristics, diff --git a/drivers/gpu/nvgpu/gv100/gsp_gv100.c b/drivers/gpu/nvgpu/hal/gsp/gsp_gv100.c similarity index 97% rename from drivers/gpu/nvgpu/gv100/gsp_gv100.c rename to drivers/gpu/nvgpu/hal/gsp/gsp_gv100.c index a83f25304..5f81309cf 100644 --- a/drivers/gpu/nvgpu/gv100/gsp_gv100.c +++ b/drivers/gpu/nvgpu/hal/gsp/gsp_gv100.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018-2019, NVIDIA CORPORATION. All rights reserved. + * Copyright (c) 2019, NVIDIA CORPORATION. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -26,7 +26,7 @@ #include #include -#include "gv100/gsp_gv100.h" +#include "gsp_gv100.h" #include diff --git a/drivers/gpu/nvgpu/gv100/gsp_gv100.h b/drivers/gpu/nvgpu/hal/gsp/gsp_gv100.h similarity index 95% rename from drivers/gpu/nvgpu/gv100/gsp_gv100.h rename to drivers/gpu/nvgpu/hal/gsp/gsp_gv100.h index fca781851..0874b6d8f 100644 --- a/drivers/gpu/nvgpu/gv100/gsp_gv100.h +++ b/drivers/gpu/nvgpu/hal/gsp/gsp_gv100.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, NVIDIA CORPORATION. All rights reserved. + * Copyright (c) 2019, NVIDIA CORPORATION. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), diff --git a/drivers/gpu/nvgpu/include/nvgpu/gk20a.h b/drivers/gpu/nvgpu/include/nvgpu/gk20a.h index 3b8003428..abec58547 100644 --- a/drivers/gpu/nvgpu/include/nvgpu/gk20a.h +++ b/drivers/gpu/nvgpu/include/nvgpu/gk20a.h @@ -1712,6 +1712,7 @@ struct gpu_ops { } sec2; struct { u32 (*falcon_base_addr)(void); + void (*falcon_setup_boot_config)(struct gk20a *g); int (*gsp_reset)(struct gk20a *g); } gsp; void (*semaphore_wakeup)(struct gk20a *g, bool post_events); diff --git a/drivers/gpu/nvgpu/tu104/hal_tu104.c b/drivers/gpu/nvgpu/tu104/hal_tu104.c index a94517ad7..4a0379150 100644 --- a/drivers/gpu/nvgpu/tu104/hal_tu104.c +++ b/drivers/gpu/nvgpu/tu104/hal_tu104.c @@ -66,6 +66,7 @@ #include "hal/gr/init/gr_init_tu104.h" #include "hal/gr/hwpm_map/hwpm_map_gv100.h" #include "hal/falcon/falcon_gk20a.h" +#include "hal/gsp/gsp_gv100.h" #include "common/ptimer/ptimer_gk20a.h" #include "common/xve/xve_gp106.h" @@ -122,7 +123,6 @@ #include "gm20b/mm_gm20b.h" #include "gv100/clk_gv100.h" -#include "gv100/gsp_gv100.h" #include "gp106/sec2_gp106.h" #include "gp106/bios_gp106.h" @@ -1269,6 +1269,7 @@ static const struct gpu_ops tu104_ops = { }, .gsp = { .falcon_base_addr = gv100_gsp_falcon_base_addr, + .falcon_setup_boot_config = gv100_gsp_flcn_setup_boot_config, .gsp_reset = gv100_gsp_reset, }, .top = {