[PATCH 0/2] RFC: allow driver to plugin alternative to drm_mm

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Ben Skeggs <bskeggs@xxxxxxxxxx>

In order to properly deal with GPU reordering of blocks in physical VRAM,
Nouveau needs to be able to have better control over VRAM allocations.

Currently nouveau is extremely wasteful and forces massive amounts of
padding/alignment to avoid buffer corruption issues.

radeon/vmwgfx haven't been tested, but nouveau works as well as it did
previously.

Ben Skeggs (2):
  drm/ttm: introduce utility function to free an allocated memory node
  drm/ttm: restructure to allow driver to plug in alternate memory
    manager

 drivers/gpu/drm/nouveau/nouveau_bo.c       |   26 ++---
 drivers/gpu/drm/nouveau/nouveau_channel.c  |    6 +-
 drivers/gpu/drm/nouveau/nouveau_notifier.c |    2 +-
 drivers/gpu/drm/nouveau/nouveau_sgdma.c    |    4 +-
 drivers/gpu/drm/nouveau/nv50_crtc.c        |    3 +-
 drivers/gpu/drm/nouveau/nv50_display.c     |    2 +-
 drivers/gpu/drm/nouveau/nv50_instmem.c     |    2 +-
 drivers/gpu/drm/radeon/radeon_object.c     |    6 +-
 drivers/gpu/drm/radeon/radeon_ttm.c        |   34 ++-----
 drivers/gpu/drm/ttm/Makefile               |    3 +-
 drivers/gpu/drm/ttm/ttm_agp_backend.c      |    3 +-
 drivers/gpu/drm/ttm/ttm_bo.c               |  104 +++++---------------
 drivers/gpu/drm/ttm/ttm_bo_manager.c       |  148 ++++++++++++++++++++++++++++
 drivers/gpu/drm/ttm/ttm_bo_util.c          |   12 +--
 drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c     |    3 +-
 include/drm/ttm/ttm_bo_api.h               |    3 +-
 include/drm/ttm/ttm_bo_driver.h            |   25 +++++-
 17 files changed, 238 insertions(+), 148 deletions(-)
 create mode 100644 drivers/gpu/drm/ttm/ttm_bo_manager.c

-- 
1.7.2

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux