aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
authorRex Zhu <Rex.Zhu@amd.com>2017-09-20 05:34:15 -0400
committerAlex Deucher <alexander.deucher@amd.com>2017-09-26 15:14:36 -0400
commitaec8d5cc28b32b02e09c92c422f4a4ed9f53ff74 (patch)
tree24a5f5d24d1dc4d647c154b53f7da6e2d5d83cb8 /drivers/gpu/drm
parent63196fe79b28e2b161a6d951877bdd0451b1f1a3 (diff)
drm/amd/powerplay: delete dead code in smumgr
Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Rex Zhu <Rex.Zhu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r--drivers/gpu/drm/amd/powerplay/inc/smumgr.h32
-rw-r--r--drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c87
2 files changed, 0 insertions, 119 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/inc/smumgr.h b/drivers/gpu/drm/amd/powerplay/inc/smumgr.h
index cc67d225995f..7c9aba81cd6a 100644
--- a/drivers/gpu/drm/amd/powerplay/inc/smumgr.h
+++ b/drivers/gpu/drm/amd/powerplay/inc/smumgr.h
@@ -101,30 +101,12 @@ extern int smum_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg);
101extern int smum_send_msg_to_smc_with_parameter(struct pp_hwmgr *hwmgr, 101extern int smum_send_msg_to_smc_with_parameter(struct pp_hwmgr *hwmgr,
102 uint16_t msg, uint32_t parameter); 102 uint16_t msg, uint32_t parameter);
103 103
104extern int smum_wait_on_register(struct pp_hwmgr *hwmgr,
105 uint32_t index, uint32_t value, uint32_t mask);
106
107extern int smum_wait_for_register_unequal(struct pp_hwmgr *hwmgr,
108 uint32_t index, uint32_t value, uint32_t mask);
109
110extern int smum_wait_on_indirect_register(struct pp_hwmgr *hwmgr,
111 uint32_t indirect_port, uint32_t index,
112 uint32_t value, uint32_t mask);
113
114
115extern void smum_wait_for_indirect_register_unequal(
116 struct pp_hwmgr *hwmgr,
117 uint32_t indirect_port, uint32_t index,
118 uint32_t value, uint32_t mask);
119
120
121extern int smu_allocate_memory(void *device, uint32_t size, 104extern int smu_allocate_memory(void *device, uint32_t size,
122 enum cgs_gpu_mem_type type, 105 enum cgs_gpu_mem_type type,
123 uint32_t byte_align, uint64_t *mc_addr, 106 uint32_t byte_align, uint64_t *mc_addr,
124 void **kptr, void *handle); 107 void **kptr, void *handle);
125 108
126extern int smu_free_memory(void *device, void *handle); 109extern int smu_free_memory(void *device, void *handle);
127extern int vega10_smum_init(struct pp_hwmgr *hwmgr);
128 110
129extern int smum_update_sclk_threshold(struct pp_hwmgr *hwmgr); 111extern int smum_update_sclk_threshold(struct pp_hwmgr *hwmgr);
130 112
@@ -147,19 +129,5 @@ extern int smum_populate_requested_graphic_levels(struct pp_hwmgr *hwmgr,
147 129
148extern bool smum_is_hw_avfs_present(struct pp_hwmgr *hwmgr); 130extern bool smum_is_hw_avfs_present(struct pp_hwmgr *hwmgr);
149 131
150#define SMUM_FIELD_SHIFT(reg, field) reg##__##field##__SHIFT
151
152#define SMUM_FIELD_MASK(reg, field) reg##__##field##_MASK
153
154
155#define SMUM_GET_FIELD(value, reg, field) \
156 (((value) & SMUM_FIELD_MASK(reg, field)) \
157 >> SMUM_FIELD_SHIFT(reg, field))
158
159
160#define SMUM_READ_INDIRECT_FIELD(device, port, reg, field) \
161 SMUM_GET_FIELD(cgs_read_ind_register(device, port, ix##reg), \
162 reg, field)
163
164 132
165#endif 133#endif
diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c
index d3c12e0ca464..867388456530 100644
--- a/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c
+++ b/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c
@@ -144,93 +144,6 @@ int smum_send_msg_to_smc_with_parameter(struct pp_hwmgr *hwmgr,
144 hwmgr, msg, parameter); 144 hwmgr, msg, parameter);
145} 145}
146 146
147/*
148 * Returns once the part of the register indicated by the mask has
149 * reached the given value.
150 */
151int smum_wait_on_register(struct pp_hwmgr *hwmgr,
152 uint32_t index,
153 uint32_t value, uint32_t mask)
154{
155 uint32_t i;
156 uint32_t cur_value;
157
158 if (hwmgr == NULL || hwmgr->device == NULL)
159 return -EINVAL;
160
161 for (i = 0; i < hwmgr->usec_timeout; i++) {
162 cur_value = cgs_read_register(hwmgr->device, index);
163 if ((cur_value & mask) == (value & mask))
164 break;
165 udelay(1);
166 }
167
168 /* timeout means wrong logic*/
169 if (i == hwmgr->usec_timeout)
170 return -1;
171
172 return 0;
173}
174
175int smum_wait_for_register_unequal(struct pp_hwmgr *hwmgr,
176 uint32_t index,
177 uint32_t value, uint32_t mask)
178{
179 uint32_t i;
180 uint32_t cur_value;
181
182 if (hwmgr == NULL)
183 return -EINVAL;
184
185 for (i = 0; i < hwmgr->usec_timeout; i++) {
186 cur_value = cgs_read_register(hwmgr->device,
187 index);
188 if ((cur_value & mask) != (value & mask))
189 break;
190 udelay(1);
191 }
192
193 /* timeout means wrong logic */
194 if (i == hwmgr->usec_timeout)
195 return -1;
196
197 return 0;
198}
199
200
201/*
202 * Returns once the part of the register indicated by the mask
203 * has reached the given value.The indirect space is described by
204 * giving the memory-mapped index of the indirect index register.
205 */
206int smum_wait_on_indirect_register(struct pp_hwmgr *hwmgr,
207 uint32_t indirect_port,
208 uint32_t index,
209 uint32_t value,
210 uint32_t mask)
211{
212 if (hwmgr == NULL || hwmgr->device == NULL)
213 return -EINVAL;
214
215 cgs_write_register(hwmgr->device, indirect_port, index);
216 return smum_wait_on_register(hwmgr, indirect_port + 1,
217 mask, value);
218}
219
220void smum_wait_for_indirect_register_unequal(
221 struct pp_hwmgr *hwmgr,
222 uint32_t indirect_port,
223 uint32_t index,
224 uint32_t value,
225 uint32_t mask)
226{
227 if (hwmgr == NULL || hwmgr->device == NULL)
228 return;
229 cgs_write_register(hwmgr->device, indirect_port, index);
230 smum_wait_for_register_unequal(hwmgr, indirect_port + 1,
231 value, mask);
232}
233
234int smu_allocate_memory(void *device, uint32_t size, 147int smu_allocate_memory(void *device, uint32_t size,
235 enum cgs_gpu_mem_type type, 148 enum cgs_gpu_mem_type type,
236 uint32_t byte_align, uint64_t *mc_addr, 149 uint32_t byte_align, uint64_t *mc_addr,