aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/misc')
-rw-r--r--drivers/misc/sgi-gru/grufile.c38
-rw-r--r--drivers/misc/sgi-gru/grulib.h3
2 files changed, 0 insertions, 41 deletions
diff --git a/drivers/misc/sgi-gru/grufile.c b/drivers/misc/sgi-gru/grufile.c
index 0d1c8b8c1c12..2b72629db91a 100644
--- a/drivers/misc/sgi-gru/grufile.c
+++ b/drivers/misc/sgi-gru/grufile.c
@@ -183,41 +183,6 @@ static long gru_get_config_info(unsigned long arg)
183} 183}
184 184
185/* 185/*
186 * Get GRU chiplet status
187 */
188static long gru_get_chiplet_status(unsigned long arg)
189{
190 struct gru_state *gru;
191 struct gru_chiplet_info info;
192
193 if (copy_from_user(&info, (void __user *)arg, sizeof(info)))
194 return -EFAULT;
195
196 if (info.node == -1)
197 info.node = numa_node_id();
198 if (info.node >= num_possible_nodes() ||
199 info.chiplet >= GRU_CHIPLETS_PER_HUB ||
200 info.node < 0 || info.chiplet < 0)
201 return -EINVAL;
202
203 info.blade = uv_node_to_blade_id(info.node);
204 gru = get_gru(info.blade, info.chiplet);
205
206 info.total_dsr_bytes = GRU_NUM_DSR_BYTES;
207 info.total_cbr = GRU_NUM_CB;
208 info.total_user_dsr_bytes = GRU_NUM_DSR_BYTES -
209 gru->gs_reserved_dsr_bytes;
210 info.total_user_cbr = GRU_NUM_CB - gru->gs_reserved_cbrs;
211 info.free_user_dsr_bytes = hweight64(gru->gs_dsr_map) *
212 GRU_DSR_AU_BYTES;
213 info.free_user_cbr = hweight64(gru->gs_cbr_map) * GRU_CBR_AU_SIZE;
214
215 if (copy_to_user((void __user *)arg, &info, sizeof(info)))
216 return -EFAULT;
217 return 0;
218}
219
220/*
221 * gru_file_unlocked_ioctl 186 * gru_file_unlocked_ioctl
222 * 187 *
223 * Called to update file attributes via IOCTL calls. 188 * Called to update file attributes via IOCTL calls.
@@ -242,9 +207,6 @@ static long gru_file_unlocked_ioctl(struct file *file, unsigned int req,
242 case GRU_USER_UNLOAD_CONTEXT: 207 case GRU_USER_UNLOAD_CONTEXT:
243 err = gru_user_unload_context(arg); 208 err = gru_user_unload_context(arg);
244 break; 209 break;
245 case GRU_GET_CHIPLET_STATUS:
246 err = gru_get_chiplet_status(arg);
247 break;
248 case GRU_USER_FLUSH_TLB: 210 case GRU_USER_FLUSH_TLB:
249 err = gru_user_flush_tlb(arg); 211 err = gru_user_flush_tlb(arg);
250 break; 212 break;
diff --git a/drivers/misc/sgi-gru/grulib.h b/drivers/misc/sgi-gru/grulib.h
index c5865dd19eec..8ed6acbc47c7 100644
--- a/drivers/misc/sgi-gru/grulib.h
+++ b/drivers/misc/sgi-gru/grulib.h
@@ -44,9 +44,6 @@
44/* For user unload context */ 44/* For user unload context */
45#define GRU_USER_UNLOAD_CONTEXT _IOWR(GRU_IOCTL_NUM, 9, void *) 45#define GRU_USER_UNLOAD_CONTEXT _IOWR(GRU_IOCTL_NUM, 9, void *)
46 46
47/* For fetching GRU chiplet status */
48#define GRU_GET_CHIPLET_STATUS _IOWR(GRU_IOCTL_NUM, 10, void *)
49
50/* For dumpping GRU chiplet state */ 47/* For dumpping GRU chiplet state */
51#define GRU_DUMP_CHIPLET_STATE _IOWR(GRU_IOCTL_NUM, 11, void *) 48#define GRU_DUMP_CHIPLET_STATE _IOWR(GRU_IOCTL_NUM, 11, void *)
52 49