diff options
author | Mahantesh Kumbar <mkumbar@nvidia.com> | 2018-02-13 02:18:58 -0500 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-03-08 02:27:52 -0500 |
commit | b94770dc4d2d96b80b14b9942595d3e7fc2bbf6c (patch) | |
tree | 845bbf88392ed4014e6518c1767e9985e1840729 /drivers/gpu/nvgpu/gk20a | |
parent | cc4b9f540f66abc9f60cf9f8e2217ff17349bc77 (diff) |
gpu: nvgpu: boardobj update for gv10x branch
- Created ops for below boardobj methods to support gp10x & gv10x
branch boardobj changes, and defined methods for gv10x with
postfix _v1 with below names
boardobjgrp_pmucmd_construct_impl
boardobjgrp_pmuset_impl
boardobjgrp_pmugetstatus_impl
is_boardobjgrp_pmucmd_id_valid
- These ops are assigned based on PMU version to respective
chip.
- Modified BOARDOBJGRP_PMU_CMD_GRP_SET_CONSTRUCT &
BOARDOBJGRP_PMU_CMD_GRP_GET_STATUS_CONSTRUCT to support
gp10x & gv10x branch changes
- Updated struct boardobjgrp_pmu_cmd to include members
needed for gv10x boardobj changes
- Created "struct nv_pmu_rpc_struct_board_obj_grp_cmd"
to execute BOARD_OBJ_GRP_CMD using RPC.
- Defined method boardobjgrp_pmucmdsend_rpc() to
send BOARD_OBJ_GRP_CMD to PMU.
Change-Id: If2551bdda80e897e7b21d2966881586f3bbc7a9b
Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1656511
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/gk20a')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index 0e164a72..3442861c 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h | |||
@@ -731,6 +731,21 @@ struct gpu_ops { | |||
731 | u8 value); | 731 | u8 value); |
732 | void (*pg_cmd_eng_buf_load_set_dma_idx)(struct pmu_pg_cmd *pg, | 732 | void (*pg_cmd_eng_buf_load_set_dma_idx)(struct pmu_pg_cmd *pg, |
733 | u8 value); | 733 | u8 value); |
734 | struct { | ||
735 | u32 (*boardobjgrp_pmucmd_construct_impl)(struct gk20a *g, | ||
736 | struct boardobjgrp *pboardobjgrp, | ||
737 | struct boardobjgrp_pmu_cmd *cmd, u8 id, u8 msgid, | ||
738 | u8 hdrsize, u8 entrysize, u16 fbsize, u32 ss_offset, | ||
739 | u8 rpc_func_id); | ||
740 | u32 (*boardobjgrp_pmuset_impl)(struct gk20a *g, | ||
741 | struct boardobjgrp *pboardobjgrp); | ||
742 | u32 (*boardobjgrp_pmugetstatus_impl)(struct gk20a *g, | ||
743 | struct boardobjgrp *pboardobjgrp, | ||
744 | struct boardobjgrpmask *mask); | ||
745 | int (*is_boardobjgrp_pmucmd_id_valid)(struct gk20a *g, | ||
746 | struct boardobjgrp *pboardobjgrp, | ||
747 | struct boardobjgrp_pmu_cmd *cmd); | ||
748 | } boardobj; | ||
734 | } pmu_ver; | 749 | } pmu_ver; |
735 | struct { | 750 | struct { |
736 | int (*get_netlist_name)(struct gk20a *g, int index, char *name); | 751 | int (*get_netlist_name)(struct gk20a *g, int index, char *name); |