summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gm20b/gr_gm20b.c
diff options
context:
space:
mode:
authorAlex Waterman <alexw@nvidia.com>2017-03-08 19:59:25 -0500
committermobile promotions <svcmobile_promotions@nvidia.com>2017-03-28 12:39:07 -0400
commitc363253c4575b59466e9390943c6b8b5ccfd068f (patch)
treee9102715e24f8cea222f5a2be51caf8360f9b2da /drivers/gpu/nvgpu/gm20b/gr_gm20b.c
parent555e44b283175ef740a689442a508b2faf62f247 (diff)
gpu: nvgpu: Use new kmem API functions (gm20b/*)
Use the new kmem API functions in gm20b/*. Also add a struct gk20a pointer to lsfm_free_ucode_img_res() lsfm_free_nonpmu_ucode_img_res() so nvgpu_kfree() works. Bug 1799159 Bug 1823380 Change-Id: I3373600455553710adb14e0fb5743bf197095a03 Signed-off-by: Alex Waterman <alexw@nvidia.com> Reviewed-on: http://git-master/r/1318320 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: svccoveritychecker <svccoveritychecker@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gm20b/gr_gm20b.c')
-rw-r--r--drivers/gpu/nvgpu/gm20b/gr_gm20b.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/gpu/nvgpu/gm20b/gr_gm20b.c b/drivers/gpu/nvgpu/gm20b/gr_gm20b.c
index 5b5fa82c..4f4b8d4a 100644
--- a/drivers/gpu/nvgpu/gm20b/gr_gm20b.c
+++ b/drivers/gpu/nvgpu/gm20b/gr_gm20b.c
@@ -22,6 +22,8 @@
22 22
23#include <dt-bindings/soc/gm20b-fuse.h> 23#include <dt-bindings/soc/gm20b-fuse.h>
24 24
25#include <nvgpu/kmem.h>
26
25#include "gk20a/gk20a.h" 27#include "gk20a/gk20a.h"
26#include "gk20a/gr_gk20a.h" 28#include "gk20a/gr_gk20a.h"
27 29
@@ -593,7 +595,7 @@ static int gr_gm20b_load_smid_config(struct gk20a *g)
593 u32 i, j; 595 u32 i, j;
594 u32 tpc_index, gpc_index; 596 u32 tpc_index, gpc_index;
595 597
596 tpc_sm_id = kcalloc(gr_cwd_sm_id__size_1_v(), sizeof(u32), GFP_KERNEL); 598 tpc_sm_id = nvgpu_kcalloc(g, gr_cwd_sm_id__size_1_v(), sizeof(u32));
597 if (!tpc_sm_id) 599 if (!tpc_sm_id)
598 return -ENOMEM; 600 return -ENOMEM;
599 601
@@ -625,7 +627,7 @@ static int gr_gm20b_load_smid_config(struct gk20a *g)
625 for (i = 0; i < gr_cwd_sm_id__size_1_v(); i++) 627 for (i = 0; i < gr_cwd_sm_id__size_1_v(); i++)
626 gk20a_writel(g, gr_cwd_sm_id_r(i), tpc_sm_id[i]); 628 gk20a_writel(g, gr_cwd_sm_id_r(i), tpc_sm_id[i]);
627 629
628 kfree(tpc_sm_id); 630 nvgpu_kfree(g, tpc_sm_id);
629 631
630 return 0; 632 return 0;
631} 633}
@@ -1420,7 +1422,7 @@ static int gm20b_gr_fuse_override(struct gk20a *g)
1420 if (count <= 0) 1422 if (count <= 0)
1421 return count; 1423 return count;
1422 1424
1423 fuses = kmalloc(sizeof(u32) * count * 2, GFP_KERNEL); 1425 fuses = nvgpu_kmalloc(g, sizeof(u32) * count * 2);
1424 if (!fuses) 1426 if (!fuses)
1425 return -ENOMEM; 1427 return -ENOMEM;
1426 of_property_read_u32_array(np, "fuse-overrides", fuses, count * 2); 1428 of_property_read_u32_array(np, "fuse-overrides", fuses, count * 2);
@@ -1440,7 +1442,7 @@ static int gm20b_gr_fuse_override(struct gk20a *g)
1440 } 1442 }
1441 } 1443 }
1442 1444
1443 kfree(fuses); 1445 nvgpu_kfree(g, fuses);
1444 return 0; 1446 return 0;
1445} 1447}
1446 1448