Merge tag 'v4.10-rc8' into drm-next
authorDave Airlie <airlied@redhat.com>
Thu, 23 Feb 2017 02:10:12 +0000 (12:10 +1000)
committerDave Airlie <airlied@redhat.com>
Thu, 23 Feb 2017 02:10:12 +0000 (12:10 +1000)
Linux 4.10-rc8

Backmerge Linus rc8 to fix some conflicts, but also
to avoid pulling it in via a fixes pull from someone.

34 files changed:
1  2 
MAINTAINERS
drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
drivers/gpu/drm/ast/ast_drv.h
drivers/gpu/drm/ast/ast_main.c
drivers/gpu/drm/drm_atomic.c
drivers/gpu/drm/drm_connector.c
drivers/gpu/drm/drm_drv.c
drivers/gpu/drm/i915/gvt/cmd_parser.c
drivers/gpu/drm/i915/gvt/execlist.c
drivers/gpu/drm/i915/gvt/kvmgt.c
drivers/gpu/drm/i915/i915_drv.c
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/i915_gem.c
drivers/gpu/drm/i915/i915_gem_execbuffer.c
drivers/gpu/drm/i915/i915_gem_internal.c
drivers/gpu/drm/i915/intel_crt.c
drivers/gpu/drm/i915/intel_display.c
drivers/gpu/drm/i915/intel_dpll_mgr.c
drivers/gpu/drm/i915/intel_drv.h
drivers/gpu/drm/nouveau/dispnv04/hw.c
drivers/gpu/drm/nouveau/nouveau_display.c
drivers/gpu/drm/nouveau/nouveau_drm.c
drivers/gpu/drm/nouveau/nouveau_drv.h
drivers/gpu/drm/nouveau/nouveau_fbcon.c
drivers/gpu/drm/nouveau/nouveau_usif.c
drivers/gpu/drm/nouveau/nv50_display.c
drivers/gpu/drm/nouveau/nv84_fence.c
drivers/gpu/drm/radeon/radeon_drv.c
drivers/gpu/drm/vc4/vc4_crtc.c
drivers/gpu/drm/vc4/vc4_plane.c
include/drm/drmP.h
include/drm/drm_atomic.h
include/drm/drm_mode_config.h
sound/pci/hda/patch_hdmi.c

diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 628699a91106c2f57930e19c63b1aa90b28c124e,d09c74973cb37a6c8d599c007ea4a53c0e0994e0..933019e1b206c08d5e4320822dfb85ca45bea3d5
@@@ -52,10 -52,30 +52,18 @@@ i915_gem_object_get_pages_internal(stru
        int max_order;
        gfp_t gfp;
  
 -      st = kmalloc(sizeof(*st), GFP_KERNEL);
 -      if (!st)
 -              return ERR_PTR(-ENOMEM);
 -
 -      if (sg_alloc_table(st, npages, GFP_KERNEL)) {
 -              kfree(st);
 -              return ERR_PTR(-ENOMEM);
 -      }
 -
 -      sg = st->sgl;
 -      st->nents = 0;
 -
        max_order = MAX_ORDER;
  #ifdef CONFIG_SWIOTLB
-       if (swiotlb_nr_tbl()) /* minimum max swiotlb size is IO_TLB_SEGSIZE */
-               max_order = min(max_order, ilog2(IO_TLB_SEGPAGES));
+       if (swiotlb_nr_tbl()) {
+               unsigned int max_segment;
+               max_segment = swiotlb_max_segment();
+               if (max_segment) {
+                       max_segment = max_t(unsigned int, max_segment,
+                                           PAGE_SIZE) >> PAGE_SHIFT;
+                       max_order = min(max_order, ilog2(max_segment));
+               }
+       }
  #endif
  
        gfp = GFP_KERNEL | __GFP_HIGHMEM | __GFP_RECLAIMABLE;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 86360fca4b1877132fe3200a8f048e426144de2e,f0b322bec7df22de23bbae372333fb484ac6d9ed..bd7a8a1e4ad9774f2e9840ecb0d6d741c430751c
@@@ -212,8 -216,10 +216,10 @@@ nv84_fence_create(struct nouveau_drm *d
        priv->base.context_base = dma_fence_context_alloc(priv->base.contexts);
        priv->base.uevent = true;
  
+       mutex_init(&priv->mutex);
        /* Use VRAM if there is any ; otherwise fallback to system memory */
 -      domain = drm->device.info.ram_size != 0 ? TTM_PL_FLAG_VRAM :
 +      domain = drm->client.device.info.ram_size != 0 ? TTM_PL_FLAG_VRAM :
                         /*
                          * fences created in sysmem must be non-cached or we
                          * will lose CPU/GPU coherency!
index af3bbe82fd48992cfd979711925fa4e5c784054f,30bd4a6a9d466e11755bf95cee6929473ae65adf..956c425e639e7bfa66cc71a3fe486e9e5753b35f
   *   2.46.0 - Add PFP_SYNC_ME support on evergreen
   *   2.47.0 - Add UVD_NO_OP register support
   *   2.48.0 - TA_CS_BC_BASE_ADDR allowed on SI
+  *   2.49.0 - DRM_RADEON_GEM_INFO ioctl returns correct vram_size/visible values
   */
  #define KMS_DRIVER_MAJOR      2
- #define KMS_DRIVER_MINOR      48
+ #define KMS_DRIVER_MINOR      49
  #define KMS_DRIVER_PATCHLEVEL 0
  int radeon_driver_load_kms(struct drm_device *dev, unsigned long flags);
 -int radeon_driver_unload_kms(struct drm_device *dev);
 +void radeon_driver_unload_kms(struct drm_device *dev);
  void radeon_driver_lastclose_kms(struct drm_device *dev);
  int radeon_driver_open_kms(struct drm_device *dev, struct drm_file *file_priv);
  void radeon_driver_postclose_kms(struct drm_device *dev,
Simple merge
Simple merge
Simple merge
index 2e28fdca9c3d293c56e4192d287e59e459ff80b4,56814e8ae7ea91a4c9aeed59a2c6f9d2263fb2e4..052ab161b239275cf8bc29891fa75ed0d9e1227e
@@@ -145,8 -144,7 +145,8 @@@ struct __drm_crtcs_state 
        struct drm_crtc *ptr;
        struct drm_crtc_state *state;
        struct drm_crtc_commit *commit;
-       s64 __user *out_fence_ptr;
+       s32 __user *out_fence_ptr;
 +      unsigned last_vblank_count;
  };
  
  struct __drm_connnectors_state {
Simple merge
Simple merge