From e1a0cafcfb85a681c7ac77c71fed0c392a75fe06 Mon Sep 17 00:00:00 2001
From: Bin Meng <bmeng@tinylab.org>
Date: Sun, 23 Jul 2023 12:40:32 +0800
Subject: [PATCH] video: bochs: Set the frame buffer size per configuration

At present the uclass stored frame buffer size is set to a hard
coded value, but we can calculate the correct value based on what
is configured.

Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>  # qemu-x86_64
---
 drivers/video/bochs.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/video/bochs.c b/drivers/video/bochs.c
index 5923ff81c6..022ea38d4c 100644
--- a/drivers/video/bochs.c
+++ b/drivers/video/bochs.c
@@ -101,8 +101,8 @@ static int bochs_video_bind(struct udevice *dev)
 {
 	struct video_uc_plat *uc_plat = dev_get_uclass_plat(dev);
 
-	/* Set the maximum supported resolution */
-	uc_plat->size = 2560 * 1600 * 4;
+	/* Set the frame buffer size per configuration */
+	uc_plat->size = xsize * ysize * 32 / 8;
 	log_debug("%s: Frame buffer size %x\n", __func__, uc_plat->size);
 
 	return 0;
-- 
2.39.5