]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commitdiff
Merge branch 'drm-next' of git://people.freedesktop.org/~dvdhrm/linux into drm-next
authorDave Airlie <airlied@redhat.com>
Tue, 8 Jul 2014 01:08:31 +0000 (11:08 +1000)
committerDave Airlie <airlied@redhat.com>
Tue, 8 Jul 2014 01:08:31 +0000 (11:08 +1000)
* 'drm-next' of git://people.freedesktop.org/~dvdhrm/linux:
  drm/omap: remove null test before kfree
  drm/bochs: replace ALIGN(PAGE_SIZE) by PAGE_ALIGN
  drm/ttm: recognize ARM arch in ioprot handler
  drm: enable render-nodes by default
  drm/ttm: remove declaration of ttm_tt_cache_flush
  drm/gem: remove misleading gfp parameter to get_pages()
  drm/omap: use __GFP_DMA32 for shmem-backed gem
  drm/i915: use shmem helpers if possible

Conflicts:
drivers/gpu/drm/drm_stub.c

1  2 
drivers/gpu/drm/drm_stub.c
drivers/gpu/drm/msm/msm_gem.c
include/drm/drmP.h

index f4148bfcb26d0c8eb600fea3e24bba657bd29dfe,07bf70121e9ac3af7ebdf1c5784580be278d9c41..4e862b4677409b437680189521771d5b118d40ed
  unsigned int drm_debug = 0;   /* 1 to enable debug output */
  EXPORT_SYMBOL(drm_debug);
  
- unsigned int drm_rnodes = 0;  /* 1 to enable experimental render nodes API */
  /* 1 to allow user space to request universal planes (experimental) */
  unsigned int drm_universal_planes = 0;
 -EXPORT_SYMBOL(drm_universal_planes);
  
  unsigned int drm_vblank_offdelay = 5000;    /* Default to 5000 msecs. */
 -EXPORT_SYMBOL(drm_vblank_offdelay);
  
  unsigned int drm_timestamp_precision = 20;  /* Default to 20 usecs. */
 -EXPORT_SYMBOL(drm_timestamp_precision);
  
  /*
   * Default to use monotonic timestamps for wait-for-vblank and page-flip
@@@ -56,13 -57,11 +54,11 @@@ MODULE_AUTHOR(CORE_AUTHOR)
  MODULE_DESCRIPTION(CORE_DESC);
  MODULE_LICENSE("GPL and additional rights");
  MODULE_PARM_DESC(debug, "Enable debug output");
- MODULE_PARM_DESC(rnodes, "Enable experimental render nodes API");
  MODULE_PARM_DESC(vblankoffdelay, "Delay until vblank irq auto-disable [msecs]");
  MODULE_PARM_DESC(timestamp_precision_usec, "Max. error on timestamps [usecs]");
  MODULE_PARM_DESC(timestamp_monotonic, "Use monotonic timestamps");
  
  module_param_named(debug, drm_debug, int, 0600);
- module_param_named(rnodes, drm_rnodes, int, 0600);
  module_param_named(universal_planes, drm_universal_planes, int, 0600);
  module_param_named(vblankoffdelay, drm_vblank_offdelay, int, 0600);
  module_param_named(timestamp_precision_usec, drm_timestamp_precision, int, 0600);
@@@ -584,7 -583,7 +580,7 @@@ struct drm_device *drm_dev_alloc(struc
                        goto err_minors;
        }
  
-       if (drm_core_check_feature(dev, DRIVER_RENDER) && drm_rnodes) {
+       if (drm_core_check_feature(dev, DRIVER_RENDER)) {
                ret = drm_minor_alloc(dev, DRM_MINOR_RENDER);
                if (ret)
                        goto err_minors;
index 690d7e7b6d1e8296891dde245d871850b0631715,6866879efa3beb10f70d6df056954a8aee305e59..713722b0ba7849892aa0816690929374e047ac38
@@@ -73,7 -73,7 +73,7 @@@ static struct page **get_pages(struct d
                int npages = obj->size >> PAGE_SHIFT;
  
                if (iommu_present(&platform_bus_type))
-                       p = drm_gem_get_pages(obj, 0);
+                       p = drm_gem_get_pages(obj);
                else
                        p = get_pages_vram(obj, npages);
  
@@@ -278,7 -278,6 +278,7 @@@ int msm_gem_get_iova_locked(struct drm_
                uint32_t *iova)
  {
        struct msm_gem_object *msm_obj = to_msm_bo(obj);
 +      struct drm_device *dev = obj->dev;
        int ret = 0;
  
        if (!msm_obj->domain[id].iova) {
                struct msm_mmu *mmu = priv->mmus[id];
                struct page **pages = get_pages(obj);
  
 +              if (!mmu) {
 +                      dev_err(dev->dev, "null MMU pointer\n");
 +                      return -EINVAL;
 +              }
 +
                if (IS_ERR(pages))
                        return PTR_ERR(pages);
  
diff --combined include/drm/drmP.h
index 57ecc421b19c339f311448caa78f13f19ddf1c99,dc74c971b9927b5c0dc29bf99352218a5d3412eb..a1344793f4a984da3f533b0fd7a1a360dc45970d
@@@ -1395,7 -1395,6 +1395,6 @@@ extern void drm_master_put(struct drm_m
  extern void drm_put_dev(struct drm_device *dev);
  extern void drm_unplug_dev(struct drm_device *dev);
  extern unsigned int drm_debug;
- extern unsigned int drm_rnodes;
  extern unsigned int drm_universal_planes;
  
  extern unsigned int drm_vblank_offdelay;
@@@ -1419,8 -1418,6 +1418,8 @@@ extern int drm_debugfs_create_files(con
  extern int drm_debugfs_remove_files(const struct drm_info_list *files,
                                    int count, struct drm_minor *minor);
  extern int drm_debugfs_cleanup(struct drm_minor *minor);
 +extern int drm_debugfs_connector_add(struct drm_connector *connector);
 +extern void drm_debugfs_connector_remove(struct drm_connector *connector);
  #else
  static inline int drm_debugfs_init(struct drm_minor *minor, int minor_id,
                                   struct dentry *root)
@@@ -1445,15 -1442,6 +1444,15 @@@ static inline int drm_debugfs_cleanup(s
  {
        return 0;
  }
 +
 +static inline int drm_debugfs_connector_add(struct drm_connector *connector)
 +{
 +      return 0;
 +}
 +static inline void drm_debugfs_connector_remove(struct drm_connector *connector)
 +{
 +}
 +
  #endif
  
                                /* Info file support */
@@@ -1585,7 -1573,7 +1584,7 @@@ void drm_gem_free_mmap_offset(struct dr
  int drm_gem_create_mmap_offset(struct drm_gem_object *obj);
  int drm_gem_create_mmap_offset_size(struct drm_gem_object *obj, size_t size);
  
- struct page **drm_gem_get_pages(struct drm_gem_object *obj, gfp_t gfpmask);
+ struct page **drm_gem_get_pages(struct drm_gem_object *obj);
  void drm_gem_put_pages(struct drm_gem_object *obj, struct page **pages,
                bool dirty, bool accessed);