Merge remote branch 'nouveau/for-airlied' of ../drm-nouveau-next into drm-core-next
authorDave Airlie <airlied@redhat.com>
Wed, 6 Oct 2010 02:38:04 +0000 (12:38 +1000)
committerDave Airlie <airlied@redhat.com>
Wed, 6 Oct 2010 02:57:11 +0000 (12:57 +1000)
[airlied - add fix for vmwgfx build]

* 'nouveau/for-airlied' of ../drm-nouveau-next: (93 commits)
  drm/ttm: restructure to allow driver to plug in alternate memory manager
  drm/ttm: introduce utility function to free an allocated memory node
  drm/nouveau: fix thinkos in mem timing table recordlen check
  drm/nouveau: parse voltage from perf 0x40 entires
  drm/nouveau: don't use the default pll limits in table v2.1 on nv50+ cards
  drm/nv50: Fix large 3D performance regression caused by the interchannel sync patches.
  drm/nouveau: Synchronize buffer object moves in hardware.
  drm/nouveau: Use semaphores to handle inter-channel sync in hardware.
  drm/nouveau: Provide a means to have arbitrary work run on fence completion.
  drm/nouveau: Minor refactoring/cleanup of the fence code.
  drm/nouveau: Add a module option to force card POST.
  drm/nv50: prevent (IB_PUT == IB_GET) for occurring unless idle
  drm/nv0x-nv4x: Leave the 0x40 bit untouched when changing CRE_LCD.
  drm/nv30-nv40: Fix postdivider mask when writing engine/memory PLLs.
  drm/nouveau: Fix perf table parsing on BMP v5.25.
  drm/nouveau: fix required mode bandwidth calculation for DP
  drm/nouveau: fix typo in c2aa91afea5f7e7ae4530fabd37414a79c03328c
  drm/nva3: split pm backend out from nv50
  drm/nouveau: run perflvl and M table scripts on mem clock change
  drm/nouveau: pass perflvl struct to clock_pre()
  ...

1  2 
drivers/gpu/drm/nouveau/nouveau_gem.c
drivers/gpu/drm/nouveau/nouveau_notifier.c
drivers/gpu/drm/ttm/ttm_bo_util.c
drivers/gpu/drm/vmwgfx/vmwgfx_fb.c

Simple merge
Simple merge
index b27a9f2887d21f51480b7a3b8530e3436f78deb5,870967a97c15d52eb3f380323e6038d32ed6e76f..e7304188a784da8d8b1e850c1e4b3a06978c0995
@@@ -612,6 -602,6 +612,7 @@@ int vmw_dmabuf_to_start_of_vram(struct 
  {
        struct ttm_buffer_object *bo = &vmw_bo->base;
        struct ttm_placement ne_placement = vmw_vram_ne_placement;
++      struct drm_mm_node *mm_node;
        int ret = 0;
  
        ne_placement.lpfn = bo->num_pages;
        if (unlikely(ret != 0))
                goto err_unlock;
  
-           bo->mem.mm_node->start < bo->num_pages)
++      mm_node = bo->mem.mm_node;
 +      if (bo->mem.mem_type == TTM_PL_VRAM &&
++          mm_node->start < bo->num_pages)
 +              (void) ttm_bo_validate(bo, &vmw_sys_placement, false,
 +                                     false, false);
 +
        ret = ttm_bo_validate(bo, &ne_placement, false, false, false);
  
        /* Could probably bug on */