diff options
author | David Nieto <dmartineznie@nvidia.com> | 2018-01-04 14:09:57 -0500 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-01-08 17:38:06 -0500 |
commit | 6dde9e67d91419d1e671a520571a2be9bde93999 (patch) | |
tree | 0471b3f8ef26bed5b3adf4c8ddc6c949e8651bf4 /drivers/gpu/nvgpu/common/linux/nvhost.c | |
parent | 82f253b7c14d7811a54f8187ff82f8d8befae529 (diff) |
gpu: nvgpu: allocate from coherent pool
Maps memory coherently on devices that are connected to a coherent bus.
(1) Add code to be able to get the platform device node.
(2) Create a new flag to mark if the device is connected to a coherent bus
(3) Map memory coherently on coherent devices.
bug 2040331
Change-Id: Ide83a9261acdbbc6e9fef4fc5f38d6f9d0e5ab5b
Signed-off-by: David Nieto <dmartineznie@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1633985
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/common/linux/nvhost.c')
-rw-r--r-- | drivers/gpu/nvgpu/common/linux/nvhost.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/nvhost.c b/drivers/gpu/nvgpu/common/linux/nvhost.c index b8e51aac..511cffc4 100644 --- a/drivers/gpu/nvgpu/common/linux/nvhost.c +++ b/drivers/gpu/nvgpu/common/linux/nvhost.c | |||
@@ -24,10 +24,11 @@ | |||
24 | 24 | ||
25 | #include "gk20a/gk20a.h" | 25 | #include "gk20a/gk20a.h" |
26 | #include "os_linux.h" | 26 | #include "os_linux.h" |
27 | #include "module.h" | ||
27 | 28 | ||
28 | int nvgpu_get_nvhost_dev(struct gk20a *g) | 29 | int nvgpu_get_nvhost_dev(struct gk20a *g) |
29 | { | 30 | { |
30 | struct device_node *np = dev_from_gk20a(g)->of_node; | 31 | struct device_node *np = nvgpu_get_node(g); |
31 | struct platform_device *host1x_pdev = NULL; | 32 | struct platform_device *host1x_pdev = NULL; |
32 | const __be32 *host1x_ptr; | 33 | const __be32 *host1x_ptr; |
33 | 34 | ||