linux_dsm_epyc7002/drivers/gpu/drm/bochs/bochs_mm.c
Thomas Zimmermann b3a25b9af8 drm/bochs: Convert bochs driver to VRAM MM
The data structure |struct drm_vram_mm| and its helpers replace bochs'
TTM-based memory manager. It's the same implementation; except for the
type names.

v5:
	* set .llseek via DRM_VRAM_MM_FILE_OPERATIONS
v4:
	* don't select DRM_TTM or DRM_VRAM_MM_HELPER
v3:
	* use drm_gem_vram_mm_funcs
	* convert driver to drm_device-based instance
v2:
	* implement bochs_mmap() with drm_vram_mm_mmap()

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: http://patchwork.freedesktop.org/patch/msgid/20190508082630.15116-14-tzimmermann@suse.de
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2019-05-15 16:17:08 +02:00

32 lines
742 B
C

/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*/
#include "bochs.h"
/* ---------------------------------------------------------------------- */
int bochs_mm_init(struct bochs_device *bochs)
{
struct drm_vram_mm *vmm;
vmm = drm_vram_helper_alloc_mm(bochs->dev, bochs->fb_base,
bochs->fb_size,
&drm_gem_vram_mm_funcs);
if (IS_ERR(vmm))
return PTR_ERR(vmm);
return 0;
}
void bochs_mm_fini(struct bochs_device *bochs)
{
if (!bochs->dev->vram_mm)
return;
drm_vram_helper_release_mm(bochs->dev);
}