OpenCloudOS-Kernel/drivers/gpu/drm/i915
Akash Goel f4e9af4f5a drm/i915: Add low level set of routines for programming PM IER/IIR/IMR register set
So far PM IER/IIR/IMR registers were being used only for Turbo related
interrupts. But interrupts coming from GuC also use the same set.
As a precursor to supporting GuC interrupts, added new low level routines
so as to allow sharing the programming of PM IER/IIR/IMR registers between
Turbo & GuC.
Also similar to PM IMR, maintaining a bitmask for PM IER register, to allow
easy sharing of it between Turbo & GuC without involving a rmw operation.

v2:
- For appropriateness & avoid any ambiguity, rename old functions
  enable/disable pm_irq to mask/unmask pm_irq and rename new functions
  enable/disable pm_interrupts to enable/disable pm_irq. (Tvrtko)
- Use u32 in place of uint32_t. (Tvrtko)

v3:
- Rename the fields pm_irq_mask & pm_ier_mask and do some cleanup. (Chris)
- Rebase.

v4: Fix the inadvertent disabling of User interrupt for VECS ring causing
    failure for certain IGTs.

v5: Use dev_priv with HAS_VEBOX macro. (Tvrtko)

Suggested-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Akash Goel <akash.goel@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2016-10-25 09:34:06 +01:00
..
gvt drm/i915/gvt: do not ignore return value of create_scratch_page 2016-10-20 17:31:36 +08:00
Kconfig drm/i915: remove AGP dependency from DRM_I915 kconfig help text 2016-10-24 14:41:24 +03:00
Kconfig.debug drm/i915: Select DRM_VGEM for igt 2016-07-10 13:22:39 +01:00
Makefile drm/i915: Add lspcon support for I915 driver 2016-10-18 12:42:47 +03:00
dvo.h
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_ns2501.c
dvo_sil164.c
dvo_tfp410.c
i915_cmd_parser.c drm/i915: Allocate intel_engine_cs structure only for the enabled engines 2016-10-14 09:58:43 +01:00
i915_debugfs.c drm/i915: New structure to contain GuC logging related fields 2016-10-25 09:34:06 +01:00
i915_drv.c drm/i915: Move fence cancellation to runtime suspend 2016-10-24 13:45:38 +01:00
i915_drv.h drm/i915: Add low level set of routines for programming PM IER/IIR/IMR register set 2016-10-25 09:34:06 +01:00
i915_gem.c Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued 2016-10-25 08:57:53 +02:00
i915_gem.h
i915_gem_batch_pool.c drm/i915: Double check the active status on the batch pool 2016-08-04 20:19:50 +01:00
i915_gem_batch_pool.h drm/i915: Double check the active status on the batch pool 2016-08-04 20:19:50 +01:00
i915_gem_context.c drm/i915: Make IS_IVYBRIDGE only take dev_priv 2016-10-14 12:23:19 +01:00
i915_gem_dmabuf.c drm/prime: Take a ref on the drm_dev when exporting a dma_buf 2016-10-05 15:30:32 +02:00
i915_gem_dmabuf.h drm/i915: Serialise presentation with imported dmabufs 2016-06-17 10:32:26 +01:00
i915_gem_evict.c drm/i915: Move user fault tracking to a separate list 2016-10-24 13:45:35 +01:00
i915_gem_execbuffer.c Merge tag 'drm-intel-next-2016-10-24' of git://anongit.freedesktop.org/drm-intel into drm-next 2016-10-25 16:39:43 +10:00
i915_gem_fence.c drm/i915: Move fence cancellation to runtime suspend 2016-10-24 13:45:38 +01:00
i915_gem_gtt.c drm/i915: Remove RPM sequence checking 2016-10-24 13:45:37 +01:00
i915_gem_gtt.h drm/i915: Remove unused "valid" parameter from pte_encode 2016-10-14 12:40:32 +01:00
i915_gem_render_state.c drm/i915: Make INTEL_GEN only take dev_priv 2016-10-14 12:23:19 +01:00
i915_gem_render_state.h drm/i915: Use VMA for render state page tracking 2016-08-15 11:01:11 +01:00
i915_gem_request.c drm/i915: Allocate intel_engine_cs structure only for the enabled engines 2016-10-14 09:58:43 +01:00
i915_gem_request.h drm/i915: Nonblocking request submission 2016-09-09 14:23:08 +01:00
i915_gem_shrinker.c drm/i915: Treat a framebuffer reference as an active reference whilst shrinking 2016-10-12 17:17:20 +01:00
i915_gem_stolen.c drm/i915: Make IS_GEN macros only take dev_priv 2016-10-14 12:23:22 +01:00
i915_gem_tiling.c drm/i915: Use RPM as the barrier for controlling user mmap access 2016-10-24 13:45:35 +01:00
i915_gem_userptr.c mm: replace get_user_pages_remote() write/force parameters with gup_flags 2016-10-19 08:12:02 -07:00
i915_gpu_error.c drm/i915: Add a sunset clause to GPU hang logging 2016-10-20 14:07:22 +01:00
i915_guc_reg.h drm/i915/guc: general tidying up (loader) 2016-09-15 10:56:02 +01:00
i915_guc_submission.c drm/i915: New structure to contain GuC logging related fields 2016-10-25 09:34:06 +01:00
i915_ioc32.c
i915_irq.c drm/i915: Add low level set of routines for programming PM IER/IIR/IMR register set 2016-10-25 09:34:06 +01:00
i915_memcpy.c drm/i915: Mark the static key for movntqda as static 2016-08-17 12:36:07 +01:00
i915_mm.c drm/i915: Use remap_io_mapping() to prefault all PTE in a single pass 2016-08-19 17:13:36 +01:00
i915_params.c drm/i915: Allow disabling error capture 2016-10-12 12:00:32 +01:00
i915_params.h drm/i915: Allow disabling error capture 2016-10-12 12:00:32 +01:00
i915_pci.c drm/i915: keep declarations in i915_drv.h 2016-09-22 14:53:29 +03:00
i915_pvinfo.h drm/i915: Use offsetof() to calculate the offset of members in PVINFO page 2016-06-17 19:44:25 +01:00
i915_reg.h drm/i915/fbc: fix FBC_COMPRESSION_MASK on BDW+ 2016-10-24 17:39:03 -02:00
i915_suspend.c drm/i915: Make IS_GEN macros only take dev_priv 2016-10-14 12:23:22 +01:00
i915_sw_fence.c drm/i915: Add a sw fence for collecting up dma fences 2016-09-09 14:22:55 +01:00
i915_sw_fence.h drm/i915: Add a sw fence for collecting up dma fences 2016-09-09 14:22:55 +01:00
i915_sysfs.c drm/i915: Allow disabling error capture 2016-10-12 12:00:32 +01:00
i915_trace.h drm/i915: Remove surplus drm_device parameter to i915_gem_evict_something() 2016-08-04 20:19:50 +01:00
i915_trace_points.c
i915_vgpu.c Merge tag 'drm-intel-next-2016-09-19' of git://anongit.freedesktop.org/drm-intel into drm-next 2016-09-20 06:23:22 +10:00
i915_vgpu.h drm/i915: Fold vGPU active check into inner functions 2016-06-17 19:44:29 +01:00
intel_acpi.c
intel_atomic.c drm: Consolidate plane arrays in drm_atomic_state 2016-06-02 17:20:25 +02:00
intel_atomic_plane.c drm: Add drm_rotation_90_or_270() 2016-10-21 18:21:33 +02:00
intel_audio.c drm/i915: Make IS_CHERRYVIEW only take dev_priv 2016-10-14 12:23:19 +01:00
intel_bios.c drm/i915: Clean up DDI DDC/AUX CH sanitation 2016-10-21 15:43:40 +03:00
intel_bios.h drm/i915: Parse LFP brightness control field in VBT 2016-05-02 16:17:38 +03:00
intel_breadcrumbs.c drm/i915: Allocate intel_engine_cs structure only for the enabled engines 2016-10-14 09:58:43 +01:00
intel_color.c drm/i915: Make IS_CHERRYVIEW only take dev_priv 2016-10-14 12:23:19 +01:00
intel_crt.c drm/i915: Make IS_GEN macros only take dev_priv 2016-10-14 12:23:22 +01:00
intel_csr.c drm/i915: Fix botched merge that downgrades CSR versions. 2016-08-22 16:08:32 +03:00
intel_ddi.c drm/i915: KBL - Recommended buffer translation programming for DisplayPort 2016-10-20 14:50:44 -07:00
intel_device_info.c drm/i915: Reduce trickery in DEV_INFO_FOR_EACH_FLAG 2016-10-05 15:24:54 +03:00
intel_display.c Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued 2016-10-25 08:57:53 +02:00
intel_dp.c drm/i915/dp: add lane_count check in intel_dp_check_link_status 2016-10-21 16:09:22 +03:00
intel_dp_aux_backlight.c
intel_dp_link_training.c drm/i915/skl: drop workarounds for A0 and B0 revisions 2016-09-26 12:08:22 +03:00
intel_dp_mst.c Revert "drm/i915: start adding dp mst audio" 2016-09-29 11:02:41 +03:00
intel_dpio_phy.c drm/i915: Mass convert dev->dev_private to to_i915(dev) 2016-07-04 12:54:07 +01:00
intel_dpll_mgr.c drm/i915: Make IS_BROXTON only take dev_priv 2016-10-14 12:23:19 +01:00
intel_dpll_mgr.h drm/i915/dp: Add a standalone function to obtain shared dpll for HSW/BDW/SKL/BXT 2016-09-09 14:53:18 -07:00
intel_drv.h drm/i915: Add low level set of routines for programming PM IER/IIR/IMR register set 2016-10-25 09:34:06 +01:00
intel_dsi.c drm/i915: Make IS_CHERRYVIEW only take dev_priv 2016-10-14 12:23:19 +01:00
intel_dsi.h drm/i915/dsi: CABC support for Panel PWM backlight control 2016-05-17 16:12:39 +03:00
intel_dsi_dcs_backlight.c drm/i915: Mass convert dev->dev_private to to_i915(dev) 2016-07-04 12:54:07 +01:00
intel_dsi_panel_vbt.c drm/i915/dsi: double check element parsing against size if present 2016-09-19 18:38:11 +03:00
intel_dsi_pll.c drm/i915: Make IS_BROXTON only take dev_priv 2016-10-14 12:23:19 +01:00
intel_dvo.c drm/i915: Store port enum in intel_encoder 2016-09-21 09:32:00 -07:00
intel_engine_cs.c drm/i915: Do not use INTEL_INFO(dev_priv)->ring_mask inside WARNs 2016-10-14 12:23:19 +01:00
intel_fbc.c Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued 2016-10-25 08:57:53 +02:00
intel_fbdev.c drm/i915: pdev cleanup 2016-08-22 12:19:52 +01:00
intel_fifo_underrun.c drm/i915: Make IS_GEN macros only take dev_priv 2016-10-14 12:23:22 +01:00
intel_frontbuffer.c drm/i915: Use dev_priv consistently through the intel_frontbuffer interface 2016-08-04 20:20:03 +01:00
intel_frontbuffer.h drm/i915: Use dev_priv consistently through the intel_frontbuffer interface 2016-08-04 20:20:03 +01:00
intel_guc.h drm/i915: New structure to contain GuC logging related fields 2016-10-25 09:34:06 +01:00
intel_guc_fwif.h drm/i915: Add GuC ukernel logging related fields to fw interface file 2016-10-25 09:34:06 +01:00
intel_guc_loader.c drm/i915: New structure to contain GuC logging related fields 2016-10-25 09:34:06 +01:00
intel_gvt.c Documentation/gpu: Add section for Intel GVT-g host support 2016-10-20 17:18:39 +08:00
intel_gvt.h drm/i915/gvt: clean up intel_gvt.h as interface for i915 core 2016-10-20 17:18:30 +08:00
intel_hdmi.c drm/i915: Respect alternate_ddc_pin for all DDI ports 2016-10-21 15:43:40 +03:00
intel_hotplug.c drm/i915: Mark i915_hpd_poll_init_work as static 2016-08-17 12:36:15 +01:00
intel_i2c.c drm/i915: GMBUS don't need no forcewake 2016-10-17 14:26:42 +03:00
intel_lrc.c drm/i915: Allocate intel_engine_cs structure only for the enabled engines 2016-10-14 09:58:43 +01:00
intel_lrc.h drm/i915: Update reset path to fix incomplete requests 2016-09-09 14:23:05 +01:00
intel_lspcon.c drm/i915: make lspcon_get_current_mode static 2016-10-19 12:55:35 +03:00
intel_lvds.c drm/i915: Make IS_GEN macros only take dev_priv 2016-10-14 12:23:22 +01:00
intel_mocs.c drm/i915: Rename struct intel_ringbuffer to struct intel_ring 2016-08-02 22:58:16 +01:00
intel_mocs.h drm/i915: rename 'ring' where it refers to an engine or engine_id 2016-07-21 09:59:41 +01:00
intel_modes.c drm: Remove superflous linux/fb.h includes 2016-08-12 10:41:39 +02:00
intel_opregion.c drm/i915: Ignore OpRegion panel type except on select machines 2016-09-14 11:25:05 +03:00
intel_overlay.c drm/i915: Allocate intel_engine_cs structure only for the enabled engines 2016-10-14 09:58:43 +01:00
intel_panel.c drm/i915/backlight: setup backlight pwm alternate increment on backlight enable 2016-10-10 16:05:52 +03:00
intel_pm.c Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued 2016-10-25 08:57:53 +02:00
intel_psr.c drm/i915: Make IS_CHERRYVIEW only take dev_priv 2016-10-14 12:23:19 +01:00
intel_renderstate.h drm/i915: Remove duplicate golden render state init from execlists 2016-08-02 22:58:30 +01:00
intel_renderstate_gen6.c
intel_renderstate_gen7.c
intel_renderstate_gen8.c
intel_renderstate_gen9.c
intel_ringbuffer.c drm/i915: Add low level set of routines for programming PM IER/IIR/IMR register set 2016-10-25 09:34:06 +01:00
intel_ringbuffer.h drm/i915: Allocate intel_engine_cs structure only for the enabled engines 2016-10-14 09:58:43 +01:00
intel_runtime_pm.c drm/i915: Remove RPM sequence checking 2016-10-24 13:45:37 +01:00
intel_sdvo.c drm/i915: Make INTEL_DEVID only take dev_priv 2016-10-14 12:23:19 +01:00
intel_sdvo_regs.h
intel_sideband.c drm/i915: Convert wait_for(I915_READ(reg)) to intel_wait_for_register() 2016-06-30 15:42:33 +01:00
intel_sprite.c Merge tag 'drm-intel-next-2016-10-24' of git://anongit.freedesktop.org/drm-intel into drm-next 2016-10-25 16:39:43 +10:00
intel_tv.c drm/i915: Make INTEL_DEVID only take dev_priv 2016-10-14 12:23:19 +01:00
intel_uncore.c drm/i915: Just clear the mmiodebug before a register access 2016-10-10 16:06:41 +03:00
intel_vbt_defs.h drm/i915: Extract physical display dimensions from VBT 2016-06-10 10:41:15 +03:00