/drivers/misc/sgi-gru/ |
H A D | Makefile | 3 obj-$(CONFIG_SGI_GRU) := gru.o 4 gru-y := grufile.o grumain.o grufault.o grutlbpurge.o gruprocfs.o grukservices.o gruhandles.o grukdump.o
|
H A D | grumain.c | 33 #include "gru.h" 40 .name = "gru" 51 * Select a gru fault map to be used by the current cpu. Note that 97 static int gru_wrap_asid(struct gru_state *gru) argument 99 gru_dbg(grudev, "gid %d\n", gru->gs_gid); 101 gru->gs_asid_gen++; 106 static int gru_reset_asid_limit(struct gru_state *gru, int asid) argument 110 gru_dbg(grudev, "gid %d, asid 0x%x\n", gru->gs_gid, asid); 114 asid = gru_wrap_asid(gru); 115 gru_flush_all_tlb(gru); 150 gru_assign_asid(struct gru_state *gru) argument 185 gru_reserve_cb_resources(struct gru_state *gru, int cbr_au_count, char *cbmap) argument 192 gru_reserve_ds_resources(struct gru_state *gru, int dsr_au_count, char *dsmap) argument 199 reserve_gru_resources(struct gru_state *gru, struct gru_thread_state *gts) argument 210 free_gru_resources(struct gru_state *gru, struct gru_thread_state *gts) argument 225 check_gru_resources(struct gru_state *gru, int cbr_au_count, int dsr_au_count, int max_active_contexts) argument 237 gru_load_mm_tracker(struct gru_state *gru, struct gru_thread_state *gts) argument 273 gru_unload_mm_tracker(struct gru_state *gru, struct gru_thread_state *gts) argument 439 struct gru_state *gru; local 557 struct gru_state *gru = gts->ts_gru; local 593 struct gru_state *gru = gts->ts_gru; local 661 struct gru_state *gru = gts->ts_gru; local 712 gru_check_chiplet_assignment(struct gru_state *gru, struct gru_thread_state *gts) argument 734 struct gru_state *gru; local 786 struct gru_state *gru, *gru0; local 857 gru_assign_context_number(struct gru_state *gru) argument 871 struct gru_state *gru, *grux; local [all...] |
H A D | grutlbpurge.c | 39 #include "gru.h" 60 static inline int get_off_blade_tgh(struct gru_state *gru) argument 64 n = GRU_NUM_TGH - gru->gs_tgh_first_remote; 66 n += gru->gs_tgh_first_remote; 70 static inline int get_on_blade_tgh(struct gru_state *gru) argument 72 return uv_blade_processor_id() >> gru->gs_tgh_local_shift; 76 *gru) 82 if (uv_numa_blade_id() == gru->gs_blade_id) 83 n = get_on_blade_tgh(gru); 85 n = get_off_blade_tgh(gru); 75 get_lock_tgh_handle(struct gru_state *gru) argument 161 struct gru_state *gru; local 209 gru_flush_all_tlb(struct gru_state *gru) argument 355 gru_tgh_flush_init(struct gru_state *gru) argument [all...] |
H A D | grufile.c | 42 #include "gru.h" 65 * Called when unmapping a device mapping. Frees all gru resources 237 static void gru_init_chiplet(struct gru_state *gru, unsigned long paddr, argument 240 spin_lock_init(&gru->gs_lock); 241 spin_lock_init(&gru->gs_asid_lock); 242 gru->gs_gru_base_paddr = paddr; 243 gru->gs_gru_base_vaddr = vaddr; 244 gru->gs_gid = blade_id * GRU_CHIPLETS_PER_BLADE + chiplet_id; 245 gru->gs_blade = gru_base[blade_id]; 246 gru 265 struct gru_state *gru; local [all...] |
H A D | grukdump.c | 30 #include "gru.h" 77 static int gru_dump_tfm(struct gru_state *gru, argument 88 tfm = get_tfm(gru->gs_gru_base_vaddr, i); 98 static int gru_dump_tgh(struct gru_state *gru, argument 109 tgh = get_tgh(gru->gs_gru_base_vaddr, i); 119 static int gru_dump_context(struct gru_state *gru, int ctxnum, argument 131 grubase = gru->gs_gru_base_vaddr; 149 gts = gru->gs_gts[ctxnum]; 173 hdr.gid = gru->gs_gid; 190 struct gru_state *gru; local [all...] |
H A D | grutables.h | 150 #include "gru.h" 315 unsigned int mt_asid:24; /* current base ASID for gru */ 415 gru segments (64) */ 417 gru segments (64) */ 476 struct gru_state *bs_lru_gru; /* STEAL - last gru 522 #define for_each_gru_on_blade(gru, nid, i) \ 523 for ((gru) = gru_base[nid]->bs_grus, (i) = 0; \ 525 (i)++, (gru)++) 531 /* Scan all active GTSs on a gru. Note: must hold ss_lock to use this macro. */ 532 #define for_each_gts_on_gru(gts, gru, ctxnu [all...] |
H A D | gruprocfs.c | 29 #include "gru.h" 180 struct gru_state *gru = GID_TO_GRU(gid); local 187 if (gru) 189 ts = gru->gs_gts[i]; 193 gru->gs_gid, gru->gs_blade_id, i, 208 struct gru_state *gru = GID_TO_GRU(gid); local 216 if (gru) { 217 ctxfree = GRU_NUM_CCH - gru->gs_active_contexts; 218 cbrfree = hweight64(gru [all...] |
H A D | grufault.c | 38 #include "gru.h" 154 static void get_clear_fault_map(struct gru_state *gru, argument 161 tfm = get_tfm_for_cpu(gru, gru_cpu_fault_map_id()); 318 static void gru_preload_tlb(struct gru_state *gru, argument 347 atomic ? "atomic" : "non-atomic", gru->gs_gid, gts, tfh, 364 static int gru_try_dropin(struct gru_state *gru, argument 437 gru_preload_tlb(gru, gts, atomic, vaddr, asid, write, tlb_preload_count, tfh, cbe); 448 atomic ? "atomic" : "non-atomic", gru->gs_gid, gts, tfh, vaddr, asid, 530 struct gru_state *gru; local 539 gru 749 struct gru_state *gru; local [all...] |
H A D | grukservices.c | 36 #include "gru.h" 154 struct gru_state *gru; local 181 gru = bs->bs_kgts->ts_gru; 182 vaddr = gru->gs_gru_base_vaddr; 1125 * of driver & gru.
|
/drivers/misc/ |
H A D | Makefile | 26 obj-$(CONFIG_SGI_GRU) += sgi-gru/
|