All of lore.kernel.org
 help / color / mirror / Atom feed
From: Egbert Eich <eich@suse.de>
To: dri-devel@lists.freedesktop.org
Cc: Egbert Eich <eich@suse.de>
Subject: [PATCH] DRM/Radeon: Set depth on low mem Radeon cards to 16 instead of 8.
Date: Wed, 24 Oct 2012 18:33:22 +0200	[thread overview]
Message-ID: <1351096402-5802-1-git-send-email-eich@suse.de> (raw)

The Radeon driver reduces the framebuffer resolution to 8bpp if
a device with less than 32 Mb VRAM is found. This causes the
framebuffer to run in 8 bit paletted mode. For a text console this
is not an issue as 256 different colors is more than one gets
on a VGA text console.
It is done to give X more memory to work with since the console memory
is not freed but remains allocated while X is active.
Still, running the fbdev Xserver driver - which we do during installation
- will give applications an 8bit pseudo-color visual which doesn't look
too pretty.
We therefore limit the framebuffer bpp to 16 when memory is 24MB or lower
and to 8 only if 8MB or less VRAM is found.
This should be a reasonable compromise for us.
This patch will most likely not ever make it upstream.

This works around ugly modes on crappy IPMI cards using ES1000.

Signed-off-by: Egbert Eich <eich@suse.de>
---
 drivers/gpu/drm/radeon/radeon_fb.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon_fb.c b/drivers/gpu/drm/radeon/radeon_fb.c
index cc8489d..9e8e221 100644
--- a/drivers/gpu/drm/radeon/radeon_fb.c
+++ b/drivers/gpu/drm/radeon/radeon_fb.c
@@ -356,9 +356,12 @@ int radeon_fbdev_init(struct radeon_device *rdev)
 	int bpp_sel = 32;
 	int ret;
 
-	/* select 8 bpp console on RN50 or 16MB cards */
-	if (ASIC_IS_RN50(rdev) || rdev->mc.real_vram_size <= (32*1024*1024))
+	/* select 16 bpp console on RN50 or 32MB cards */
+	if (rdev->mc.real_vram_size <= (8*1024*1024))
 		bpp_sel = 8;
+	else if (ASIC_IS_RN50(rdev)
+		  || rdev->mc.real_vram_size <= (32*1024*1024))
+		bpp_sel = 16;
 
 	rfbdev = kzalloc(sizeof(struct radeon_fbdev), GFP_KERNEL);
 	if (!rfbdev)
-- 
1.7.6.3

             reply	other threads:[~2012-10-24 16:33 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-24 16:33 Egbert Eich [this message]
2012-10-24 17:07 ` [PATCH] DRM/Radeon: Set depth on low mem Radeon cards to 16 instead of 8 Alex Deucher
2012-10-24 20:09   ` Dave Airlie
2012-10-25 22:40     ` Egbert Eich
2012-10-25  5:56 ` Michel Dänzer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1351096402-5802-1-git-send-email-eich@suse.de \
    --to=eich@suse.de \
    --cc=dri-devel@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.