1. 20 Apr, 2010 19 commits
    • Dave Airlie's avatar
      Merge branch 'drm-ttm-unmappable' into drm-core-next · 7547a917
      Dave Airlie authored
      * drm-ttm-unmappable:
        drm/radeon/kms: enable use of unmappable VRAM V2
        drm/ttm: remove io_ field from TTM V6
        drm/vmwgfx: add support for new TTM fault callback V5
        drm/nouveau/kms: add support for new TTM fault callback V5
        drm/radeon/kms: add support for new fault callback V7
        drm/ttm: ttm_fault callback to allow driver to handle bo placement V6
        drm/ttm: split no_wait argument in 2 GPU or reserve wait
      
      Conflicts:
      	drivers/gpu/drm/nouveau/nouveau_bo.c
      7547a917
    • Jerome Glisse's avatar
      drm/radeon/kms: enable use of unmappable VRAM V2 · 6b8b1786
      Jerome Glisse authored
      This patch enable the use of unmappable VRAM thanks to
      previous TTM infrastructure change.
      
      V2 update after io_mem_reserve/io_mem_free callback balancing
      Signed-off-by: default avatarJerome Glisse <jglisse@redhat.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      6b8b1786
    • Jerome Glisse's avatar
      drm/ttm: remove io_ field from TTM V6 · 0c321c79
      Jerome Glisse authored
      All TTM driver have been converted to new io_mem_reserve/free
      interface which allow driver to choose and return proper io
      base, offset to core TTM for ioremapping if necessary. This
      patch remove what is now deadcode.
      
      V2 adapt to match with change in first patch of the patchset
      V3 update after io_mem_reserve/io_mem_free callback balancing
      V4 adjust to minor cleanup
      V5 remove the needs ioremap flag
      V6 keep the ioremapping facility in TTM
      
      [airlied- squashed driver removals in here also]
      Signed-off-by: default avatarJerome Glisse <jglisse@redhat.com>
      Reviewed-by: default avatarThomas Hellstrom <thellstrom@vmware.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      0c321c79
    • Jerome Glisse's avatar
      drm/vmwgfx: add support for new TTM fault callback V5 · 96bf8b87
      Jerome Glisse authored
      This add the support for the new fault callback, does change anything
      from driver point of view.
      
      Improvement: store the aperture base in a variable so that we don't
      call a function to get it on each fault.
      
      Patch hasn't been tested.
      
      V2 don't derefence bo->mem.mm_node as it's not NULL only for
         VRAM or GTT
      V3 update after io_mem_reserve/io_mem_free callback balancing
      V4 callback has to ioremap
      V5 ioremap is done by TTM
      Signed-off-by: default avatarJerome Glisse <jglisse@redhat.com>
      Reviewed-by: default avatarThomas Hellstrom <thellstrom@vmware.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      96bf8b87
    • Jerome Glisse's avatar
      drm/nouveau/kms: add support for new TTM fault callback V5 · f32f02fd
      Jerome Glisse authored
      This add the support for the new fault callback, does change anything
      from driver point of view, thought it should allow nouveau to add
      support for unmappable VRAM.
      
      Improvement: store the aperture base in a variable so that we don't
      call a function to get it on each fault.
      
      Patch hasn't been tested on any hw.
      
      V2 don't derefence bo->mem.mm_node as it's not NULL only for
         VRAM or GTT
      V3 update after io_mem_reserve/io_mem_free callback balancing
      V4 callback has to ioremap
      V5 ioremap is done by ttm
      Signed-off-by: default avatarJerome Glisse <jglisse@redhat.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      f32f02fd
    • Jerome Glisse's avatar
      drm/radeon/kms: add support for new fault callback V7 · 0a2d50e3
      Jerome Glisse authored
      This add the support for the new fault callback and also the
      infrastructure for supporting unmappable VRAM.
      
      V2 validate BO with no_wait = true
      V3 don't derefence bo->mem.mm_node as it's not NULL only for
         VRAM or GTT
      V4 update to splitted no_wait ttm change
      V5 update to new balanced io_mem_reserve/free change
      V6 callback is responsible for iomapping memory
      V7 move back iomapping to ttm
      Signed-off-by: default avatarJerome Glisse <jglisse@redhat.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      0a2d50e3
    • Jerome Glisse's avatar
      drm/ttm: ttm_fault callback to allow driver to handle bo placement V6 · 82c5da6b
      Jerome Glisse authored
      On fault the driver is given the opportunity to perform any operation
      it sees fit in order to place the buffer into a CPU visible area of
      memory. This patch doesn't break TTM users, nouveau, vmwgfx and radeon
      should keep working properly. Future patch will take advantage of this
      infrastructure and remove the old path from TTM once driver are
      converted.
      
      V2 return VM_FAULT_NOPAGE if callback return -EBUSY or -ERESTARTSYS
      V3 balance io_mem_reserve and io_mem_free call, fault_reserve_notify
         is responsible to perform any necessary task for mapping to succeed
      V4 minor cleanup, atomic_t -> bool as member is protected by reserve
         mecanism from concurent access
      V5 the callback is now responsible for iomapping the bo and providing
         a virtual address this simplify TTM and will allow to get rid of
         TTM_MEMTYPE_FLAG_NEEDS_IOREMAP
      V6 use the bus addr data to decide to ioremap or this isn't needed
         but we don't necesarily need to ioremap in the callback but still
         allow driver to use static mapping
      Signed-off-by: default avatarJerome Glisse <jglisse@redhat.com>
      Reviewed-by: default avatarThomas Hellstrom <thellstrom@vmware.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      82c5da6b
    • Daniel Vetter's avatar
      drm/i915: drop pointer to drm_gem_object · a8089e84
      Daniel Vetter authored
      Luckily the change is quite a little bit less invasive than I've
      feared.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Acked-by: default avatarEric Anholt <eric@anholt.net>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      a8089e84
    • Daniel Vetter's avatar
      drm/i915: don't use ->driver_private anymore · 62b8b215
      Daniel Vetter authored
      Thanks to the to_intel_bo helper, this change is rather trivial.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Acked-by: default avatarEric Anholt <eric@anholt.net>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      62b8b215
    • Daniel Vetter's avatar
      drm/i915: embed the gem object into drm_i915_gem_object · c397b908
      Daniel Vetter authored
      Just embed it and adjust the pointers, No other changes (that's
      for later patches).
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Acked-by: default avatarEric Anholt <eric@anholt.net>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      c397b908
    • Daniel Vetter's avatar
      drm/i915: introduce i915_gem_alloc_object · ac52bc56
      Daniel Vetter authored
      Just preparation, no functional change.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Acked-by: default avatarEric Anholt <eric@anholt.net>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      ac52bc56
    • Daniel Vetter's avatar
      drm: free core gem object from driver callbacks · fd632aa3
      Daniel Vetter authored
      When drivers embed the core gem object into their own structures,
      they'll have to do this. Temporarily this results in an ugly
      
      kfree(gem_obj);
      
      in every gem driver.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Acked-by: default avatarEric Anholt <eric@anholt.net>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      fd632aa3
    • Daniel Vetter's avatar
      drm: extract drm_gem_object_init · 1d397043
      Daniel Vetter authored
      This function can be used by drivers who allocate the drm gem object
      on their own. No functional change in here, just preparation.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Acked-by: default avatarEric Anholt <eric@anholt.net>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      1d397043
    • Dave Airlie's avatar
      Merge branch 'drm-radeon-evergreen-accel' into drm-core-next · 153549b8
      Dave Airlie authored
      * drm-radeon-evergreen-accel:
        drm/radeon: fix cypress firmware typo.
        drm/radeon/kms/evergreen: add hpd support
        drm/radeon/kms/evergreen: implement irq support
        drm/radeon/kms/evergreen: setup and enable the CP
        drm/radeon/kms/evergreen: implement gfx init
        drm/radeon/kms/evergreen: add soft reset function
        drm/radeon/kms/evergreen: add gart support
        drm/radeon/kms: add support for evergreen power tables
        drm/radeon/kms: update atombios.h power tables for evergreen
      153549b8
    • Dave Airlie's avatar
      Merge branch 'drm-fbdev-cleanup' into drm-core-next · 7fff400b
      Dave Airlie authored
      * drm-fbdev-cleanup:
        drm/fb: remove drm_fb_helper_setcolreg
        drm/kms/fb: use slow work mechanism for normal hotplug also.
        drm/kms/fb: add polling support for when nothing is connected.
        drm/kms/fb: provide a 1024x768 fbcon if no outputs found.
        drm/kms/fb: separate fbdev connector list from core drm connectors
        drm/kms/fb: move to using fb helper crtc grouping instead of core crtc list
        drm/fb: fix fbdev object model + cleanup properly.
      
      Conflicts:
      	drivers/gpu/drm/i915/i915_drv.h
      	drivers/gpu/drm/nouveau/nouveau_drv.h
      7fff400b
    • Dave Airlie's avatar
      Merge branch 'drm-radeon-lockup' into drm-core-next · 0bcb1d84
      Dave Airlie authored
      * drm-radeon-lockup:
        drm/radeon/kms: simplify & improve GPU reset V2
        drm/radeon/kms: rename gpu_reset to asic_reset
        drm/radeon/kms: fence cleanup + more reliable GPU lockup detection V4
      
      Conflicts:
      	drivers/gpu/drm/radeon/r300.c
      0bcb1d84
    • Dave Airlie's avatar
      Merge branch 'drm-edid-fixes' into drm-core-next · c9c2625f
      Dave Airlie authored
      * drm-edid-fixes:
        drm/edid: When checking duplicate standard modes, walked the probed list
        drm/edid: Fix sync polarity for secondary GTF curve
        drm/modes: Fix interlaced mode names
        drm/edid: Add secondary GTF curve support
        drm/edid: Strengthen the algorithm for standard mode codes
        drm/edid: Fix the HDTV hack.
        drm/edid: Extend range-based mode addition for EDID 1.4
        drm/edid: Add test for monitor reduced blanking support.
        drm/edid: Fix preferred mode parse for EDID 1.4
        drm/edid: Remove some silly comments
        drm/edid: Remove arbitrary EDID extension limit
        drm/edid: Add modes for Established Timings III section
        drm/edid: Reshuffle mode list construction to closer match the spec
        drm/edid: Remove a redundant check
        drm/edid: Remove some misleading comments
        drm/edid: Fix secondary block fetch.
      c9c2625f
    • Dave Airlie's avatar
      Merge branch 'drm-ttm-pool' into drm-core-next · c2b41276
      Dave Airlie authored
      * drm-ttm-pool:
        drm/ttm: using kmalloc/kfree requires including slab.h
        drm/ttm: include linux/seq_file.h for seq_printf
        drm/ttm: Add sysfs interface to control pool allocator.
        drm/ttm: Use set_pages_array_wc instead of set_memory_wc.
        arch/x86: Add array variants for setting memory to wc caching.
        drm/nouveau: Add ttm page pool debugfs file.
        drm/radeon/kms: Add ttm page pool debugfs file.
        drm/ttm: Add debugfs output entry to pool allocator.
        drm/ttm: add pool wc/uc page allocator V3
      c2b41276
    • Dave Airlie's avatar
      Merge remote branch 'anholt/drm-intel-next' of /home/airlied/kernel/drm-next into drm-core-next · 97921a5b
      Dave Airlie authored
      * 'anholt/drm-intel-next' of /home/airlied/kernel/drm-next: (48 commits)
        agp/intel-gtt: kill previous_size assignments
        agp/intel-gtt: kill intel_i830_tlbflush
        agp/intel: split out gmch/gtt probe, part 1
        agp/intel: kill mutli_gmch_chip
        agp/intel: uncoditionally reconfigure driver on resume
        agp/intel: split out the GTT support
        agp/intel: introduce intel-agp.h header file
        drm/i915: Don't touch PORT_HOTPLUG_EN in intel_dp_detect()
        drm/i915/pch: Use minimal number of FDI lanes (v2)
        drm/i915: Add the support of memory self-refresh on Ironlake
        drm/i915: Move Pineview CxSR and watermark code into update_wm hook.
        drm/i915: Only save/restore FBC on the platform that supports FBC
        drm/i915: Fix the incorrect argument for SDVO SET_TV_format command
        drm/i915: Add support of SDVO on Ibexpeak PCH
        drm/i915: Don't enable pipe/plane/VCO early (wait for DPMS on).
        drm/i915: do not read uninitialized ->dev_private
        Revert "drm/i915: Use a dmi quirk to skip a broken SDVO TV output."
        drm/i915: implement multifunction SDVO device support
        drm/i915: remove unused intel_pipe_get_connector()
        drm/i915: remove connector object in old output structure
        ...
      97921a5b
  2. 19 Apr, 2010 21 commits