Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 6936 → Rev 6937

/drivers/video/drm/i915/i915_dma.c
28,7 → 28,6
 
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
 
#include <linux/async.h>
#include <drm/drmP.h>
#include <drm/drm_crtc_helper.h>
#include <drm/drm_fb_helper.h>
44,6 → 43,7
//#include <linux/pnp.h>
//#include <linux/vga_switcheroo.h>
#include <linux/slab.h>
//#include <acpi/video.h>
#include <linux/pm.h>
#include <linux/pm_runtime.h>
 
130,7 → 130,7
value = 1;
break;
case I915_PARAM_HAS_SECURE_BATCHES:
value = 1;
value = capable(CAP_SYS_ADMIN);
break;
case I915_PARAM_HAS_PINNED_BATCHES:
value = 1;
206,7 → 206,7
u32 temp;
bool enabled;
 
if (IS_VALLEYVIEW(dev))
if (IS_VALLEYVIEW(dev) || IS_CHERRYVIEW(dev))
return;
 
dev_priv->mchbar_need_disable = false;
286,7 → 286,7
struct drm_i915_private *dev_priv = dev->dev_private;
int ret;
 
ret = intel_parse_bios(dev);
ret = intel_bios_init(dev_priv);
if (ret)
DRM_INFO("failed to find VBIOS tables\n");
 
305,8 → 305,10
if (ret)
goto cleanup_vga_switcheroo;
 
intel_power_domains_init_hw(dev_priv);
intel_power_domains_init_hw(dev_priv, false);
 
intel_csr_ucode_init(dev_priv);
 
ret = intel_irq_install(dev_priv);
if (ret)
goto cleanup_gem_stolen;
317,6 → 319,8
* working irqs for e.g. gmbus and dp aux transfers. */
intel_modeset_init(dev);
 
intel_guc_ucode_init(dev);
 
ret = i915_gem_init(dev);
if (ret)
goto cleanup_irq;
358,6 → 362,7
i915_gem_context_fini(dev);
mutex_unlock(&dev->struct_mutex);
cleanup_irq:
intel_guc_ucode_fini(dev);
// drm_irq_uninstall(dev);
cleanup_gem_stolen:
i915_gem_cleanup_stolen(dev);
571,7 → 576,8
* supports EU power gating on devices with more than one EU
* pair per subslice.
*/
info->has_slice_pg = (IS_SKYLAKE(dev) && (info->slice_total > 1));
info->has_slice_pg = ((IS_SKYLAKE(dev) || IS_KABYLAKE(dev)) &&
(info->slice_total > 1));
info->has_subslice_pg = (IS_BROXTON(dev) && (info->subslice_total > 1));
info->has_eu_pg = (info->eu_per_subslice > 2);
}
685,7 → 691,7
info->num_sprites[PIPE_A] = 2;
info->num_sprites[PIPE_B] = 2;
info->num_sprites[PIPE_C] = 1;
} else if (IS_VALLEYVIEW(dev))
} else if (IS_VALLEYVIEW(dev) || IS_CHERRYVIEW(dev))
for_each_pipe(dev_priv, pipe)
info->num_sprites[pipe] = 2;
else
697,7 → 703,7
info->num_pipes = 0;
} else if (info->num_pipes > 0 &&
(INTEL_INFO(dev)->gen == 7 || INTEL_INFO(dev)->gen == 8) &&
!IS_VALLEYVIEW(dev)) {
HAS_PCH_SPLIT(dev)) {
u32 fuse_strap = I915_READ(FUSE_STRAP);
u32 sfuse_strap = I915_READ(SFUSE_STRAP);
 
742,9 → 748,6
 
static void intel_init_dpio(struct drm_i915_private *dev_priv)
{
if (!IS_VALLEYVIEW(dev_priv))
return;
 
/*
* IOSF_PORT_DPIO is used for VLV x2 PHY (DP/HDMI B and C),
* CHV x1 PHY (DP/HDMI D)
753,7 → 756,7
if (IS_CHERRYVIEW(dev_priv)) {
DPIO_PHY_IOSF_PORT(DPIO_PHY0) = IOSF_PORT_DPIO_2;
DPIO_PHY_IOSF_PORT(DPIO_PHY1) = IOSF_PORT_DPIO;
} else {
} else if (IS_VALLEYVIEW(dev_priv)) {
DPIO_PHY_IOSF_PORT(DPIO_PHY0) = IOSF_PORT_DPIO;
}
}
798,11 → 801,12
spin_lock_init(&dev_priv->mmio_flip_lock);
mutex_init(&dev_priv->sb_lock);
mutex_init(&dev_priv->modeset_restore_lock);
mutex_init(&dev_priv->csr_lock);
mutex_init(&dev_priv->av_mutex);
 
intel_pm_setup(dev);
 
intel_runtime_pm_get(dev_priv);
 
intel_display_crc_init(dev);
 
i915_dump_device_info(dev_priv);
847,9 → 851,6
 
intel_uncore_init(dev);
 
/* Load CSR Firmware for SKL */
intel_csr_ucode_init(dev);
 
ret = i915_gem_gtt_init(dev);
if (ret)
goto out_freecsr;
998,6 → 999,8
struct drm_i915_private *dev_priv = dev->dev_private;
int ret;
 
intel_fbdev_fini(dev);
 
i915_audio_component_cleanup(dev_priv);
 
ret = i915_gem_suspend(dev);
1020,8 → 1023,6
 
acpi_video_unregister();
 
intel_fbdev_fini(dev);
 
drm_vblank_cleanup(dev);
 
intel_modeset_cleanup(dev);
1063,7 → 1064,7
intel_fbc_cleanup_cfb(dev_priv);
i915_gem_cleanup_stolen(dev);
 
intel_csr_ucode_fini(dev);
intel_csr_ucode_fini(dev_priv);
 
intel_teardown_mchbar(dev);
 
1132,8 → 1133,6
{
struct drm_i915_file_private *file_priv = file->driver_priv;
 
if (file_priv && file_priv->bsd_ring)
file_priv->bsd_ring = NULL;
kfree(file_priv);
}