mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 00:53:34 +02:00
drm/nouveau: Compute dumb-buffer sizes with drm_mode_size_dumb()
Call drm_mode_size_dumb() to compute dumb-buffer scanline pitch and buffer size. Align the pitch to a multiple of 256. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Lyude Paul <lyude@redhat.com> Cc: Karol Herbst <kherbst@redhat.com> Cc: Lyude Paul <lyude@redhat.com> Cc: Danilo Krummrich <dakr@kernel.org> Link: https://lore.kernel.org/r/20250821081918.79786-15-tzimmermann@suse.de
This commit is contained in:
parent
538fa012cb
commit
7aff3a6be7
|
|
@ -30,6 +30,7 @@
|
|||
#include <drm/drm_atomic_helper.h>
|
||||
#include <drm/drm_client_event.h>
|
||||
#include <drm/drm_crtc_helper.h>
|
||||
#include <drm/drm_dumb_buffers.h>
|
||||
#include <drm/drm_fourcc.h>
|
||||
#include <drm/drm_gem_framebuffer_helper.h>
|
||||
#include <drm/drm_probe_helper.h>
|
||||
|
|
@ -807,9 +808,9 @@ nouveau_display_dumb_create(struct drm_file *file_priv, struct drm_device *dev,
|
|||
uint32_t domain;
|
||||
int ret;
|
||||
|
||||
args->pitch = roundup(args->width * (args->bpp / 8), 256);
|
||||
args->size = args->pitch * args->height;
|
||||
args->size = roundup(args->size, PAGE_SIZE);
|
||||
ret = drm_mode_size_dumb(dev, args, SZ_256, 0);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
/* Use VRAM if there is any ; otherwise fallback to system memory */
|
||||
if (nouveau_drm(dev)->client.device.info.ram_size != 0)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user