Home
last modified time | relevance | path

Searched refs:gru (Results 1 – 21 of 21) sorted by relevance

/Linux-v4.19/drivers/misc/sgi-gru/
Dgrumain.c97 static int gru_wrap_asid(struct gru_state *gru) in gru_wrap_asid() argument
99 gru_dbg(grudev, "gid %d\n", gru->gs_gid); in gru_wrap_asid()
101 gru->gs_asid_gen++; in gru_wrap_asid()
106 static int gru_reset_asid_limit(struct gru_state *gru, int asid) in gru_reset_asid_limit() argument
110 gru_dbg(grudev, "gid %d, asid 0x%x\n", gru->gs_gid, asid); in gru_reset_asid_limit()
114 asid = gru_wrap_asid(gru); in gru_reset_asid_limit()
115 gru_flush_all_tlb(gru); in gru_reset_asid_limit()
116 gid = gru->gs_gid; in gru_reset_asid_limit()
119 if (!gru->gs_gts[i] || is_kernel_context(gru->gs_gts[i])) in gru_reset_asid_limit()
121 inuse_asid = gru->gs_gts[i]->ts_gms->ms_asids[gid].mt_asid; in gru_reset_asid_limit()
[all …]
Dgrutlbpurge.c60 static inline int get_off_blade_tgh(struct gru_state *gru) in get_off_blade_tgh() argument
64 n = GRU_NUM_TGH - gru->gs_tgh_first_remote; in get_off_blade_tgh()
66 n += gru->gs_tgh_first_remote; in get_off_blade_tgh()
70 static inline int get_on_blade_tgh(struct gru_state *gru) in get_on_blade_tgh() argument
72 return uv_blade_processor_id() >> gru->gs_tgh_local_shift; in get_on_blade_tgh()
76 *gru) in get_lock_tgh_handle()
82 if (uv_numa_blade_id() == gru->gs_blade_id) in get_lock_tgh_handle()
83 n = get_on_blade_tgh(gru); in get_lock_tgh_handle()
85 n = get_off_blade_tgh(gru); in get_lock_tgh_handle()
86 tgh = get_tgh_by_index(gru, n); in get_lock_tgh_handle()
[all …]
Dgrufile.c242 static void gru_init_chiplet(struct gru_state *gru, unsigned long paddr, in gru_init_chiplet() argument
245 spin_lock_init(&gru->gs_lock); in gru_init_chiplet()
246 spin_lock_init(&gru->gs_asid_lock); in gru_init_chiplet()
247 gru->gs_gru_base_paddr = paddr; in gru_init_chiplet()
248 gru->gs_gru_base_vaddr = vaddr; in gru_init_chiplet()
249 gru->gs_gid = blade_id * GRU_CHIPLETS_PER_BLADE + chiplet_id; in gru_init_chiplet()
250 gru->gs_blade = gru_base[blade_id]; in gru_init_chiplet()
251 gru->gs_blade_id = blade_id; in gru_init_chiplet()
252 gru->gs_chiplet_id = chiplet_id; in gru_init_chiplet()
253 gru->gs_cbr_map = (GRU_CBR_AU == 64) ? ~0 : (1UL << GRU_CBR_AU) - 1; in gru_init_chiplet()
[all …]
Dgrukdump.c77 static int gru_dump_tfm(struct gru_state *gru, in gru_dump_tfm() argument
87 tfm = get_tfm(gru->gs_gru_base_vaddr, i); in gru_dump_tfm()
97 static int gru_dump_tgh(struct gru_state *gru, in gru_dump_tgh() argument
107 tgh = get_tgh(gru->gs_gru_base_vaddr, i); in gru_dump_tgh()
117 static int gru_dump_context(struct gru_state *gru, int ctxnum, in gru_dump_context() argument
129 grubase = gru->gs_gru_base_vaddr; in gru_dump_context()
150 gts = gru->gs_gts[ctxnum]; in gru_dump_context()
174 hdr.gid = gru->gs_gid; in gru_dump_context()
187 struct gru_state *gru; in gru_dump_chiplet_request() local
200 gru = GID_TO_GRU(req.gid); in gru_dump_chiplet_request()
[all …]
Dgrufault.c154 static void get_clear_fault_map(struct gru_state *gru, in get_clear_fault_map() argument
161 tfm = get_tfm_for_cpu(gru, gru_cpu_fault_map_id()); in get_clear_fault_map()
322 static void gru_preload_tlb(struct gru_state *gru, in gru_preload_tlb() argument
351 atomic ? "atomic" : "non-atomic", gru->gs_gid, gts, tfh, in gru_preload_tlb()
368 static int gru_try_dropin(struct gru_state *gru, in gru_try_dropin() argument
441 gru_preload_tlb(gru, gts, atomic, vaddr, asid, write, tlb_preload_count, tfh, cbe); in gru_try_dropin()
452 atomic ? "atomic" : "non-atomic", gru->gs_gid, gts, tfh, vaddr, asid, in gru_try_dropin()
534 struct gru_state *gru; in gru_intr() local
543 gru = &gru_base[blade]->bs_grus[chiplet]; in gru_intr()
544 if (!gru) { in gru_intr()
[all …]
Dgruprocfs.c176 struct gru_state *gru = GID_TO_GRU(gid); in cch_seq_show() local
183 if (gru) in cch_seq_show()
185 ts = gru->gs_gts[i]; in cch_seq_show()
189 gru->gs_gid, gru->gs_blade_id, i, in cch_seq_show()
204 struct gru_state *gru = GID_TO_GRU(gid); in gru_seq_show() local
212 if (gru) { in gru_seq_show()
213 ctxfree = GRU_NUM_CCH - gru->gs_active_contexts; in gru_seq_show()
214 cbrfree = hweight64(gru->gs_cbr_map) * GRU_CBR_AU_SIZE; in gru_seq_show()
215 dsrfree = hweight64(gru->gs_dsr_map) * GRU_DSR_AU_BYTES; in gru_seq_show()
217 gru->gs_gid, gru->gs_blade_id, GRU_NUM_CCH - ctxfree, in gru_seq_show()
Dgrutables.h523 #define for_each_gru_on_blade(gru, nid, i) \ argument
524 for ((gru) = gru_base[nid]->bs_grus, (i) = 0; \
526 (i)++, (gru)++)
533 #define for_each_gts_on_gru(gts, gru, ctxnum) \ argument
535 if (((gts) = (gru)->gs_gts[ctxnum]))
553 #define gseg_physical_address(gru, ctxnum) \ argument
554 ((gru)->gs_gru_base_paddr + ctxnum * GRU_GSEG_STRIDE)
555 #define gseg_virtual_address(gru, ctxnum) \ argument
556 ((gru)->gs_gru_base_vaddr + ctxnum * GRU_GSEG_STRIDE)
642 extern void gru_tgh_flush_init(struct gru_state *gru);
[all …]
DMakefile3 obj-$(CONFIG_SGI_GRU) := gru.o
4 gru-y := grufile.o grumain.o grufault.o grutlbpurge.o gruprocfs.o grukservices.o gruhandles.o grukd…
Dgrukservices.c154 struct gru_state *gru; in gru_load_kernel_context() local
186 gru = bs->bs_kgts->ts_gru; in gru_load_kernel_context()
187 vaddr = gru->gs_gru_base_vaddr; in gru_load_kernel_context()
/Linux-v4.19/Documentation/devicetree/bindings/arm/
Drockchip.txt81 "google,bob", "google,gru", "rockchip,rk3399";
90 - compatible = "google,gru-rev15", "google,gru-rev14",
91 "google,gru-rev13", "google,gru-rev12",
92 "google,gru-rev11", "google,gru-rev10",
93 "google,gru-rev9", "google,gru-rev8",
94 "google,gru-rev7", "google,gru-rev6",
95 "google,gru-rev5", "google,gru-rev4",
96 "google,gru-rev3", "google,gru-rev2",
97 "google,gru", "rockchip,rk3399";
120 "google,kevin", "google,gru", "rockchip,rk3399";
/Linux-v4.19/arch/arm64/boot/dts/rockchip/
DMakefile14 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-gru-bob.dtb
15 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-gru-kevin.dtb
Drk3399-gru-bob.dts9 #include "rk3399-gru-chromebook.dtsi"
18 "google,bob", "google,gru", "rockchip,rk3399";
Drk3399-gru-kevin.dts9 #include "rk3399-gru-chromebook.dtsi"
26 "google,kevin", "google,gru", "rockchip,rk3399";
203 /* Adjustments to things in the gru baseboard */
Drk3399-gru-chromebook.dtsi8 #include "rk3399-gru.dtsi"
Drk3399-gru.dtsi289 compatible = "rockchip,rk3399-gru-sound";
667 &clk_32k /* This pin is always 32k on gru boards */
/Linux-v4.19/Documentation/devicetree/bindings/sound/
Drockchip,rk3399-gru-sound.txt4 - compatible: "rockchip,rk3399-gru-sound"
18 compatible = "rockchip,rk3399-gru-sound";
/Linux-v4.19/sound/soc/rockchip/
DMakefile15 snd-soc-rk3399-gru-sound-objs := rk3399_gru_sound.o
20 obj-$(CONFIG_SND_SOC_RK3399_GRU_SOUND) += snd-soc-rk3399-gru-sound.o
/Linux-v4.19/arch/x86/kernel/apic/
Dx2apic_uv_x.c772 union uvh_rh_gam_gru_overlay_config_mmr_u gru; in map_gru_distributed() local
777 gru.v = c; in map_gru_distributed()
780 gru_dist_base = gru.v & 0x000007fff0000000UL; in map_gru_distributed()
808 union uvh_rh_gam_gru_overlay_config_mmr_u gru; in map_gru_high() local
813 gru.v = uv_read_local_mmr(UVH_RH_GAM_GRU_OVERLAY_CONFIG_MMR); in map_gru_high()
814 if (!gru.s.enable) { in map_gru_high()
820 if (is_uv3_hub() && gru.s3.mode) { in map_gru_high()
821 map_gru_distributed(gru.v); in map_gru_high()
825 base = (gru.v & mask) >> shift; in map_gru_high()
/Linux-v4.19/drivers/misc/
DMakefile27 obj-$(CONFIG_SGI_GRU) += sgi-gru/
/Linux-v4.19/Documentation/ioctl/
Dioctl-number.txt125 'G' 00-3F drivers/misc/sgi-gru/grulib.h conflict!
/Linux-v4.19/
DMAINTAINERS13126 F: drivers/misc/sgi-gru/