Commit 4c1979c8 authored by Jordan Crouse's avatar Jordan Crouse Committed by Linus Torvalds
Browse files

[PATCH] FB: Get the Geode GX frambuffer size from the BIOS

Use the Geode GX BIOS virtual registers to get the actual size of the

Signed-off-by: default avatarJordan Crouse <>
Cc: "Antonino A. Daplas" <>
Acked-by: default avatarJames Simmons <>
Signed-off-by: default avatarAndrew Morton <>
Signed-off-by: default avatarLinus Torvalds <>
parent 4437cd1e
......@@ -21,10 +21,19 @@
#include "geodefb.h"
#include "display_gx.h"
int gx_frame_buffer_size(void)
unsigned int gx_frame_buffer_size(void)
/* Assuming 16 MiB. */
return 16*1024*1024;
unsigned int val;
/* FB size is reported by a virtual register */
/* Virtual register class = 0x02 */
/* VG_MEM_SIZE(512Kb units) = 0x00 */
outw(0xFC53, 0xAC1C);
outw(0x0200, 0xAC1C);
val = (unsigned int)(inw(0xAC1E)) & 0xFFl;
return (val << 19);
int gx_line_delta(int xres, int bpp)
......@@ -11,7 +11,7 @@
#ifndef __DISPLAY_GX_H__
#define __DISPLAY_GX_H__
int gx_frame_buffer_size(void);
unsigned int gx_frame_buffer_size(void);
int gx_line_delta(int xres, int bpp);
extern struct geode_dc_ops gx_dc_ops;
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment