]> Git Repo - linux.git/commitdiff
Merge drm/drm-next into drm-intel-next-queued
authorJoonas Lahtinen <[email protected]>
Tue, 15 Oct 2019 08:18:26 +0000 (11:18 +0300)
committerJoonas Lahtinen <[email protected]>
Tue, 15 Oct 2019 08:18:26 +0000 (11:18 +0300)
Backmerging to pull in HDR DP code:

https://lists.freedesktop.org/archives/dri-devel/2019-September/236453.html

Signed-off-by: Joonas Lahtinen <[email protected]>
1  2 
drivers/gpu/drm/i915/Kconfig.debug
drivers/gpu/drm/i915/Makefile
drivers/gpu/drm/i915/display/intel_dp.c
drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c

index 95d5fb8058fc9cc7a388ee56b4a338c597f4590c,00786a142ff09203b778d9955727ac679ed5e688..eea79125b3ea19432c52488e7352394f86b41dc0
@@@ -1,48 -1,49 +1,49 @@@
  # SPDX-License-Identifier: GPL-2.0-only
  config DRM_I915_WERROR
 -        bool "Force GCC to throw an error instead of a warning when compiling"
 -        # As this may inadvertently break the build, only allow the user
 -        # to shoot oneself in the foot iff they aim really hard
 -        depends on EXPERT
 -        # We use the dependency on !COMPILE_TEST to not be enabled in
 -        # allmodconfig or allyesconfig configurations
 -        depends on !COMPILE_TEST
 +      bool "Force GCC to throw an error instead of a warning when compiling"
 +      # As this may inadvertently break the build, only allow the user
 +      # to shoot oneself in the foot iff they aim really hard
 +      depends on EXPERT
 +      # We use the dependency on !COMPILE_TEST to not be enabled in
 +      # allmodconfig or allyesconfig configurations
 +      depends on !COMPILE_TEST
        select HEADER_TEST
 -        default n
 -        help
 -          Add -Werror to the build flags for (and only for) i915.ko.
 -          Do not enable this unless you are writing code for the i915.ko module.
 +      default n
 +      help
 +        Add -Werror to the build flags for (and only for) i915.ko.
 +        Do not enable this unless you are writing code for the i915.ko module.
  
 -          Recommended for driver developers only.
 +        Recommended for driver developers only.
  
 -          If in doubt, say "N".
 +        If in doubt, say "N".
  
  config DRM_I915_DEBUG
 -        bool "Enable additional driver debugging"
 -        depends on DRM_I915
 -        select DEBUG_FS
 -        select PREEMPT_COUNT
 -        select REFCOUNT_FULL
 -        select I2C_CHARDEV
 -        select STACKDEPOT
 -        select DRM_DP_AUX_CHARDEV
 -        select X86_MSR # used by igt/pm_rpm
 -        select DRM_VGEM # used by igt/prime_vgem (dmabuf interop checks)
 -        select DRM_DEBUG_MM if DRM=y
 +      bool "Enable additional driver debugging"
 +      depends on DRM_I915
 +      select DEBUG_FS
 +      select PREEMPT_COUNT
 +      select REFCOUNT_FULL
 +      select I2C_CHARDEV
 +      select STACKDEPOT
 +      select DRM_DP_AUX_CHARDEV
 +      select X86_MSR # used by igt/pm_rpm
 +      select DRM_VGEM # used by igt/prime_vgem (dmabuf interop checks)
 +      select DRM_DEBUG_MM if DRM=y
        select DRM_DEBUG_SELFTEST
+       select DMABUF_SELFTESTS
        select SW_SYNC # signaling validation framework (igt/syncobj*)
        select DRM_I915_SW_FENCE_DEBUG_OBJECTS
        select DRM_I915_SELFTEST
        select DRM_I915_DEBUG_RUNTIME_PM
        select DRM_I915_DEBUG_MMIO
 -        default n
 -        help
 -          Choose this option to turn on extra driver debugging that may affect
 -          performance but will catch some internal issues.
 +      default n
 +      help
 +        Choose this option to turn on extra driver debugging that may affect
 +        performance but will catch some internal issues.
  
 -          Recommended for driver developers only.
 +        Recommended for driver developers only.
  
 -          If in doubt, say "N".
 +        If in doubt, say "N".
  
  config DRM_I915_DEBUG_MMIO
        bool "Always insert extra checks around mmio access by default"
          If in doubt, say "N".
  
  config DRM_I915_DEBUG_GEM
 -        bool "Insert extra checks into the GEM internals"
 -        default n
 -        depends on DRM_I915_WERROR
 -        help
 -          Enable extra sanity checks (including BUGs) along the GEM driver
 -          paths that may slow the system down and if hit hang the machine.
 +      bool "Insert extra checks into the GEM internals"
 +      default n
 +      depends on DRM_I915_WERROR
 +      help
 +        Enable extra sanity checks (including BUGs) along the GEM driver
 +        paths that may slow the system down and if hit hang the machine.
  
 -          Recommended for driver developers only.
 +        Recommended for driver developers only.
  
 -          If in doubt, say "N".
 +        If in doubt, say "N".
  
  config DRM_I915_ERRLOG_GEM
        bool "Insert extra logging (very verbose) for common GEM errors"
@@@ -110,41 -111,41 +111,41 @@@ config DRM_I915_TRACE_GT
          If in doubt, say "N".
  
  config DRM_I915_SW_FENCE_DEBUG_OBJECTS
 -        bool "Enable additional driver debugging for fence objects"
 -        depends on DRM_I915
 -        select DEBUG_OBJECTS
 -        default n
 -        help
 -          Choose this option to turn on extra driver debugging that may affect
 -          performance but will catch some internal issues.
 +      bool "Enable additional driver debugging for fence objects"
 +      depends on DRM_I915
 +      select DEBUG_OBJECTS
 +      default n
 +      help
 +        Choose this option to turn on extra driver debugging that may affect
 +        performance but will catch some internal issues.
  
 -          Recommended for driver developers only.
 +        Recommended for driver developers only.
  
 -          If in doubt, say "N".
 +        If in doubt, say "N".
  
  config DRM_I915_SW_FENCE_CHECK_DAG
 -        bool "Enable additional driver debugging for detecting dependency cycles"
 -        depends on DRM_I915
 -        default n
 -        help
 -          Choose this option to turn on extra driver debugging that may affect
 -          performance but will catch some internal issues.
 +      bool "Enable additional driver debugging for detecting dependency cycles"
 +      depends on DRM_I915
 +      default n
 +      help
 +        Choose this option to turn on extra driver debugging that may affect
 +        performance but will catch some internal issues.
  
 -          Recommended for driver developers only.
 +        Recommended for driver developers only.
  
 -          If in doubt, say "N".
 +        If in doubt, say "N".
  
  config DRM_I915_DEBUG_GUC
 -        bool "Enable additional driver debugging for GuC"
 -        depends on DRM_I915
 -        default n
 -        help
 -          Choose this option to turn on extra driver debugging that may affect
 -          performance but will help resolve GuC related issues.
 +      bool "Enable additional driver debugging for GuC"
 +      depends on DRM_I915
 +      default n
 +      help
 +        Choose this option to turn on extra driver debugging that may affect
 +        performance but will help resolve GuC related issues.
  
 -          Recommended for driver developers only.
 +        Recommended for driver developers only.
  
 -          If in doubt, say "N".
 +        If in doubt, say "N".
  
  config DRM_I915_SELFTEST
        bool "Enable selftests upon driver load"
@@@ -177,15 -178,15 +178,15 @@@ config DRM_I915_SELFTEST_BROKE
          If in doubt, say "N".
  
  config DRM_I915_LOW_LEVEL_TRACEPOINTS
 -        bool "Enable low level request tracing events"
 -        depends on DRM_I915
 -        default n
 -        help
 -          Choose this option to turn on low level request tracing events.
 -          This provides the ability to precisely monitor engine utilisation
 -          and also analyze the request dependency resolving timeline.
 -
 -          If in doubt, say "N".
 +      bool "Enable low level request tracing events"
 +      depends on DRM_I915
 +      default n
 +      help
 +        Choose this option to turn on low level request tracing events.
 +        This provides the ability to precisely monitor engine utilisation
 +        and also analyze the request dependency resolving timeline.
 +
 +        If in doubt, say "N".
  
  config DRM_I915_DEBUG_VBLANK_EVADE
        bool "Enable extra debug warnings for vblank evasion"
