Lines Matching defs:gru
30 #include "gru.h"
58 * Called when unmapping a device mapping. Frees all gru resources
230 static void gru_init_chiplet(struct gru_state *gru, unsigned long paddr,
233 spin_lock_init(&gru->gs_lock);
234 spin_lock_init(&gru->gs_asid_lock);
235 gru->gs_gru_base_paddr = paddr;
236 gru->gs_gru_base_vaddr = vaddr;
237 gru->gs_gid = blade_id * GRU_CHIPLETS_PER_BLADE + chiplet_id;
238 gru->gs_blade = gru_base[blade_id];
239 gru->gs_blade_id = blade_id;
240 gru->gs_chiplet_id = chiplet_id;
241 gru->gs_cbr_map = (GRU_CBR_AU == 64) ? ~0 : (1UL << GRU_CBR_AU) - 1;
242 gru->gs_dsr_map = (1UL << GRU_DSR_AU) - 1;
243 gru->gs_asid_limit = MAX_ASID;
244 gru_tgh_flush_init(gru);
245 if (gru->gs_gid >= gru_max_gids)
246 gru_max_gids = gru->gs_gid + 1;
248 blade_id, gru->gs_gid, gru->gs_gru_base_vaddr,
249 gru->gs_gru_base_paddr);
258 struct gru_state *gru;
278 for (gru = gru_base[bid]->bs_grus, chip = 0;
280 chip++, gru++) {
283 gru_init_chiplet(gru, paddr, vaddr, bid, chip);
284 n = hweight64(gru->gs_cbr_map) * GRU_CBR_AU_SIZE;
286 n = hweight64(gru->gs_dsr_map) * GRU_DSR_AU_BYTES;
589 .name = "gru",