Lines Matching full:instance
25 * one specific instance). Reads of MCR registers always operate in a unicast
27 * Selection of a specific MCR instance for unicast operations is referred to
43 "INSTANCE 0",
143 * @instance: instance number (documented as "subsliceid" on older platforms)
152 int group, int instance, u32 value) in rw_with_mcr_steering_fw() argument
160 mcr_ss = GEN11_MCR_SLICE(group) | GEN11_MCR_SUBSLICE(instance); in rw_with_mcr_steering_fw()
167 * from a single register instance regardless of how that bit in rw_with_mcr_steering_fw()
178 mcr_ss = GEN8_MCR_SLICE(group) | GEN8_MCR_SUBSLICE(instance); in rw_with_mcr_steering_fw()
202 int group, int instance, in rw_with_mcr_steering() argument
217 val = rw_with_mcr_steering_fw(uncore, reg, rw_flag, group, instance, value); in rw_with_mcr_steering()
226 * intel_gt_mcr_read - read a specific instance of an MCR register
230 * @instance: the MCR instance
233 * group/instance.
237 int group, int instance) in intel_gt_mcr_read() argument
239 return rw_with_mcr_steering(gt->uncore, reg, FW_REG_READ, group, instance, 0); in intel_gt_mcr_read()
243 * intel_gt_mcr_unicast_write - write a specific instance of an MCR register
248 * @instance: the MCR instance
251 * group/instance.
254 int group, int instance) in intel_gt_mcr_unicast_write() argument
256 rw_with_mcr_steering(gt->uncore, reg, FW_REG_WRITE, group, instance, value); in intel_gt_mcr_unicast_write()
326 * @instance: Instance ID returned
328 * Determines group and instance values that will steer reads of the specified
329 * MCR class to a non-terminated instance.
333 u8 *group, u8 *instance) in get_nonterminated_steering() argument
338 *instance = __ffs(gt->info.l3bank_mask); in get_nonterminated_steering()
343 *instance = 0; /* unused */ in get_nonterminated_steering()
352 *instance = 0; /* unused */ in get_nonterminated_steering()
356 * There are a lot of MCR types for which instance (0, 0) in get_nonterminated_steering()
360 *instance = 0; in get_nonterminated_steering()
365 *instance = 0; in get_nonterminated_steering()
370 * intel_gt_mcr_get_nonterminated_steering - find group/instance values that
371 * will steer a register to a non-terminated instance
375 * @instance: return variable for instance steering
377 * This function returns a group/instance pair that is guaranteed to work for
384 u8 *group, u8 *instance) in intel_gt_mcr_get_nonterminated_steering() argument
390 get_nonterminated_steering(gt, type, group, instance); in intel_gt_mcr_get_nonterminated_steering()
396 *instance = gt->default_steering.instanceid; in intel_gt_mcr_get_nonterminated_steering()
400 * intel_gt_mcr_read_any_fw - reads one instance of an MCR register
405 * instance (i.e., one that isn't fused off or powered down by power gating).
410 * Returns the value from a non-terminated instance of @reg.
415 u8 group, instance; in intel_gt_mcr_read_any_fw() local
419 get_nonterminated_steering(gt, type, &group, &instance); in intel_gt_mcr_read_any_fw()
422 group, instance, 0); in intel_gt_mcr_read_any_fw()
430 * intel_gt_mcr_read_any - reads one instance of an MCR register
435 * instance (i.e., one that isn't fused off or powered down by power gating).
437 * Returns the value from a non-terminated instance of @reg.
442 u8 group, instance; in intel_gt_mcr_read_any() local
446 get_nonterminated_steering(gt, type, &group, &instance); in intel_gt_mcr_read_any()
449 group, instance, 0); in intel_gt_mcr_read_any()
462 u8 group, instance; in report_steering_type() local
472 get_nonterminated_steering(gt, type, &group, &instance); in report_steering_type()
473 drm_printf(p, "%s steering: group=0x%x, instance=0x%x\n", in report_steering_type()
474 intel_steering_types[type], group, instance); in report_steering_type()
486 drm_printf(p, "Default steering: group=0x%x, instance=0x%x\n", in intel_gt_mcr_report_steering()
499 * intel_gt_mcr_get_ss_steering - returns the group/instance steering for a SS
503 * @instance: pointer to storage for steering instance ID
505 * Returns the steering IDs (via the @group and @instance parameters) that
509 unsigned int *group, unsigned int *instance) in intel_gt_mcr_get_ss_steering() argument
513 *instance = dss % GEN_DSS_PER_CSLICE; in intel_gt_mcr_get_ss_steering()
516 *instance = dss % GEN_DSS_PER_GSLICE; in intel_gt_mcr_get_ss_steering()
519 *instance = dss % GEN_MAX_SS_PER_HSW_SLICE; in intel_gt_mcr_get_ss_steering()