index b6a1fcb810c25d637477e84ad6119a0ca2a90bf8,a6006aa715ffd1130fa33ef003ed550e8479f546..e791d9323b514a8d22828c28e418b06a2a0bac2a
@@@ -26,7 -26,7 +26,7 @@@ subdir-ccflags-$(CONFIG_DRM_I915_WERROR
  
  # Fine grained warnings disable
  CFLAGS_i915_pci.o = $(call cc-disable-warning, override-init)
- CFLAGS_intel_fbdev.o = $(call cc-disable-warning, override-init)
+ CFLAGS_display/intel_fbdev.o = $(call cc-disable-warning, override-init)
  
  subdir-ccflags-y += \
        $(call as-instr,movntdqa (%eax)$(comma)%xmm0,-DCONFIG_AS_MOVNTDQA)
@@@ -51,7 -51,6 +51,7 @@@ i915-y += i915_drv.o 
          i915_utils.o \
          intel_csr.o \
          intel_device_info.o \
 +        intel_memory_region.o \
          intel_pch.o \
          intel_pm.o \
          intel_runtime_pm.o \
@@@ -122,7 -121,6 +122,7 @@@ gem-y += 
        gem/i915_gem_pages.o \
        gem/i915_gem_phys.o \
        gem/i915_gem_pm.o \
 +      gem/i915_gem_region.o \
        gem/i915_gem_shmem.o \
        gem/i915_gem_shrinker.o \
        gem/i915_gem_stolen.o \
index 830c71e5c8616d9a96652a292c826239232082e3,0e45c61d733143b83158d1ad5e44642c1280d737..6594f2af1257559138bb447a8f4144c288499cd1
@@@ -5282,9 -5282,6 +5282,9 @@@ static bool icl_combo_port_connected(st
  {
        enum port port = intel_dig_port->base.port;
  
 +      if (HAS_PCH_MCC(dev_priv) && port == PORT_C)
 +              return I915_READ(SDEISR) & SDE_TC_HOTPLUG_ICP(PORT_TC1);
 +
        return I915_READ(SDEISR) & SDE_DDI_HOTPLUG_ICP(port);
  }
  
@@@ -5558,7 -5555,6 +5558,6 @@@ static in
  intel_dp_connector_register(struct drm_connector *connector)
  {
        struct intel_dp *intel_dp = intel_attached_dp(connector);
-       struct drm_device *dev = connector->dev;
        int ret;
  
        ret = intel_connector_register(connector);
        intel_dp->aux.dev = connector->kdev;
        ret = drm_dp_aux_register(&intel_dp->aux);
        if (!ret)
-               drm_dp_cec_register_connector(&intel_dp->aux,
-                                             connector->name, dev->dev);
+               drm_dp_cec_register_connector(&intel_dp->aux, connector);
        return ret;
  }
  
index 98cd92320afbbdb4df1e4a2b9b150625dd514ad7,98816c35ffc39b581b7cea08f22560cdf03d414f..e96901888323535818a60fdd1d22e3e503010e80
@@@ -908,7 -908,7 +908,7 @@@ static void reloc_cache_init(struct rel
        cache->use_64bit_reloc = HAS_64BIT_RELOC(i915);
        cache->has_fence = cache->gen < 4;
        cache->needs_unfenced = INTEL_INFO(i915)->unfenced_needs_alignment;
-       cache->node.allocated = false;
+       cache->node.flags = 0;
        cache->ce = NULL;
        cache->rq = NULL;
        cache->rq_size = 0;
@@@ -1608,6 -1608,7 +1608,7 @@@ static int check_relocations(const stru
  
  static int eb_copy_relocations(const struct i915_execbuffer *eb)
  {
+       struct drm_i915_gem_relocation_entry *relocs;
        const unsigned int count = eb->buffer_count;
        unsigned int i;
        int err;
        for (i = 0; i < count; i++) {
                const unsigned int nreloc = eb->exec[i].relocation_count;
                struct drm_i915_gem_relocation_entry __user *urelocs;
-               struct drm_i915_gem_relocation_entry *relocs;
                unsigned long size;
                unsigned long copied;
  
  
                        if (__copy_from_user((char *)relocs + copied,
                                             (char __user *)urelocs + copied,
-                                            len)) {
- end_user:
-                               user_access_end();
- end:
-                               kvfree(relocs);
-                               err = -EFAULT;
-                               goto err;
-                       }
+                                            len))
+                               goto end;
  
                        copied += len;
                } while (copied < size);
  
        return 0;
  
+ end_user:
+       user_access_end();
+ end:
+       kvfree(relocs);
+       err = -EFAULT;
  err:
        while (i--) {
-               struct drm_i915_gem_relocation_entry *relocs =
-                       u64_to_ptr(typeof(*relocs), eb->exec[i].relocs_ptr);
+               relocs = u64_to_ptr(typeof(*relocs), eb->exec[i].relocs_ptr);
                if (eb->exec[i].relocation_count)
                        kvfree(relocs);
        }
@@@ -2079,9 -2077,6 +2077,9 @@@ static int eb_submit(struct i915_execbu
        if (err)
                return err;
  
 +      if (i915_gem_context_nopreempt(eb->gem_context))
 +              eb->request->flags |= I915_REQUEST_NOPREEMPT;
 +
        return 0;
  }
  
This page took 0.086992 seconds and 4 git commands to generate.