Refactor and simplify various parts of the memory management. This includes locking, initialization and finalizer functions, and code organization. Tested on Atom N2800 hardware. v2: * put common code in psb_gtt_{init,fini,resume}() into helpers (Sam, Patrik) Thomas Zimmermann (12): drm/gma500: Remove struct psb_gem_object.npage drm/gma500: Acquire reservation lock for GEM objects drm/gma500: Move GTT locking into GTT helpers drm/gma500: Remove struct psb_gtt.sem sempahore drm/gma500: Move GTT setup and restoration into helper funtions drm/gma500: Move GTT resume logic out of psb_gtt_init() drm/gma500: Cleanup GTT uninit and error handling drm/gma500: Split GTT init/resume/fini into GTT and GEM functions drm/gma500: Inline psb_gtt_restore() drm/gma500: Move GEM memory management functions to gem.c drm/gma500: Move GTT enable and disable code into helpers drm/gma500: Move GTT memory-range setup into helper drivers/gpu/drm/gma500/gem.c | 161 ++++++++++++++- drivers/gpu/drm/gma500/gem.h | 13 +- drivers/gpu/drm/gma500/gma_display.c | 8 +- drivers/gpu/drm/gma500/gtt.c | 295 +++++++++++++-------------- drivers/gpu/drm/gma500/gtt.h | 8 +- drivers/gpu/drm/gma500/power.c | 5 +- drivers/gpu/drm/gma500/psb_drv.c | 13 +- drivers/gpu/drm/gma500/psb_drv.h | 1 - 8 files changed, 317 insertions(+), 187 deletions(-) base-commit: 710a019ad85e96e66f7d75ee7f4733cdd8a2b0d0 prerequisite-patch-id: c2b2f08f0eccc9f5df0c0da49fa1d36267deb11d prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24 prerequisite-patch-id: 6e1032c6302461624f33194c8b8f37103a3fa6ef -- 2.35.1