diff options
author | Mahantesh Kumbar <mkumbar@nvidia.com> | 2018-02-19 01:40:37 -0500 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-03-15 02:47:02 -0400 |
commit | 8a1d51fe49da0d2351ee5ece472c8cdf399f0f6a (patch) | |
tree | 1c028329993ce384accef50f10dd4054fdb85fee /drivers/gpu/nvgpu/volt/volt_policy.h | |
parent | d3f96dfa96a8aafe6f5035e2ed24425141e4202e (diff) |
gpu: nvgpu: gv10x volt policy boardobj changes
- Added support for single rail multi step volt policy & below
are the list of define & struct added/updated to support same.
CTRL_VOLT_POLICY_TYPE_SINGLE_RAIL_MULTI_STEP 0x04,
NV_VBIOS_VOLTAGE_POLICY_1X_ENTRY_TYPE_SINGLE_RAIL_MULTI_STEP 0x04,
Updated struct vbios_voltage_policy_table_1x_entry,
struct nv_pmu_volt_volt_policy_sr_multi_step_boardobj_set, this holds
members which help to config single rail multi step like delay
between switch step, ramp up & ramp down step size in uv.
- Added case to support SINGLE_RAIL_MULTI_STEP in
volt_volt_policy_construct() based on boardobj type.
- Added case to support SINGLE_RAIL_MULTI_STEP in
volt_get_volt_policy_table() to read data from VBIOS
table vbios_voltage_policy_table_1x_entry & extract to
voltage_policy_single_rail_multi_step.
- Added methods to forward single rail multi step data to
PMU using below methods by assigning data read from
VBIOS voltage_policy_single_rail_multi_step to
nv_pmu_volt_volt_policy_sr_multi_step_boardobj_set
interface.
volt_construct_volt_policy_single_rail_multi_step()
volt_policy_pmu_data_init_sr_multi_step()
volt_policy_pmu_data_init_single_rail()
construct_volt_policy_single_rail()
Change-Id: I17bc8c320777191611365ee63274c38ffe5ecbf7
Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1660687
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
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/volt/volt_policy.h')
-rw-r--r-- | drivers/gpu/nvgpu/volt/volt_policy.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/volt/volt_policy.h b/drivers/gpu/nvgpu/volt/volt_policy.h index 8db79218..34c8f0f6 100644 --- a/drivers/gpu/nvgpu/volt/volt_policy.h +++ b/drivers/gpu/nvgpu/volt/volt_policy.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved. | 2 | * Copyright (c) 2016-2018, NVIDIA CORPORATION. All rights reserved. |
3 | * | 3 | * |
4 | * Permission is hereby granted, free of charge, to any person obtaining a | 4 | * Permission is hereby granted, free of charge, to any person obtaining a |
5 | * copy of this software and associated documentation files (the "Software"), | 5 | * copy of this software and associated documentation files (the "Software"), |
@@ -68,6 +68,13 @@ struct voltage_policy_single_rail { | |||
68 | u8 rail_idx; | 68 | u8 rail_idx; |
69 | }; | 69 | }; |
70 | 70 | ||
71 | struct voltage_policy_single_rail_multi_step { | ||
72 | struct voltage_policy_single_rail super; | ||
73 | u16 inter_switch_delay_us; | ||
74 | u32 ramp_up_step_size_uv; | ||
75 | u32 ramp_down_step_size_uv; | ||
76 | }; | ||
77 | |||
71 | u32 volt_policy_sw_setup(struct gk20a *g); | 78 | u32 volt_policy_sw_setup(struct gk20a *g); |
72 | u32 volt_policy_pmu_setup(struct gk20a *g); | 79 | u32 volt_policy_pmu_setup(struct gk20a *g); |
73 | #endif | 80 | #endif |