From 5205ab23a29d6bb2d94eecae67ba344f438c5045 Mon Sep 17 00:00:00 2001 From: Deepak Nibade Date: Fri, 2 Jun 2017 14:51:08 +0530 Subject: gpu: nvgpu: use nvgpu specific nvhost APIs Remove use of linux specifix header files and and use nvgpu specific header file instead This is needed to remove all Linux dependencies from nvgpu driver Replace all nvhost_*() calls by nvgpu_nvhost_*() calls from new nvgpu library Jira NVGPU-29 Change-Id: I32d59628ca5ab3ece80a10eb5aefa150b1da448b Signed-off-by: Deepak Nibade Reviewed-on: http://git-master/r/1494648 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: svccoveritychecker GVS: Gerrit_Virtual_Submit Reviewed-by: Bharat Nihalani --- drivers/gpu/nvgpu/gv11b/platform_gv11b_tegra.c | 33 ++++++++------------------ 1 file changed, 10 insertions(+), 23 deletions(-) (limited to 'drivers/gpu/nvgpu/gv11b/platform_gv11b_tegra.c') diff --git a/drivers/gpu/nvgpu/gv11b/platform_gv11b_tegra.c b/drivers/gpu/nvgpu/gv11b/platform_gv11b_tegra.c index 4b600cdd..2b6f8759 100644 --- a/drivers/gpu/nvgpu/gv11b/platform_gv11b_tegra.c +++ b/drivers/gpu/nvgpu/gv11b/platform_gv11b_tegra.c @@ -19,9 +19,8 @@ #include #include #include -#ifdef CONFIG_TEGRA_GK20A_NVHOST -#include -#endif +#include +#include #include @@ -40,38 +39,26 @@ static void gr_gv11b_remove_sysfs(struct device *dev); static int gv11b_tegra_probe(struct device *dev) { - int err = 0; struct gk20a_platform *platform = dev_get_drvdata(dev); - struct gk20a *g = platform->g; - struct device_node *np = dev->of_node; - struct device_node *host1x_node; - struct platform_device *host1x_pdev; - const __be32 *host1x_ptr; - #ifdef CONFIG_TEGRA_GK20A_NVHOST - host1x_ptr = of_get_property(np, "nvidia,host1x", NULL); - if (!host1x_ptr) { - dev_err(dev, "host1x device not available"); - return -ENOSYS; - } + struct gk20a *g = platform->g; + int err = 0; - host1x_node = of_find_node_by_phandle(be32_to_cpup(host1x_ptr)); - host1x_pdev = of_find_device_by_node(host1x_node); - if (!host1x_pdev) { + err = nvgpu_get_nvhost_dev(g); + if (err) { dev_err(dev, "host1x device not available"); - return -ENOSYS; + return err; } - platform->g->host1x_dev = host1x_pdev; - err = nvhost_syncpt_unit_interface_get_aperture( - g->host1x_dev, + err = nvgpu_nvhost_syncpt_unit_interface_get_aperture( + g->nvhost_dev, &g->syncpt_unit_base, &g->syncpt_unit_size); if (err) { dev_err(dev, "Failed to get syncpt interface"); return -ENOSYS; } - g->syncpt_size = nvhost_syncpt_unit_interface_get_byte_offset(1); + g->syncpt_size = nvgpu_nvhost_syncpt_unit_interface_get_byte_offset(1); gk20a_dbg_info("syncpt_unit_base %llx syncpt_unit_size %zx size %x\n", g->syncpt_unit_base, g->syncpt_unit_size, g->syncpt_size); -- cgit v1.2.2