diff --git a/drivers/video/geode/display_gx.c b/drivers/video/geode/display_gx.c index 3743c8766a08b8c0df5a5962e49813d22bd7804a..1e82ecc367dd259cf78863a6a32a5df6b65985f7 100644 --- a/drivers/video/geode/display_gx.c +++ b/drivers/video/geode/display_gx.c @@ -17,6 +17,7 @@ #include <asm/io.h> #include <asm/div64.h> #include <asm/delay.h> +#include <asm/geode.h> #include "gxfb.h" @@ -28,10 +29,10 @@ unsigned int gx_frame_buffer_size(void) /* Virtual register class = 0x02 */ /* VG_MEM_SIZE(512Kb units) = 0x00 */ - outw(0xFC53, 0xAC1C); - outw(0x0200, 0xAC1C); + outw(VSA_VR_UNLOCK, VSA_VRC_INDEX); + outw(VSA_VR_MEM_SIZE, VSA_VRC_INDEX); - val = (unsigned int)(inw(0xAC1E)) & 0xFFl; + val = (unsigned int)(inw(VSA_VRC_DATA)) & 0xFFl; return (val << 19); } diff --git a/drivers/video/geode/lxfb_ops.c b/drivers/video/geode/lxfb_ops.c index 531fcdcdd75958e1b1c9259fc70cfe6183196d6e..e42e12489f6db25c2b926bc8ad34e18dfec562da 100644 --- a/drivers/video/geode/lxfb_ops.c +++ b/drivers/video/geode/lxfb_ops.c @@ -333,10 +333,10 @@ unsigned int lx_framebuffer_size(void) /* Virtual Register Class = 0x02 */ /* VG_MEM_SIZE (1MB units) = 0x00 */ - outw(0xFC53, 0xAC1C); - outw(0x0200, 0xAC1C); + outw(VSA_VR_UNLOCK, VSA_VRC_INDEX); + outw(VSA_VR_MEM_SIZE, VSA_VRC_INDEX); - val = (unsigned int)(inw(0xAC1E)) & 0xFE; + val = (unsigned int)(inw(VSA_VRC_DATA)) & 0xFE; return (val << 20); } diff --git a/include/asm-x86/geode.h b/include/asm-x86/geode.h index 3978200f126caa6dc975e4f27e81cbf9ab0f454e..4fb2f62e277bdd62c5db89a658c3ee6914d31343 100644 --- a/include/asm-x86/geode.h +++ b/include/asm-x86/geode.h @@ -109,6 +109,7 @@ extern int geode_get_dev_base(unsigned int dev); #define VSA_VRC_DATA 0xAC1E #define VSA_VR_UNLOCK 0xFC53 /* unlock virtual register */ #define VSA_VR_SIGNATURE 0x0003 +#define VSA_VR_MEM_SIZE 0x0200 #define VSA_SIG 0x4132 /* signature is ascii 'VSA2' */ /* GPIO */