summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2017-04-14 16:19:04 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-05-18 18:14:31 -0400
commitb7fca01b0e01544c3a66d2e05a8b99bcb621a004 (patch)
treed83d23a5f2ed2ad0ea30caa2b489b4bd0039b790
parentb1d303685b384d58064d8b18ec97e1302bcbba88 (diff)
gpu: nvgpu: Scrub gk20a_platform dependencies
Remove gk20a_platform dependencies from gk20a.h. This makes gk20a_platform a Linux platform specific data structure. Add #include for platform_gk20a.h in the source files that still depend on Linux. JIRA NVGPU-16 Change-Id: Ib098accd34a1f5066eb8680c387f9b178169f3f0 Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: http://git-master/r/1463547 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
-rw-r--r--drivers/gpu/nvgpu/clk/clk_arb.c8
-rw-r--r--drivers/gpu/nvgpu/clk/clk_common.c1
-rw-r--r--drivers/gpu/nvgpu/clk/clk_mclk.c3
-rw-r--r--drivers/gpu/nvgpu/common/linux/dma.c1
-rw-r--r--drivers/gpu/nvgpu/common/linux/driver_common.c1
-rw-r--r--drivers/gpu/nvgpu/common/linux/firmware.c1
-rw-r--r--drivers/gpu/nvgpu/common/linux/ioctl.c1
-rw-r--r--drivers/gpu/nvgpu/common/linux/ioctl_as.c1
-rw-r--r--drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c1
-rw-r--r--drivers/gpu/nvgpu/common/linux/ioctl_tsg.c1
-rw-r--r--drivers/gpu/nvgpu/common/linux/module.c1
-rw-r--r--drivers/gpu/nvgpu/common/linux/timers.c1
-rw-r--r--drivers/gpu/nvgpu/common/mm/nvgpu_allocator.c2
-rw-r--r--drivers/gpu/nvgpu/gk20a/cde_gk20a.c1
-rw-r--r--drivers/gpu/nvgpu/gk20a/ce2_gk20a.c4
-rw-r--r--drivers/gpu/nvgpu/gk20a/channel_gk20a.c4
-rw-r--r--drivers/gpu/nvgpu/gk20a/ctxsw_trace_gk20a.c1
-rw-r--r--drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c1
-rw-r--r--drivers/gpu/nvgpu/gk20a/debug_gk20a.c1
-rw-r--r--drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.c1
-rw-r--r--drivers/gpu/nvgpu/gk20a/fifo_gk20a.c4
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.c1
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.h34
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a_scale.c1
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c1
-rw-r--r--drivers/gpu/nvgpu/gk20a/gr_gk20a.c5
-rw-r--r--drivers/gpu/nvgpu/gk20a/mm_gk20a.c7
-rw-r--r--drivers/gpu/nvgpu/gk20a/platform_gk20a.h34
-rw-r--r--drivers/gpu/nvgpu/gk20a/pmu_gk20a.c12
-rw-r--r--drivers/gpu/nvgpu/gk20a/sched_gk20a.c1
-rw-r--r--drivers/gpu/nvgpu/gk20a/sim_gk20a.c1
-rw-r--r--drivers/gpu/nvgpu/gm206/bios_gm206.c1
-rw-r--r--drivers/gpu/nvgpu/gm20b/clk_gm20b.c1
-rw-r--r--drivers/gpu/nvgpu/gp106/clk_gp106.c3
-rw-r--r--drivers/gpu/nvgpu/gp106/therm_gp106.c4
-rw-r--r--drivers/gpu/nvgpu/gp106/xve_gp106.c4
-rw-r--r--drivers/gpu/nvgpu/gp10b/gp10b_sysfs.c1
-rw-r--r--drivers/gpu/nvgpu/gp10b/mm_gp10b.c1
-rw-r--r--drivers/gpu/nvgpu/pmgr/pmgr.c1
-rw-r--r--drivers/gpu/nvgpu/pmgr/pmgrpmu.c1
-rw-r--r--drivers/gpu/nvgpu/pmgr/pwrpolicy.c1
-rw-r--r--drivers/gpu/nvgpu/tegra/linux/clk.c1
-rw-r--r--drivers/gpu/nvgpu/vgpu/vgpu.h1
43 files changed, 106 insertions, 51 deletions
diff --git a/drivers/gpu/nvgpu/clk/clk_arb.c b/drivers/gpu/nvgpu/clk/clk_arb.c
index 15439817..4400f3bb 100644
--- a/drivers/gpu/nvgpu/clk/clk_arb.c
+++ b/drivers/gpu/nvgpu/clk/clk_arb.c
@@ -26,10 +26,15 @@
26#include <nvgpu/atomic.h> 26#include <nvgpu/atomic.h>
27#include <nvgpu/bug.h> 27#include <nvgpu/bug.h>
28#include <nvgpu/kref.h> 28#include <nvgpu/kref.h>
29#include <nvgpu/log.h>
29 30
30#include "gk20a/gk20a.h" 31#include "gk20a/gk20a.h"
31#include "clk/clk_arb.h" 32#include "clk/clk_arb.h"
32 33
34#ifdef CONFIG_DEBUG_FS
35#include "gk20a/platform_gk20a.h"
36#endif
37
33#define MAX_F_POINTS 256 38#define MAX_F_POINTS 256
34#define DEFAULT_EVENT_NUMBER 32 39#define DEFAULT_EVENT_NUMBER 32
35 40
@@ -1482,8 +1487,7 @@ static long nvgpu_clk_arb_ioctl_event_dev(struct file *filp, unsigned int cmd,
1482 (struct nvgpu_gpu_set_event_filter_args *)buf); 1487 (struct nvgpu_gpu_set_event_filter_args *)buf);
1483 break; 1488 break;
1484 default: 1489 default:
1485 dev_dbg(dev_from_gk20a(g), 1490 nvgpu_warn(g, "unrecognized event ioctl cmd: 0x%x", cmd);
1486 "unrecognized event ioctl cmd: 0x%x", cmd);
1487 err = -ENOTTY; 1491 err = -ENOTTY;
1488 } 1492 }
1489 1493
diff --git a/drivers/gpu/nvgpu/clk/clk_common.c b/drivers/gpu/nvgpu/clk/clk_common.c
index 3230ded0..0704ba2b 100644
--- a/drivers/gpu/nvgpu/clk/clk_common.c
+++ b/drivers/gpu/nvgpu/clk/clk_common.c
@@ -17,6 +17,7 @@
17#include <linux/clk.h> 17#include <linux/clk.h>
18 18
19#include "gk20a/gk20a.h" 19#include "gk20a/gk20a.h"
20#include "gk20a/platform_gk20a.h"
20 21
21struct clk *gk20a_clk_get(struct gk20a *g) 22struct clk *gk20a_clk_get(struct gk20a *g)
22{ 23{
diff --git a/drivers/gpu/nvgpu/clk/clk_mclk.c b/drivers/gpu/nvgpu/clk/clk_mclk.c
index cf04c98c..3996c0e1 100644
--- a/drivers/gpu/nvgpu/clk/clk_mclk.c
+++ b/drivers/gpu/nvgpu/clk/clk_mclk.c
@@ -18,6 +18,9 @@
18 18
19#include "gk20a/gk20a.h" 19#include "gk20a/gk20a.h"
20#include "gk20a/pmu_gk20a.h" 20#include "gk20a/pmu_gk20a.h"
21#ifdef CONFIG_DEBUG_FS
22#include "gk20a/platform_gk20a.h"
23#endif
21 24
22#include <nvgpu/hw/gk20a/hw_pwr_gk20a.h> 25#include <nvgpu/hw/gk20a/hw_pwr_gk20a.h>
23#include <nvgpu/hw/gp106/hw_fb_gp106.h> 26#include <nvgpu/hw/gp106/hw_fb_gp106.h>
diff --git a/drivers/gpu/nvgpu/common/linux/dma.c b/drivers/gpu/nvgpu/common/linux/dma.c
index d3d51f18..53f3a35e 100644
--- a/drivers/gpu/nvgpu/common/linux/dma.c
+++ b/drivers/gpu/nvgpu/common/linux/dma.c
@@ -25,6 +25,7 @@
25#include <nvgpu/linux/dma.h> 25#include <nvgpu/linux/dma.h>
26 26
27#include "gk20a/gk20a.h" 27#include "gk20a/gk20a.h"
28#include "gk20a/platform_gk20a.h"
28 29
29#if defined(CONFIG_GK20A_VIDMEM) 30#if defined(CONFIG_GK20A_VIDMEM)
30static u64 __nvgpu_dma_alloc(struct nvgpu_allocator *allocator, dma_addr_t at, 31static u64 __nvgpu_dma_alloc(struct nvgpu_allocator *allocator, dma_addr_t at,
diff --git a/drivers/gpu/nvgpu/common/linux/driver_common.c b/drivers/gpu/nvgpu/common/linux/driver_common.c
index 8855ce1f..0d29223f 100644
--- a/drivers/gpu/nvgpu/common/linux/driver_common.c
+++ b/drivers/gpu/nvgpu/common/linux/driver_common.c
@@ -23,6 +23,7 @@
23 23
24#include "gk20a/gk20a_scale.h" 24#include "gk20a/gk20a_scale.h"
25#include "gk20a/gk20a.h" 25#include "gk20a/gk20a.h"
26#include "gk20a/platform_gk20a.h"
26#include "module.h" 27#include "module.h"
27 28
28#define EMC3D_DEFAULT_RATIO 750 29#define EMC3D_DEFAULT_RATIO 750
diff --git a/drivers/gpu/nvgpu/common/linux/firmware.c b/drivers/gpu/nvgpu/common/linux/firmware.c
index 43728f05..bc4e876a 100644
--- a/drivers/gpu/nvgpu/common/linux/firmware.c
+++ b/drivers/gpu/nvgpu/common/linux/firmware.c
@@ -21,6 +21,7 @@
21#include <nvgpu/firmware.h> 21#include <nvgpu/firmware.h>
22 22
23#include "gk20a/gk20a.h" 23#include "gk20a/gk20a.h"
24#include "gk20a/platform_gk20a.h"
24 25
25static const struct firmware *do_request_firmware(struct device *dev, 26static const struct firmware *do_request_firmware(struct device *dev,
26 const char *prefix, const char *fw_name, int flags) 27 const char *prefix, const char *fw_name, int flags)
diff --git a/drivers/gpu/nvgpu/common/linux/ioctl.c b/drivers/gpu/nvgpu/common/linux/ioctl.c
index 0e88e91e..5a2753a5 100644
--- a/drivers/gpu/nvgpu/common/linux/ioctl.c
+++ b/drivers/gpu/nvgpu/common/linux/ioctl.c
@@ -21,6 +21,7 @@
21#include <nvgpu/nvgpu_common.h> 21#include <nvgpu/nvgpu_common.h>
22 22
23#include "gk20a/gk20a.h" 23#include "gk20a/gk20a.h"
24#include "gk20a/platform_gk20a.h"
24#include "gk20a/dbg_gpu_gk20a.h" 25#include "gk20a/dbg_gpu_gk20a.h"
25#include "gk20a/ctxsw_trace_gk20a.h" 26#include "gk20a/ctxsw_trace_gk20a.h"
26#include "ioctl_channel.h" 27#include "ioctl_channel.h"
diff --git a/drivers/gpu/nvgpu/common/linux/ioctl_as.c b/drivers/gpu/nvgpu/common/linux/ioctl_as.c
index 31d99d26..4bbcedda 100644
--- a/drivers/gpu/nvgpu/common/linux/ioctl_as.c
+++ b/drivers/gpu/nvgpu/common/linux/ioctl_as.c
@@ -26,6 +26,7 @@
26#include <nvgpu/gmmu.h> 26#include <nvgpu/gmmu.h>
27 27
28#include "gk20a/gk20a.h" 28#include "gk20a/gk20a.h"
29#include "gk20a/platform_gk20a.h"
29#include "ioctl_as.h" 30#include "ioctl_as.h"
30 31
31static int gk20a_as_ioctl_bind_channel( 32static int gk20a_as_ioctl_bind_channel(
diff --git a/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c b/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c
index 17090291..8d95dd35 100644
--- a/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c
+++ b/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c
@@ -28,6 +28,7 @@
28#include "ioctl_ctrl.h" 28#include "ioctl_ctrl.h"
29#include "ioctl_tsg.h" 29#include "ioctl_tsg.h"
30#include "gk20a/gk20a.h" 30#include "gk20a/gk20a.h"
31#include "gk20a/platform_gk20a.h"
31#include "gk20a/fence_gk20a.h" 32#include "gk20a/fence_gk20a.h"
32 33
33#include <nvgpu/log.h> 34#include <nvgpu/log.h>
diff --git a/drivers/gpu/nvgpu/common/linux/ioctl_tsg.c b/drivers/gpu/nvgpu/common/linux/ioctl_tsg.c
index e74ae2d7..e67965e1 100644
--- a/drivers/gpu/nvgpu/common/linux/ioctl_tsg.c
+++ b/drivers/gpu/nvgpu/common/linux/ioctl_tsg.c
@@ -26,6 +26,7 @@
26#include <nvgpu/log.h> 26#include <nvgpu/log.h>
27 27
28#include "gk20a/gk20a.h" 28#include "gk20a/gk20a.h"
29#include "gk20a/platform_gk20a.h"
29#include "gk20a/tsg_gk20a.h" 30#include "gk20a/tsg_gk20a.h"
30#include "ioctl_tsg.h" 31#include "ioctl_tsg.h"
31#include "ioctl_channel.h" 32#include "ioctl_channel.h"
diff --git a/drivers/gpu/nvgpu/common/linux/module.c b/drivers/gpu/nvgpu/common/linux/module.c
index c73b4940..ab99bef0 100644
--- a/drivers/gpu/nvgpu/common/linux/module.c
+++ b/drivers/gpu/nvgpu/common/linux/module.c
@@ -30,6 +30,7 @@
30#include <nvgpu/soc.h> 30#include <nvgpu/soc.h>
31 31
32#include "gk20a/gk20a.h" 32#include "gk20a/gk20a.h"
33#include "gk20a/platform_gk20a.h"
33#include "vgpu/vgpu.h" 34#include "vgpu/vgpu.h"
34#include "gk20a/gk20a_scale.h" 35#include "gk20a/gk20a_scale.h"
35#include "gk20a/ctxsw_trace_gk20a.h" 36#include "gk20a/ctxsw_trace_gk20a.h"
diff --git a/drivers/gpu/nvgpu/common/linux/timers.c b/drivers/gpu/nvgpu/common/linux/timers.c
index 9fe84b50..efd04557 100644
--- a/drivers/gpu/nvgpu/common/linux/timers.c
+++ b/drivers/gpu/nvgpu/common/linux/timers.c
@@ -21,6 +21,7 @@
21#include <nvgpu/soc.h> 21#include <nvgpu/soc.h>
22 22
23#include "gk20a/gk20a.h" 23#include "gk20a/gk20a.h"
24#include "gk20a/platform_gk20a.h"
24 25
25/* 26/*
26 * Returns 1 if the platform is pre-Si and should ignore the timeout checking. 27 * Returns 1 if the platform is pre-Si and should ignore the timeout checking.
diff --git a/drivers/gpu/nvgpu/common/mm/nvgpu_allocator.c b/drivers/gpu/nvgpu/common/mm/nvgpu_allocator.c
index 115a0904..a3c4e3b6 100644
--- a/drivers/gpu/nvgpu/common/mm/nvgpu_allocator.c
+++ b/drivers/gpu/nvgpu/common/mm/nvgpu_allocator.c
@@ -20,7 +20,9 @@
20 20
21#include "gk20a/gk20a.h" 21#include "gk20a/gk20a.h"
22#include "gk20a/mm_gk20a.h" 22#include "gk20a/mm_gk20a.h"
23#ifdef CONFIG_DEBUG_FS
23#include "gk20a/platform_gk20a.h" 24#include "gk20a/platform_gk20a.h"
25#endif
24 26
25u32 nvgpu_alloc_tracing_on; 27u32 nvgpu_alloc_tracing_on;
26 28
diff --git a/drivers/gpu/nvgpu/gk20a/cde_gk20a.c b/drivers/gpu/nvgpu/gk20a/cde_gk20a.c
index 74de7e8e..d5d75be5 100644
--- a/drivers/gpu/nvgpu/gk20a/cde_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/cde_gk20a.c
@@ -20,6 +20,7 @@
20#include <linux/fs.h> 20#include <linux/fs.h>
21#ifdef CONFIG_DEBUG_FS 21#ifdef CONFIG_DEBUG_FS
22#include <linux/debugfs.h> 22#include <linux/debugfs.h>
23#include "platform_gk20a.h"
23#endif 24#endif
24#include <linux/dma-buf.h> 25#include <linux/dma-buf.h>
25 26
diff --git a/drivers/gpu/nvgpu/gk20a/ce2_gk20a.c b/drivers/gpu/nvgpu/gk20a/ce2_gk20a.c
index 8e3f1754..25d6462d 100644
--- a/drivers/gpu/nvgpu/gk20a/ce2_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/ce2_gk20a.c
@@ -33,6 +33,10 @@
33#include <nvgpu/hw/gk20a/hw_mc_gk20a.h> 33#include <nvgpu/hw/gk20a/hw_mc_gk20a.h>
34#include <nvgpu/hw/gk20a/hw_gr_gk20a.h> 34#include <nvgpu/hw/gk20a/hw_gr_gk20a.h>
35 35
36#ifdef CONFIG_DEBUG_FS
37#include "platform_gk20a.h"
38#endif
39
36static u32 ce2_nonblockpipe_isr(struct gk20a *g, u32 fifo_intr) 40static u32 ce2_nonblockpipe_isr(struct gk20a *g, u32 fifo_intr)
37{ 41{
38 gk20a_dbg(gpu_dbg_intr, "ce2 non-blocking pipe interrupt\n"); 42 gk20a_dbg(gpu_dbg_intr, "ce2 non-blocking pipe interrupt\n");
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c
index 536ca9f3..31358468 100644
--- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c
@@ -2378,7 +2378,6 @@ int gk20a_submit_channel_gpfifo(struct channel_gk20a *c,
2378 struct fifo_profile_gk20a *profile) 2378 struct fifo_profile_gk20a *profile)
2379{ 2379{
2380 struct gk20a *g = c->g; 2380 struct gk20a *g = c->g;
2381 struct device *d = dev_from_gk20a(g);
2382 struct priv_cmd_entry *wait_cmd = NULL; 2381 struct priv_cmd_entry *wait_cmd = NULL;
2383 struct priv_cmd_entry *incr_cmd = NULL; 2382 struct priv_cmd_entry *incr_cmd = NULL;
2384 struct gk20a_fence *pre_fence = NULL; 2383 struct gk20a_fence *pre_fence = NULL;
@@ -2394,13 +2393,10 @@ int gk20a_submit_channel_gpfifo(struct channel_gk20a *c,
2394 bool need_deferred_cleanup = false; 2393 bool need_deferred_cleanup = false;
2395 struct nvgpu_gpfifo __user *user_gpfifo = args ? 2394 struct nvgpu_gpfifo __user *user_gpfifo = args ?
2396 (struct nvgpu_gpfifo __user *)(uintptr_t)args->gpfifo : NULL; 2395 (struct nvgpu_gpfifo __user *)(uintptr_t)args->gpfifo : NULL;
2397 struct gk20a_platform *platform;
2398 2396
2399 if (g->driver_is_dying) 2397 if (g->driver_is_dying)
2400 return -ENODEV; 2398 return -ENODEV;
2401 2399
2402 platform = gk20a_get_platform(d);
2403
2404 if (c->has_timedout) 2400 if (c->has_timedout)
2405 return -ETIMEDOUT; 2401 return -ETIMEDOUT;
2406 2402
diff --git a/drivers/gpu/nvgpu/gk20a/ctxsw_trace_gk20a.c b/drivers/gpu/nvgpu/gk20a/ctxsw_trace_gk20a.c
index f3b54355..50bcbe51 100644
--- a/drivers/gpu/nvgpu/gk20a/ctxsw_trace_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/ctxsw_trace_gk20a.c
@@ -24,6 +24,7 @@
24 24
25#include "ctxsw_trace_gk20a.h" 25#include "ctxsw_trace_gk20a.h"
26#include "gk20a.h" 26#include "gk20a.h"
27#include "platform_gk20a.h"
27#include "gr_gk20a.h" 28#include "gr_gk20a.h"
28 29
29#include <nvgpu/log.h> 30#include <nvgpu/log.h>
diff --git a/drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c b/drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c
index e4bdd8e3..a08eb047 100644
--- a/drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c
@@ -28,6 +28,7 @@
28#include <nvgpu/log.h> 28#include <nvgpu/log.h>
29 29
30#include "gk20a.h" 30#include "gk20a.h"
31#include "gk20a/platform_gk20a.h"
31#include "gr_gk20a.h" 32#include "gr_gk20a.h"
32#include "dbg_gpu_gk20a.h" 33#include "dbg_gpu_gk20a.h"
33#include "regops_gk20a.h" 34#include "regops_gk20a.h"
diff --git a/drivers/gpu/nvgpu/gk20a/debug_gk20a.c b/drivers/gpu/nvgpu/gk20a/debug_gk20a.c
index f863b056..ac435046 100644
--- a/drivers/gpu/nvgpu/gk20a/debug_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/debug_gk20a.c
@@ -25,6 +25,7 @@
25#include <nvgpu/log.h> 25#include <nvgpu/log.h>
26 26
27#include "gk20a.h" 27#include "gk20a.h"
28#include "gk20a/platform_gk20a.h"
28#include "debug_gk20a.h" 29#include "debug_gk20a.h"
29 30
30#include <nvgpu/hw/gk20a/hw_ram_gk20a.h> 31#include <nvgpu/hw/gk20a/hw_ram_gk20a.h>
diff --git a/drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.c b/drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.c
index c292540f..84083f4b 100644
--- a/drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.c
@@ -27,6 +27,7 @@
27#include "fecs_trace_gk20a.h" 27#include "fecs_trace_gk20a.h"
28#include "gk20a.h" 28#include "gk20a.h"
29#include "gr_gk20a.h" 29#include "gr_gk20a.h"
30#include "platform_gk20a.h"
30 31
31#include <nvgpu/log.h> 32#include <nvgpu/log.h>
32 33
diff --git a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
index d6043df2..8085318d 100644
--- a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
@@ -45,6 +45,10 @@
45#include <nvgpu/hw/gk20a/hw_mc_gk20a.h> 45#include <nvgpu/hw/gk20a/hw_mc_gk20a.h>
46#include <nvgpu/hw/gk20a/hw_gr_gk20a.h> 46#include <nvgpu/hw/gk20a/hw_gr_gk20a.h>
47 47
48#ifdef CONFIG_DEBUG_FS
49#include "platform_gk20a.h"
50#endif
51
48#define FECS_METHOD_WFI_RESTORE 0x80000 52#define FECS_METHOD_WFI_RESTORE 0x80000
49 53
50static int gk20a_fifo_update_runlist_locked(struct gk20a *g, u32 runlist_id, 54static int gk20a_fifo_update_runlist_locked(struct gk20a *g, u32 runlist_id,
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c
index ea03ba98..3d730022 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.c
@@ -27,6 +27,7 @@
27#include <trace/events/gk20a.h> 27#include <trace/events/gk20a.h>
28 28
29#include "gk20a.h" 29#include "gk20a.h"
30#include "platform_gk20a.h"
30#include "channel_sync_gk20a.h" 31#include "channel_sync_gk20a.h"
31 32
32#include "ctxsw_trace_gk20a.h" 33#include "ctxsw_trace_gk20a.h"
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h
index b5d0572e..af40c969 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.h
@@ -58,7 +58,6 @@ struct dbg_profiler_object_data;
58#include "pmu_gk20a.h" 58#include "pmu_gk20a.h"
59#include "priv_ring_gk20a.h" 59#include "priv_ring_gk20a.h"
60#include "therm_gk20a.h" 60#include "therm_gk20a.h"
61#include "platform_gk20a.h"
62#include "gm20b/acr_gm20b.h" 61#include "gm20b/acr_gm20b.h"
63#include "cde_gk20a.h" 62#include "cde_gk20a.h"
64#include "debug_gk20a.h" 63#include "debug_gk20a.h"
@@ -1232,11 +1231,6 @@ static inline unsigned long gk20a_get_gr_idle_timeout(struct gk20a *g)
1232 g->gr_idle_timeout_default : MAX_SCHEDULE_TIMEOUT; 1231 g->gr_idle_timeout_default : MAX_SCHEDULE_TIMEOUT;
1233} 1232}
1234 1233
1235static inline struct gk20a *get_gk20a(struct device *dev)
1236{
1237 return gk20a_get_platform(dev)->g;
1238}
1239
1240enum BAR0_DEBUG_OPERATION { 1234enum BAR0_DEBUG_OPERATION {
1241 BARO_ZERO_NOP = 0, 1235 BARO_ZERO_NOP = 0,
1242 OP_END = 'DONE', 1236 OP_END = 'DONE',
@@ -1352,17 +1346,6 @@ static inline u32 gk20a_bar1_readl(struct gk20a *g, u32 b)
1352} 1346}
1353 1347
1354/* convenience */ 1348/* convenience */
1355static inline struct device *dev_from_gk20a(struct gk20a *g)
1356{
1357 return g->dev;
1358}
1359static inline struct gk20a *gk20a_from_dev(struct device *dev)
1360{
1361 if (!dev)
1362 return NULL;
1363
1364 return ((struct gk20a_platform *)dev_get_drvdata(dev))->g;
1365}
1366static inline struct gk20a *gk20a_from_as(struct gk20a_as *as) 1349static inline struct gk20a *gk20a_from_as(struct gk20a_as *as)
1367{ 1350{
1368 return container_of(as, struct gk20a, as); 1351 return container_of(as, struct gk20a, as);
@@ -1418,23 +1401,6 @@ enum {
1418 KEPLER_CHANNEL_GPFIFO_C = 0xA26F, 1401 KEPLER_CHANNEL_GPFIFO_C = 0xA26F,
1419}; 1402};
1420 1403
1421static inline bool gk20a_gpu_is_virtual(struct device *dev)
1422{
1423 struct gk20a_platform *platform = dev_get_drvdata(dev);
1424
1425 return platform->virtual_dev;
1426}
1427
1428static inline int support_gk20a_pmu(struct device *dev)
1429{
1430 if (IS_ENABLED(CONFIG_GK20A_PMU)) {
1431 /* gPMU is not supported for vgpu */
1432 return !gk20a_gpu_is_virtual(dev);
1433 }
1434
1435 return 0;
1436}
1437
1438void gk20a_create_sysfs(struct device *dev); 1404void gk20a_create_sysfs(struct device *dev);
1439void gk20a_remove_sysfs(struct device *dev); 1405void gk20a_remove_sysfs(struct device *dev);
1440 1406
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a_scale.c b/drivers/gpu/nvgpu/gk20a/gk20a_scale.c
index 8c7a9d80..608b2398 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a_scale.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a_scale.c
@@ -26,6 +26,7 @@
26#include <nvgpu/kmem.h> 26#include <nvgpu/kmem.h>
27 27
28#include "gk20a.h" 28#include "gk20a.h"
29#include "platform_gk20a.h"
29#include "pmu_gk20a.h" 30#include "pmu_gk20a.h"
30#include "clk_gk20a.h" 31#include "clk_gk20a.h"
31#include "gk20a_scale.h" 32#include "gk20a_scale.h"
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c b/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c
index 783ff6fb..ff9e0fc1 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c
@@ -31,6 +31,7 @@
31#include <nvgpu/kmem.h> 31#include <nvgpu/kmem.h>
32 32
33#include "gk20a.h" 33#include "gk20a.h"
34#include "gk20a/platform_gk20a.h"
34#include "gr_gk20a.h" 35#include "gr_gk20a.h"
35#include "fifo_gk20a.h" 36#include "fifo_gk20a.h"
36#include "pmu_gk20a.h" 37#include "pmu_gk20a.h"
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
index 8217a8bf..7bbac8cc 100644
--- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
@@ -37,9 +37,12 @@
37#include "regops_gk20a.h" 37#include "regops_gk20a.h"
38#include "dbg_gpu_gk20a.h" 38#include "dbg_gpu_gk20a.h"
39#include "debug_gk20a.h" 39#include "debug_gk20a.h"
40#include "platform_gk20a.h"
41#include "ctxsw_trace_gk20a.h" 40#include "ctxsw_trace_gk20a.h"
42 41
42#ifdef CONFIG_DEBUG_FS
43#include "platform_gk20a.h"
44#endif
45
43#include <nvgpu/hw/gk20a/hw_ccsr_gk20a.h> 46#include <nvgpu/hw/gk20a/hw_ccsr_gk20a.h>
44#include <nvgpu/hw/gk20a/hw_ctxsw_prog_gk20a.h> 47#include <nvgpu/hw/gk20a/hw_ctxsw_prog_gk20a.h>
45#include <nvgpu/hw/gk20a/hw_fifo_gk20a.h> 48#include <nvgpu/hw/gk20a/hw_fifo_gk20a.h>
diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
index 4d904761..201c2090 100644
--- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
@@ -41,6 +41,7 @@
41#include <nvgpu/linux/dma.h> 41#include <nvgpu/linux/dma.h>
42 42
43#include "gk20a.h" 43#include "gk20a.h"
44#include "platform_gk20a.h"
44#include "mm_gk20a.h" 45#include "mm_gk20a.h"
45#include "fence_gk20a.h" 46#include "fence_gk20a.h"
46#include "kind_gk20a.h" 47#include "kind_gk20a.h"
@@ -1262,16 +1263,16 @@ u64 gk20a_vm_alloc_va(struct vm_gk20a *vm,
1262 struct nvgpu_allocator *vma = vm->vma[gmmu_pgsz_idx]; 1263 struct nvgpu_allocator *vma = vm->vma[gmmu_pgsz_idx];
1263 u64 offset; 1264 u64 offset;
1264 u64 gmmu_page_size = vm->gmmu_page_sizes[gmmu_pgsz_idx]; 1265 u64 gmmu_page_size = vm->gmmu_page_sizes[gmmu_pgsz_idx];
1266 struct gk20a *g = vm->mm->g;
1265 1267
1266 if (gmmu_pgsz_idx >= gmmu_nr_page_sizes) { 1268 if (gmmu_pgsz_idx >= gmmu_nr_page_sizes) {
1267 dev_warn(dev_from_vm(vm), 1269 nvgpu_warn(g,
1268 "invalid page size requested in gk20a vm alloc"); 1270 "invalid page size requested in gk20a vm alloc");
1269 return 0; 1271 return 0;
1270 } 1272 }
1271 1273
1272 if ((gmmu_pgsz_idx == gmmu_page_size_big) && !vm->big_pages) { 1274 if ((gmmu_pgsz_idx == gmmu_page_size_big) && !vm->big_pages) {
1273 dev_warn(dev_from_vm(vm), 1275 nvgpu_warn(g, "unsupportd page size requested");
1274 "unsupportd page size requested");
1275 return 0; 1276 return 0;
1276 1277
1277 } 1278 }
diff --git a/drivers/gpu/nvgpu/gk20a/platform_gk20a.h b/drivers/gpu/nvgpu/gk20a/platform_gk20a.h
index 5dc55b18..4208816f 100644
--- a/drivers/gpu/nvgpu/gk20a/platform_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/platform_gk20a.h
@@ -21,6 +21,8 @@
21 21
22#include <nvgpu/lock.h> 22#include <nvgpu/lock.h>
23 23
24#include "gk20a.h"
25
24#define GK20A_CLKS_MAX 4 26#define GK20A_CLKS_MAX 4
25 27
26struct gk20a; 28struct gk20a;
@@ -252,4 +254,36 @@ int gk20a_tegra_busy(struct device *dev);
252void gk20a_tegra_idle(struct device *dev); 254void gk20a_tegra_idle(struct device *dev);
253void gk20a_tegra_debug_dump(struct device *pdev); 255void gk20a_tegra_debug_dump(struct device *pdev);
254 256
257static inline struct gk20a *get_gk20a(struct device *dev)
258{
259 return gk20a_get_platform(dev)->g;
260}
261static inline struct device *dev_from_gk20a(struct gk20a *g)
262{
263 return g->dev;
264}
265static inline struct gk20a *gk20a_from_dev(struct device *dev)
266{
267 if (!dev)
268 return NULL;
269
270 return ((struct gk20a_platform *)dev_get_drvdata(dev))->g;
271}
272static inline bool gk20a_gpu_is_virtual(struct device *dev)
273{
274 struct gk20a_platform *platform = dev_get_drvdata(dev);
275
276 return platform->virtual_dev;
277}
278
279static inline int support_gk20a_pmu(struct device *dev)
280{
281 if (IS_ENABLED(CONFIG_GK20A_PMU)) {
282 /* gPMU is not supported for vgpu */
283 return !gk20a_gpu_is_virtual(dev);
284 }
285
286 return 0;
287}
288
255#endif 289#endif
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c
index fa0911ab..8b28a71a 100644
--- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c
@@ -16,12 +16,6 @@
16 * along with this program. If not, see <http://www.gnu.org/licenses/>. 16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */ 17 */
18 18
19#include <linux/module.h>
20#ifdef CONFIG_DEBUG_FS
21#include <linux/debugfs.h>
22#endif
23#include <linux/uaccess.h>
24
25#include <nvgpu/nvgpu_common.h> 19#include <nvgpu/nvgpu_common.h>
26#include <nvgpu/timers.h> 20#include <nvgpu/timers.h>
27#include <nvgpu/kmem.h> 21#include <nvgpu/kmem.h>
@@ -41,6 +35,12 @@
41#include "nvgpu_gpuid_t19x.h" 35#include "nvgpu_gpuid_t19x.h"
42#endif 36#endif
43 37
38#ifdef CONFIG_DEBUG_FS
39#include <linux/debugfs.h>
40#include <linux/uaccess.h>
41#include "platform_gk20a.h"
42#endif
43
44#define GK20A_PMU_UCODE_IMAGE "gpmu_ucode.bin" 44#define GK20A_PMU_UCODE_IMAGE "gpmu_ucode.bin"
45 45
46#define PMU_MEM_SCRUBBING_TIMEOUT_MAX 1000 46#define PMU_MEM_SCRUBBING_TIMEOUT_MAX 1000
diff --git a/drivers/gpu/nvgpu/gk20a/sched_gk20a.c b/drivers/gpu/nvgpu/gk20a/sched_gk20a.c
index 54091014..dba0bdb4 100644
--- a/drivers/gpu/nvgpu/gk20a/sched_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/sched_gk20a.c
@@ -15,6 +15,7 @@
15#include <linux/wait.h> 15#include <linux/wait.h>
16#ifdef CONFIG_DEBUG_FS 16#ifdef CONFIG_DEBUG_FS
17#include <linux/debugfs.h> 17#include <linux/debugfs.h>
18#include "platform_gk20a.h"
18#endif 19#endif
19#include <linux/uaccess.h> 20#include <linux/uaccess.h>
20#include <linux/poll.h> 21#include <linux/poll.h>
diff --git a/drivers/gpu/nvgpu/gk20a/sim_gk20a.c b/drivers/gpu/nvgpu/gk20a/sim_gk20a.c
index 5c11c118..122e66f9 100644
--- a/drivers/gpu/nvgpu/gk20a/sim_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/sim_gk20a.c
@@ -19,6 +19,7 @@
19#include <linux/platform_device.h> 19#include <linux/platform_device.h>
20 20
21#include "gk20a.h" 21#include "gk20a.h"
22#include "platform_gk20a.h"
22 23
23#include <nvgpu/log.h> 24#include <nvgpu/log.h>
24 25
diff --git a/drivers/gpu/nvgpu/gm206/bios_gm206.c b/drivers/gpu/nvgpu/gm206/bios_gm206.c
index 058df3c4..0bc78724 100644
--- a/drivers/gpu/nvgpu/gm206/bios_gm206.c
+++ b/drivers/gpu/nvgpu/gm206/bios_gm206.c
@@ -20,6 +20,7 @@
20#include <nvgpu/firmware.h> 20#include <nvgpu/firmware.h>
21 21
22#include "gk20a/gk20a.h" 22#include "gk20a/gk20a.h"
23#include "gk20a/platform_gk20a.h"
23#include "gm20b/fifo_gm20b.h" 24#include "gm20b/fifo_gm20b.h"
24#include "bios_gm206.h" 25#include "bios_gm206.h"
25 26
diff --git a/drivers/gpu/nvgpu/gm20b/clk_gm20b.c b/drivers/gpu/nvgpu/gm20b/clk_gm20b.c
index 96a8a5bc..d1dbf181 100644
--- a/drivers/gpu/nvgpu/gm20b/clk_gm20b.c
+++ b/drivers/gpu/nvgpu/gm20b/clk_gm20b.c
@@ -29,6 +29,7 @@
29#endif 29#endif
30 30
31#include "gk20a/gk20a.h" 31#include "gk20a/gk20a.h"
32#include "gk20a/platform_gk20a.h"
32#include "clk_gm20b.h" 33#include "clk_gm20b.h"
33 34
34#include <nvgpu/soc.h> 35#include <nvgpu/soc.h>
diff --git a/drivers/gpu/nvgpu/gp106/clk_gp106.c b/drivers/gpu/nvgpu/gp106/clk_gp106.c
index e4348e73..4d865664 100644
--- a/drivers/gpu/nvgpu/gp106/clk_gp106.c
+++ b/drivers/gpu/nvgpu/gp106/clk_gp106.c
@@ -23,6 +23,9 @@
23#include <nvgpu/kmem.h> 23#include <nvgpu/kmem.h>
24 24
25#include "gk20a/gk20a.h" 25#include "gk20a/gk20a.h"
26#ifdef CONFIG_DEBUG_FS
27#include "gk20a/platform_gk20a.h"
28#endif
26 29
27#include "clk_gp106.h" 30#include "clk_gp106.h"
28#include "clk/clk_arb.h" 31#include "clk/clk_arb.h"
diff --git a/drivers/gpu/nvgpu/gp106/therm_gp106.c b/drivers/gpu/nvgpu/gp106/therm_gp106.c
index 4f616d8e..d473da96 100644
--- a/drivers/gpu/nvgpu/gp106/therm_gp106.c
+++ b/drivers/gpu/nvgpu/gp106/therm_gp106.c
@@ -12,10 +12,12 @@
12 */ 12 */
13 13
14#include "therm_gp106.h" 14#include "therm_gp106.h"
15#include "therm/thrmpmu.h"
16
15#ifdef CONFIG_DEBUG_FS 17#ifdef CONFIG_DEBUG_FS
16#include <linux/debugfs.h> 18#include <linux/debugfs.h>
19#include "gk20a/platform_gk20a.h"
17#endif 20#endif
18#include "therm/thrmpmu.h"
19 21
20#include <nvgpu/hw/gp106/hw_therm_gp106.h> 22#include <nvgpu/hw/gp106/hw_therm_gp106.h>
21 23
diff --git a/drivers/gpu/nvgpu/gp106/xve_gp106.c b/drivers/gpu/nvgpu/gp106/xve_gp106.c
index 2bd93666..fb0e8a8f 100644
--- a/drivers/gpu/nvgpu/gp106/xve_gp106.c
+++ b/drivers/gpu/nvgpu/gp106/xve_gp106.c
@@ -23,6 +23,10 @@
23#include "gm206/bios_gm206.h" 23#include "gm206/bios_gm206.h"
24#include "gp106/xve_gp106.h" 24#include "gp106/xve_gp106.h"
25 25
26#ifdef CONFIG_DEBUG_FS
27#include "gk20a/platform_gk20a.h"
28#endif
29
26#include <nvgpu/bug.h> 30#include <nvgpu/bug.h>
27 31
28#include <nvgpu/hw/gp106/hw_xp_gp106.h> 32#include <nvgpu/hw/gp106/hw_xp_gp106.h>
diff --git a/drivers/gpu/nvgpu/gp10b/gp10b_sysfs.c b/drivers/gpu/nvgpu/gp10b/gp10b_sysfs.c
index ee14d00c..1bd95b40 100644
--- a/drivers/gpu/nvgpu/gp10b/gp10b_sysfs.c
+++ b/drivers/gpu/nvgpu/gp10b/gp10b_sysfs.c
@@ -16,6 +16,7 @@
16#include <linux/platform_device.h> 16#include <linux/platform_device.h>
17 17
18#include "gk20a/gk20a.h" 18#include "gk20a/gk20a.h"
19#include "gk20a/platform_gk20a.h"
19#include "gp10b_sysfs.h" 20#include "gp10b_sysfs.h"
20 21
21#include <nvgpu/hw/gp10b/hw_gr_gp10b.h> 22#include <nvgpu/hw/gp10b/hw_gr_gp10b.h>
diff --git a/drivers/gpu/nvgpu/gp10b/mm_gp10b.c b/drivers/gpu/nvgpu/gp10b/mm_gp10b.c
index c5149f22..6b7f63b3 100644
--- a/drivers/gpu/nvgpu/gp10b/mm_gp10b.c
+++ b/drivers/gpu/nvgpu/gp10b/mm_gp10b.c
@@ -16,6 +16,7 @@
16#include <nvgpu/dma.h> 16#include <nvgpu/dma.h>
17 17
18#include "gk20a/gk20a.h" 18#include "gk20a/gk20a.h"
19#include "gk20a/platform_gk20a.h"
19#include "gm20b/mm_gm20b.h" 20#include "gm20b/mm_gm20b.h"
20#include "mm_gp10b.h" 21#include "mm_gp10b.h"
21#include "rpfb_gp10b.h" 22#include "rpfb_gp10b.h"
diff --git a/drivers/gpu/nvgpu/pmgr/pmgr.c b/drivers/gpu/nvgpu/pmgr/pmgr.c
index 41c69dbd..46787724 100644
--- a/drivers/gpu/nvgpu/pmgr/pmgr.c
+++ b/drivers/gpu/nvgpu/pmgr/pmgr.c
@@ -17,6 +17,7 @@
17 17
18#ifdef CONFIG_DEBUG_FS 18#ifdef CONFIG_DEBUG_FS
19#include <linux/debugfs.h> 19#include <linux/debugfs.h>
20#include "gk20a/platform_gk20a.h"
20#endif 21#endif
21 22
22int pmgr_pwr_devices_get_power(struct gk20a *g, u32 *val) 23int pmgr_pwr_devices_get_power(struct gk20a *g, u32 *val)
diff --git a/drivers/gpu/nvgpu/pmgr/pmgrpmu.c b/drivers/gpu/nvgpu/pmgr/pmgrpmu.c
index ea812b81..c60c4960 100644
--- a/drivers/gpu/nvgpu/pmgr/pmgrpmu.c
+++ b/drivers/gpu/nvgpu/pmgr/pmgrpmu.c
@@ -15,6 +15,7 @@
15#include <nvgpu/pmuif/nvgpu_gpmu_cmdif.h> 15#include <nvgpu/pmuif/nvgpu_gpmu_cmdif.h>
16 16
17#include "gk20a/gk20a.h" 17#include "gk20a/gk20a.h"
18#include "gk20a/platform_gk20a.h"
18#include "gm206/bios_gm206.h" 19#include "gm206/bios_gm206.h"
19#include "gk20a/pmu_gk20a.h" 20#include "gk20a/pmu_gk20a.h"
20 21
diff --git a/drivers/gpu/nvgpu/pmgr/pwrpolicy.c b/drivers/gpu/nvgpu/pmgr/pwrpolicy.c
index 56be281d..c7384b6e 100644
--- a/drivers/gpu/nvgpu/pmgr/pwrpolicy.c
+++ b/drivers/gpu/nvgpu/pmgr/pwrpolicy.c
@@ -15,6 +15,7 @@
15#include <nvgpu/bug.h> 15#include <nvgpu/bug.h>
16 16
17#include "gk20a/gk20a.h" 17#include "gk20a/gk20a.h"
18#include "gk20a/platform_gk20a.h"
18#include "pwrpolicy.h" 19#include "pwrpolicy.h"
19#include "boardobj/boardobjgrp.h" 20#include "boardobj/boardobjgrp.h"
20#include "boardobj/boardobjgrp_e32.h" 21#include "boardobj/boardobjgrp_e32.h"
diff --git a/drivers/gpu/nvgpu/tegra/linux/clk.c b/drivers/gpu/nvgpu/tegra/linux/clk.c
index 876bac91..a82076c7 100644
--- a/drivers/gpu/nvgpu/tegra/linux/clk.c
+++ b/drivers/gpu/nvgpu/tegra/linux/clk.c
@@ -20,6 +20,7 @@
20 20
21#include "clk.h" 21#include "clk.h"
22#include "gk20a/gk20a.h" 22#include "gk20a/gk20a.h"
23#include "gk20a/platform_gk20a.h"
23 24
24static unsigned long nvgpu_linux_clk_get_rate(struct gk20a *g, u32 api_domain) 25static unsigned long nvgpu_linux_clk_get_rate(struct gk20a *g, u32 api_domain)
25{ 26{
diff --git a/drivers/gpu/nvgpu/vgpu/vgpu.h b/drivers/gpu/nvgpu/vgpu/vgpu.h
index ac261979..ec04c6f7 100644
--- a/drivers/gpu/nvgpu/vgpu/vgpu.h
+++ b/drivers/gpu/nvgpu/vgpu/vgpu.h
@@ -19,6 +19,7 @@
19#include <linux/tegra_gr_comm.h> 19#include <linux/tegra_gr_comm.h>
20#include <linux/tegra_vgpu.h> 20#include <linux/tegra_vgpu.h>
21#include "gk20a/gk20a.h" 21#include "gk20a/gk20a.h"
22#include "gk20a/platform_gk20a.h"
22 23
23#include <nvgpu/thread.h> 24#include <nvgpu/thread.h>
24 25