Lines Matching refs:oa_unit
87 struct xe_oa_unit *oa_unit;
204 return &stream->oa_unit->regs;
464 return stream->oa_unit->type == DRM_XE_OA_UNIT_TYPE_OAG ?
485 stream->oa_unit->type == DRM_XE_OA_UNIT_TYPE_OAG)
851 if ((stream->oa_unit->type == DRM_XE_OA_UNIT_TYPE_OAM ||
852 stream->oa_unit->type == DRM_XE_OA_UNIT_TYPE_OAM_SAG) &&
859 struct xe_oa_unit *u = stream->oa_unit;
1123 if ((stream->oa_unit->type == DRM_XE_OA_UNIT_TYPE_OAM ||
1124 stream->oa_unit->type == DRM_XE_OA_UNIT_TYPE_OAM_SAG) &&
1166 struct xe_oa_unit *u = >->oa.oa_unit[i];
1179 param->oa_unit = xe_oa_lookup_oa_unit(oa, value);
1180 if (!param->oa_unit) {
1731 stream->oa_unit = param->oa_unit;
1752 stream->oa_unit->type == DRM_XE_OA_UNIT_TYPE_OAG && stream->sample)
1797 WRITE_ONCE(stream->oa_unit->exclusive_stream, stream);
1831 if (param->oa_unit->exclusive_stream) {
1925 switch (param->oa_unit->type) {
1946 return hwe->oa_unit && hwe->oa_unit->num_engines ?
1947 hwe->oa_unit->oa_unit_id : U16_MAX;
1950 /* A hwe must be assigned to stream/oa_unit for batch submissions */
1961 if (!param->hwe || param->hwe->oa_unit != param->oa_unit)
1967 for_each_hw_engine(hwe, param->oa_unit->gt, id) {
1968 if (hwe->oa_unit == param->oa_unit) {
1974 /* If we still didn't find a hwe, just get one with a valid oa_unit from the same gt */
1975 for_each_hw_engine(hwe, param->oa_unit->gt, id) {
1976 if (!hwe->oa_unit)
1985 param->engine_instance, param->oa_unit->oa_unit_id);
2023 if (!param.oa_unit)
2024 param.oa_unit = &xe_root_mmio_gt(oa->xe)->oa.oa_unit[0];
2028 if (XE_IOCTL_DBG(oa->xe, param.oa_unit->type != DRM_XE_OA_UNIT_TYPE_OAG))
2537 * unit without attached engines. Fused off engines can also result in oa_unit's with
2627 struct xe_oa_unit *u = >->oa.oa_unit[i];
2673 hwe->oa_unit = NULL;
2676 hwe->oa_unit = &u[index];
2681 gt->oa.oa_unit = u;
2699 u = >->oa.oa_unit[i];
2707 xe_gt_dbg(gt, "oa_unit %d, type %d, Engines: %s\n", u->oa_unit_id, u->type, buf);