| /linux/drivers/gpu/drm/i915/ |
| H A D | intel_uncore.c | 47 return &to_i915(drm)->uncore; in to_intel_uncore() 53 fw_domains_get(struct intel_uncore *uncore, enum forcewake_domains fw_domains) in fw_domains_get() argument 55 uncore->fw_get_funcs->force_wake_get(uncore, fw_domains); in fw_domains_get() 64 i915->uncore.debug = &i915->mmio_debug; in intel_uncore_mmio_debug_init_early() 67 static void mmio_debug_suspend(struct intel_uncore *uncore) in mmio_debug_suspend() argument 69 if (!uncore->debug) in mmio_debug_suspend() 72 spin_lock(&uncore->debug->lock); in mmio_debug_suspend() 75 if (!uncore->debug->suspend_count++) { in mmio_debug_suspend() 76 uncore->debug->saved_mmio_check = uncore->debug->unclaimed_mmio_check; in mmio_debug_suspend() 77 uncore->debug->unclaimed_mmio_check = 0; in mmio_debug_suspend() [all …]
|
| H A D | vlv_suspend.c | 113 struct intel_uncore *uncore = &i915->uncore; in vlv_save_gunit_s0ix_state() local 120 s->wr_watermark = intel_uncore_read(uncore, GEN7_WR_WATERMARK); in vlv_save_gunit_s0ix_state() 121 s->gfx_prio_ctrl = intel_uncore_read(uncore, GEN7_GFX_PRIO_CTRL); in vlv_save_gunit_s0ix_state() 122 s->arb_mode = intel_uncore_read(uncore, ARB_MODE); in vlv_save_gunit_s0ix_state() 123 s->gfx_pend_tlb0 = intel_uncore_read(uncore, GEN7_GFX_PEND_TLB0); in vlv_save_gunit_s0ix_state() 124 s->gfx_pend_tlb1 = intel_uncore_read(uncore, GEN7_GFX_PEND_TLB1); in vlv_save_gunit_s0ix_state() 127 s->lra_limits[i] = intel_uncore_read(uncore, GEN7_LRA_LIMITS(i)); in vlv_save_gunit_s0ix_state() 129 s->media_max_req_count = intel_uncore_read(uncore, GEN7_MEDIA_MAX_REQ_COUNT); in vlv_save_gunit_s0ix_state() 130 s->gfx_max_req_count = intel_uncore_read(uncore, GEN7_GFX_MAX_REQ_COUNT); in vlv_save_gunit_s0ix_state() 132 s->render_hwsp = intel_uncore_read(uncore, RENDER_HWS_PGA_GEN7); in vlv_save_gunit_s0ix_state() [all …]
|
| H A D | i915_hwmon.c | 57 struct intel_uncore *uncore; member 82 struct intel_uncore *uncore = ddat->uncore; in hwm_locked_with_pm_intel_uncore_rmw() local 85 with_intel_runtime_pm(uncore->rpm, wakeref) { in hwm_locked_with_pm_intel_uncore_rmw() 88 intel_uncore_rmw(uncore, reg, clear, set); in hwm_locked_with_pm_intel_uncore_rmw() 103 struct intel_uncore *uncore = ddat->uncore; in hwm_field_read_and_scale() local 107 with_intel_runtime_pm(uncore->rpm, wakeref) in hwm_field_read_and_scale() 108 reg_value = intel_uncore_read(uncore, rgadr); in hwm_field_read_and_scale() 138 struct intel_uncore *uncore = ddat->uncore; in hwm_energy() local 150 with_intel_runtime_pm(uncore->rpm, wakeref) { in hwm_energy() 153 reg_val = intel_uncore_read(uncore, rgaddr); in hwm_energy() [all …]
|
| H A D | i915_perf.c | 439 struct intel_uncore *uncore = stream->uncore; in gen12_oa_hw_tail_read() local 441 return intel_uncore_read(uncore, __oa_regs(stream)->oa_tail_ptr) & in gen12_oa_hw_tail_read() 447 struct intel_uncore *uncore = stream->uncore; in gen8_oa_hw_tail_read() local 449 return intel_uncore_read(uncore, GEN8_OATAILPTR) & GEN8_OATAILPTR_MASK; in gen8_oa_hw_tail_read() 454 struct intel_uncore *uncore = stream->uncore; in gen7_oa_hw_tail_read() local 455 u32 oastatus1 = intel_uncore_read(uncore, GEN7_OASTATUS1); in gen7_oa_hw_tail_read() 599 drm_notice(&stream->uncore->i915->drm, in oa_buffer_check_unlocked() 733 struct intel_uncore *uncore = stream->uncore; in gen8_append_oa_reports() local 743 if (drm_WARN_ON(&uncore->i915->drm, !stream->enabled)) in gen8_append_oa_reports() 759 if (drm_WARN_ONCE(&uncore->i915->drm, in gen8_append_oa_reports() [all …]
|
| H A D | i915_ioctl.c | 44 struct intel_uncore *uncore = &i915->uncore; in i915_reg_read_ioctl() local 75 reg->val = intel_uncore_read64_2x32(uncore, in i915_reg_read_ioctl() 79 reg->val = intel_uncore_read64(uncore, in i915_reg_read_ioctl() 82 reg->val = intel_uncore_read(uncore, entry->offset_ldw); in i915_reg_read_ioctl() 84 reg->val = intel_uncore_read16(uncore, in i915_reg_read_ioctl() 87 reg->val = intel_uncore_read8(uncore, in i915_reg_read_ioctl()
|
| H A D | i915_gpu_error.c | 1266 struct intel_uncore *uncore = gt->_gt->uncore; in gt_record_fences() local 1269 if (GRAPHICS_VER(uncore->i915) >= 6) { in gt_record_fences() 1272 intel_uncore_read64(uncore, in gt_record_fences() 1274 } else if (GRAPHICS_VER(uncore->i915) >= 4) { in gt_record_fences() 1277 intel_uncore_read64(uncore, in gt_record_fences() 1282 intel_uncore_read(uncore, FENCE_REG(i)); in gt_record_fences() 1301 ee->fault_reg = intel_uncore_read(engine->uncore, in engine_record_registers() 1307 ee->fault_reg = intel_uncore_read(engine->uncore, in engine_record_registers() 1310 ee->fault_reg = intel_uncore_read(engine->uncore, in engine_record_registers() 1384 ee->hws = intel_uncore_read(engine->uncore, mmio); in engine_record_registers() [all …]
|
| /linux/arch/x86/events/amd/ |
| H A D | uncore.c | 82 void (*scan)(struct amd_uncore *uncore, unsigned int cpu); 83 int (*init)(struct amd_uncore *uncore, unsigned int cpu); 84 void (*move)(struct amd_uncore *uncore, unsigned int cpu); 85 void (*free)(struct amd_uncore *uncore, unsigned int cpu); 452 int amd_uncore_ctx_cid(struct amd_uncore *uncore, unsigned int cpu) in amd_uncore_ctx_cid() argument 454 union amd_uncore_info *info = per_cpu_ptr(uncore->info, cpu); in amd_uncore_ctx_cid() 459 int amd_uncore_ctx_gid(struct amd_uncore *uncore, unsigned int cpu) in amd_uncore_ctx_gid() argument 461 union amd_uncore_info *info = per_cpu_ptr(uncore->info, cpu); in amd_uncore_ctx_gid() 466 int amd_uncore_ctx_num_pmcs(struct amd_uncore *uncore, unsigned int cpu) in amd_uncore_ctx_num_pmcs() argument 468 union amd_uncore_info *info = per_cpu_ptr(uncore->info, cpu); in amd_uncore_ctx_num_pmcs() [all …]
|
| H A D | Makefile | 6 obj-$(CONFIG_PERF_EVENTS_AMD_UNCORE) += amd-uncore.o 7 amd-uncore-objs := uncore.o
|
| /linux/drivers/platform/x86/intel/uncore-frequency/ |
| H A D | Makefile | 6 obj-$(CONFIG_INTEL_UNCORE_FREQ_CONTROL) += intel-uncore-frequency.o 7 intel-uncore-frequency-y := uncore-frequency.o 8 obj-$(CONFIG_INTEL_UNCORE_FREQ_CONTROL) += intel-uncore-frequency-common.o 9 intel-uncore-frequency-common-y := uncore-frequency-common.o 10 obj-$(CONFIG_INTEL_UNCORE_FREQ_CONTROL_TPMI) += intel-uncore-frequency-tpmi.o 11 intel-uncore-frequency-tpmi-y := uncore-frequency-tpmi.o
|
| /linux/drivers/gpu/drm/i915/gt/ |
| H A D | intel_ggtt_fencing.c | 58 return fence->ggtt->vm.gt->uncore; in fence_to_uncore() 94 struct intel_uncore *uncore = fence_to_uncore(fence); in i965_write_fence_reg() local 106 intel_uncore_write_fw(uncore, fence_reg_lo, 0); in i965_write_fence_reg() 107 intel_uncore_posting_read_fw(uncore, fence_reg_lo); in i965_write_fence_reg() 109 intel_uncore_write_fw(uncore, fence_reg_hi, upper_32_bits(val)); in i965_write_fence_reg() 110 intel_uncore_write_fw(uncore, fence_reg_lo, lower_32_bits(val)); in i965_write_fence_reg() 111 intel_uncore_posting_read_fw(uncore, fence_reg_lo); in i965_write_fence_reg() 141 struct intel_uncore *uncore = fence_to_uncore(fence); in i915_write_fence_reg() local 144 intel_uncore_write_fw(uncore, reg, val); in i915_write_fence_reg() 145 intel_uncore_posting_read_fw(uncore, reg); in i915_write_fence_reg() [all …]
|
| H A D | intel_gt_pm_irq.c | 16 struct intel_uncore *uncore = gt->uncore; in write_pm_imr() local 29 intel_uncore_write(uncore, reg, mask); in write_pm_imr() 64 struct intel_uncore *uncore = gt->uncore; in gen6_gt_pm_reset_iir() local 69 intel_uncore_write(uncore, reg, reset_mask); in gen6_gt_pm_reset_iir() 70 intel_uncore_write(uncore, reg, reset_mask); in gen6_gt_pm_reset_iir() 71 intel_uncore_posting_read(uncore, reg); in gen6_gt_pm_reset_iir() 77 struct intel_uncore *uncore = gt->uncore; in write_pm_ier() local 90 intel_uncore_write(uncore, reg, mask); in write_pm_ier()
|
| H A D | gen6_ppgtt.c | 33 struct intel_uncore *uncore = gt->uncore; in gen7_ppgtt_enable() local 36 intel_uncore_rmw(uncore, GAC_ECO_BITS, 0, ECOBITS_PPGTT_CACHE64B); in gen7_ppgtt_enable() 38 ecochk = intel_uncore_read(uncore, GAM_ECOCHK); in gen7_ppgtt_enable() 45 intel_uncore_write(uncore, GAM_ECOCHK, ecochk); in gen7_ppgtt_enable() 50 struct intel_uncore *uncore = gt->uncore; in gen6_ppgtt_enable() local 52 intel_uncore_rmw(uncore, in gen6_ppgtt_enable() 57 intel_uncore_rmw(uncore, in gen6_ppgtt_enable() 62 intel_uncore_rmw(uncore, in gen6_ppgtt_enable() 67 if (HAS_PPGTT(uncore->i915)) /* may be disabled for VT-d */ in gen6_ppgtt_enable() 68 intel_uncore_write(uncore, in gen6_ppgtt_enable()
|
| H A D | intel_engine_cs.c | 275 struct intel_uncore *uncore = gt->uncore; in intel_engine_context_size() local 299 cxt_size = intel_uncore_read(uncore, GEN7_CXT_SIZE); in intel_engine_context_size() 303 cxt_size = intel_uncore_read(uncore, CXT_SIZE); in intel_engine_context_size() 318 cxt_size = intel_uncore_read(uncore, CXT_SIZE) + 1; in intel_engine_context_size() 488 engine->uncore = gt->uncore; in intel_engine_setup() 768 media_fuse = intel_uncore_read(gt->uncore, GEN11_GT_VEBOX_VDBOX_DISABLE); in engine_mask_apply_media_fuses() 776 fuse1 = intel_uncore_read(gt->uncore, HSW_PAVP_FUSE1); in engine_mask_apply_media_fuses() 999 intel_uncore_prune_engine_fw_domains(gt->uncore, gt); in intel_engines_init_mmio() 1627 struct intel_uncore *uncore = engine->uncore; in __intel_engine_stop_cs() local 1631 intel_uncore_write_fw(uncore, mode, _MASKED_BIT_ENABLE(STOP_RING)); in __intel_engine_stop_cs() [all …]
|
| H A D | intel_workarounds.c | 132 wal_get_fw_for_rmw(struct intel_uncore *uncore, const struct i915_wa_list *wal) in wal_get_fw_for_rmw() argument 139 fw |= intel_uncore_forcewake_for_reg(uncore, in wal_get_fw_for_rmw() 993 struct intel_uncore *uncore = rq->engine->uncore; in intel_engine_emit_ctx_wa() local 1017 fw = wal_get_fw_for_rmw(uncore, wal); in intel_engine_emit_ctx_wa() 1020 spin_lock(&uncore->lock); in intel_engine_emit_ctx_wa() 1021 intel_uncore_forcewake_get__locked(uncore, fw); in intel_engine_emit_ctx_wa() 1033 intel_uncore_read_fw(uncore, wa->reg); in intel_engine_emit_ctx_wa() 1052 intel_uncore_forcewake_put__locked(uncore, fw); in intel_engine_emit_ctx_wa() 1053 spin_unlock(&uncore->lock); in intel_engine_emit_ctx_wa() 1760 struct intel_uncore *uncore = gt->uncore; in wa_list_apply() local [all …]
|
| H A D | selftest_llc.c | 17 wakeref = intel_runtime_pm_get(llc_to_gt(llc)->uncore->rpm); in gen6_verify_ring_freq() 33 if (snb_pcode_read(llc_to_gt(llc)->uncore, GEN6_PCODE_READ_MIN_FREQ_TABLE, in gen6_verify_ring_freq() 63 intel_runtime_pm_put(llc_to_gt(llc)->uncore->rpm, wakeref); in gen6_verify_ring_freq()
|
| H A D | selftest_reset.c | 52 wakeref = intel_runtime_pm_get(gt->uncore->rpm); in __igt_reset_stolen() 176 intel_runtime_pm_put(gt->uncore->rpm, wakeref); in __igt_reset_stolen() 219 wakeref = intel_runtime_pm_get(gt->uncore->rpm); in igt_global_reset() 230 intel_runtime_pm_put(gt->uncore->rpm, wakeref); in igt_global_reset() 247 wakeref = intel_runtime_pm_get(gt->uncore->rpm); in igt_wedged_reset() 254 intel_runtime_pm_put(gt->uncore->rpm, wakeref); in igt_wedged_reset()
|
| /linux/drivers/gpu/drm/i915/selftests/ |
| H A D | mock_uncore.c | 29 nop_write##x(struct intel_uncore *uncore, i915_reg_t reg, u##x val, bool trace) { } 36 nop_read##x(struct intel_uncore *uncore, i915_reg_t reg, bool trace) { return 0; } 42 void mock_uncore_init(struct intel_uncore *uncore, in mock_uncore_init() argument 45 intel_uncore_init_early(uncore, to_gt(i915)); in mock_uncore_init() 47 ASSIGN_RAW_WRITE_MMIO_VFUNCS(uncore, nop); in mock_uncore_init() 48 ASSIGN_RAW_READ_MMIO_VFUNCS(uncore, nop); in mock_uncore_init()
|
| /linux/drivers/gpu/drm/i915/gem/ |
| H A D | i915_gem_stolen.c | 114 struct intel_uncore *uncore = ggtt->vm.gt->uncore; in adjust_stolen() local 131 ggtt_start = intel_uncore_read(uncore, PGTBL_CTL); in adjust_stolen() 229 struct intel_uncore *uncore, in g4x_get_stolen_reserved() argument 233 u32 reg_val = intel_uncore_read(uncore, in g4x_get_stolen_reserved() 264 struct intel_uncore *uncore, in gen6_get_stolen_reserved() argument 268 u32 reg_val = intel_uncore_read(uncore, GEN6_STOLEN_RESERVED); in gen6_get_stolen_reserved() 297 struct intel_uncore *uncore, in vlv_get_stolen_reserved() argument 301 u32 reg_val = intel_uncore_read(uncore, GEN6_STOLEN_RESERVED); in vlv_get_stolen_reserved() 326 struct intel_uncore *uncore, in gen7_get_stolen_reserved() argument 330 u32 reg_val = intel_uncore_read(uncore, GEN6_STOLEN_RESERVED); in gen7_get_stolen_reserved() [all …]
|
| /linux/Documentation/admin-guide/pm/ |
| H A D | intel_uncore_frequency_scaling.rst | 15 The uncore can consume significant amount of power in Intel's Xeon servers based 17 performance, SoCs have internal algorithms for scaling uncore frequency. These 18 algorithms monitor workload usage of uncore and set a desirable frequency. 20 It is possible that users have different expectations of uncore performance and 24 change to uncore frequency. Also, users may have workloads which require 25 different core and uncore performance at distinct phases and they may want to 26 use both cpufreq and the uncore scaling interface to distribute power and 32 To control uncore frequency, a sysfs interface is provided in the directory: 36 uncore scaling control is per die in multiple die/package SoCs or per 54 This attribute is used to set the maximum uncore frequency. [all …]
|
| /linux/arch/x86/events/intel/ |
| H A D | uncore_discovery.c | 709 struct intel_uncore_type *uncore, in uncore_update_uncore_type() argument 712 uncore->type_id = type->type; in uncore_update_uncore_type() 713 uncore->num_counters = type->num_counters; in uncore_update_uncore_type() 714 uncore->perf_ctr_bits = type->counter_width; in uncore_update_uncore_type() 715 uncore->perf_ctr = (unsigned int)type->ctr_offset; in uncore_update_uncore_type() 716 uncore->event_ctl = (unsigned int)type->ctl_offset; in uncore_update_uncore_type() 717 uncore->boxes = &type->units; in uncore_update_uncore_type() 718 uncore->num_boxes = type->num_units; in uncore_update_uncore_type() 722 uncore->ops = &generic_uncore_msr_ops; in uncore_update_uncore_type() 725 uncore->ops = &generic_uncore_pci_ops; in uncore_update_uncore_type() [all …]
|
| H A D | Makefile | 5 obj-$(CONFIG_PERF_EVENTS_INTEL_UNCORE) += intel-uncore.o 6 intel-uncore-objs := uncore.o uncore_nhmex.o uncore_snb.o uncore_snbep.o uncore_discovery.o
|
| /linux/drivers/gpu/drm/i915/display/ |
| H A D | intel_rom.c | 21 struct intel_uncore *uncore; member 34 intel_uncore_write(rom->uncore, PRIMARY_SPI_ADDRESS, in spi_read32() 37 return intel_uncore_read(rom->uncore, PRIMARY_SPI_TRIGGER); in spi_read32() 54 rom->uncore = to_intel_uncore(drm); in intel_rom_spi() 56 static_region = intel_uncore_read(rom->uncore, SPI_STATIC_REGIONS); in intel_rom_spi() 58 intel_uncore_write(rom->uncore, PRIMARY_SPI_REGIONID, static_region); in intel_rom_spi() 60 rom->offset = intel_uncore_read(rom->uncore, OROM_OFFSET) & OROM_OFFSET_MASK; in intel_rom_spi()
|
| /linux/drivers/gpu/drm/i915/pxp/ |
| H A D | intel_pxp_irq.c | 56 struct intel_uncore *uncore = gt->uncore; in __pxp_set_interrupts() local 59 intel_uncore_write(uncore, GEN11_CRYPTO_RSVD_INTR_ENABLE, mask); in __pxp_set_interrupts() 60 intel_uncore_write(uncore, GEN11_CRYPTO_RSVD_INTR_MASK, ~mask); in __pxp_set_interrupts()
|
| /linux/arch/x86/events/ |
| H A D | Kconfig | 5 tristate "Intel uncore performance events" 9 Include support for Intel uncore performance events. These are 42 Include support for AMD uncore performance events for use with 46 module will be called 'amd-uncore'.
|
| /linux/drivers/gpu/drm/i915/gt/uc/ |
| H A D | intel_gsc_uc.c | 24 wakeref = intel_runtime_pm_get(gt->uncore->rpm); in gsc_work() 95 intel_runtime_pm_put(gt->uncore->rpm, wakeref); in gsc_work() 321 struct intel_uncore *uncore = gt->uncore; in intel_gsc_uc_load_status() local 349 with_intel_runtime_pm(uncore->rpm, wakeref) { in intel_gsc_uc_load_status() 353 u32 status = intel_uncore_read(uncore, in intel_gsc_uc_load_status()
|