This series of patches implemented to move i915 buddy allocator to drm root, and introduce new features include - make drm_buddy_alloc a prime vehicle for allocation - TOPDOWN range of address allocation support - a function to free unused pages on contiguous allocation - a function to allocate required size comply with range limitations - cleanup i915 and amdgpu old mm manager references - and finally add drm buddy support to i915 and amdgpu driver modules selftest patches will be sent in a separate series. Arunpravin (13): drm: Move and rename i915 buddy header drm: Move and rename i915 buddy source drm: add Makefile support for drm buddy drm: make drm_buddy_alloc a commonplace drm: remove drm_buddy_alloc_range drm: implement top-down allocation method drm: Implement method to free unused pages drm: export functions and write description drm: remove i915 selftest config check drm/i915: cleanup i915 buddy and apply DRM buddy drm/amdgpu: move vram defines into a header drm/amdgpu: add cursor support for drm buddy drm/amdgpu: cleanup drm_mm and apply DRM buddy drivers/gpu/drm/Makefile | 2 +- .../gpu/drm/amd/amdgpu/amdgpu_res_cursor.h | 97 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | 251 ++++--- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h | 72 ++ drivers/gpu/drm/drm_buddy.c | 704 ++++++++++++++++++ drivers/gpu/drm/drm_drv.c | 3 + drivers/gpu/drm/i915/Makefile | 1 - drivers/gpu/drm/i915/i915_buddy.c | 466 ------------ drivers/gpu/drm/i915/i915_buddy.h | 143 ---- drivers/gpu/drm/i915/i915_module.c | 3 - drivers/gpu/drm/i915/i915_scatterlist.c | 11 +- drivers/gpu/drm/i915/i915_ttm_buddy_manager.c | 91 ++- drivers/gpu/drm/i915/i915_ttm_buddy_manager.h | 5 +- include/drm/drm_buddy.h | 164 ++++ 15 files changed, 1214 insertions(+), 803 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h create mode 100644 drivers/gpu/drm/drm_buddy.c delete mode 100644 drivers/gpu/drm/i915/i915_buddy.c delete mode 100644 drivers/gpu/drm/i915/i915_buddy.h create mode 100644 include/drm/drm_buddy.h -- 2.25.1