gpu: nvgpu: remove circular dependency between hal.c and gk20a/

gk20a/hal.c depends on HAL init functions in all chips. But all chips
also depend on gk20a. That creates a circular dependency. In order to
solve the above, move gpu_init_hal and gk20a_detect_chip to
common/init/hal_init.c. These methods are declared in
include/nvgpu/hal_init.h. Also, the above methods are renamed to
nvgpu_init_hal and nvgpu_detect_chip respectively.

Jira NVGPU-613

Change-Id: Ib0df90287d4491571e4751475739b75fabd1041b
Signed-off-by: Debarshi Dutta <ddutta@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1827576
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
ddutta
2018-09-17 13:09:18 +05:30
committed by mobile promotions
parent c5810a670d
commit c616fba1eb
7 changed files with 61 additions and 50 deletions

View File

@@ -33,6 +33,7 @@
#include <soc/tegra/fuse.h>
#include <nvgpu/hal_init.h>
#include <nvgpu/dma.h>
#include <nvgpu/kmem.h>
#include <nvgpu/nvgpu_common.h>
@@ -266,7 +267,7 @@ int gk20a_pm_finalize_poweron(struct device *dev)
INIT_WORK(&l->nonstall_fn_work, nvgpu_intr_nonstall_cb);
}
err = gk20a_detect_chip(g);
err = nvgpu_detect_chip(g);
if (err)
goto done;