diff options
author | Mahantesh Kumbar <mkumbar@nvidia.com> | 2018-02-14 04:01:01 -0500 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-03-15 02:46:59 -0400 |
commit | d3f96dfa96a8aafe6f5035e2ed24425141e4202e (patch) | |
tree | 05eb958518d5e6d9f31d607d1a9cf2f6e39ce295 /drivers/gpu/nvgpu/gk20a | |
parent | e77ec1a98e6d65eac5b56999af17d51ffca6671f (diff) |
gpu: nvgpu: gv10x volt rail boardobj changes
- Created volt ops under pmu_ver to support volt_set_voltage,
volt_get_voltage & volt_send_load_cmd_to_pmu.
- Renamed volt load, set_voltage & get_voltage gp10x method names.
- Added new volt load, set_voltage & get_voltage methods for gv10x
using RPC & added code to handle ack in pmu_rpc_handler() along
with struct rail_list changes.
- Updated volt ops of gp106 & gv100 to point to respective methods.
- Added member volt_dev_idx_ipc_vmin & volt_scale_exp_pwr_equ_idx to
"struct nv_pmu_volt_volt_rail_boardobj_set" & "struct voltage_rail"
made changes to update members as needed.
- Added member volt_scale_exp_pwr_equ_idx to
"struct vbios_voltage_rail_table_1x_entry" to read
value from VBIOS table & update rail boardobj set interface.
- Defines for volt RPC "NV_PMU_RPC_ID_VOLT_*"
- Define struct's volt load, set_voltage & get_voltage to execute
volt RPC.
Change-Id: I4a41adcf7536468beaa8a73f551b1d608aabd161
Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1659728
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Vijayakumar Subbu <vsubbu@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 | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index 9a0cfd02..58570d6d 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h | |||
@@ -747,6 +747,13 @@ struct gpu_ops { | |||
747 | struct boardobjgrp *pboardobjgrp, | 747 | struct boardobjgrp *pboardobjgrp, |
748 | struct boardobjgrp_pmu_cmd *cmd); | 748 | struct boardobjgrp_pmu_cmd *cmd); |
749 | } boardobj; | 749 | } boardobj; |
750 | struct { | ||
751 | u32 (*volt_set_voltage)(struct gk20a *g, | ||
752 | u32 logic_voltage_uv, u32 sram_voltage_uv); | ||
753 | u32 (*volt_get_voltage)(struct gk20a *g, | ||
754 | u8 volt_domain, u32 *pvoltage_uv); | ||
755 | u32 (*volt_send_load_cmd_to_pmu)(struct gk20a *g); | ||
756 | } volt; | ||
750 | } pmu_ver; | 757 | } pmu_ver; |
751 | struct { | 758 | struct { |
752 | int (*get_netlist_name)(struct gk20a *g, int index, char *name); | 759 | int (*get_netlist_name)(struct gk20a *g, int index, char *name); |