summaryrefslogtreecommitdiffstats
path: root/vidix
diff options
context:
space:
mode:
authoralex <alex@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-01-13 10:21:22 +0000
committeralex <alex@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-01-13 10:21:22 +0000
commitbc1e74caf68a61ceca17df47101f3ecb12ea4b8e (patch)
tree94c72547f0d8bd785ead514ac641315eab34077b /vidix
parent28148c211ccc57c50a1bbdf9a77dda9dbd30af4c (diff)
downloadmpv-bc1e74caf68a61ceca17df47101f3ecb12ea4b8e.tar.bz2
mpv-bc1e74caf68a61ceca17df47101f3ecb12ea4b8e.tar.xz
M6 bug workaround by Hanno Bock <hanno@gmx.de>
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8943 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'vidix')
-rw-r--r--vidix/drivers/radeon_vid.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/vidix/drivers/radeon_vid.c b/vidix/drivers/radeon_vid.c
index 3f39e5bced..79480f52d3 100644
--- a/vidix/drivers/radeon_vid.c
+++ b/vidix/drivers/radeon_vid.c
@@ -1021,6 +1021,16 @@ int vixInit( void )
radeon_ram_size = INREG(CONFIG_MEMSIZE);
/* mem size is bits [28:0], mask off the rest. Range: from 1Mb up to 512 Mb */
radeon_ram_size &= CONFIG_MEMSIZE_MASK;
+#ifdef RADEON
+ /* according to XFree86 4.2.0, some production M6's return 0 for 8MB */
+ if (radeon_ram_size == 0 &&
+ (def_cap.device_id == DEVICE_ATI_RADEON_MOBILITY_M6 ||
+ def_cap.device_id == DEVICE_ATI_RADEON_MOBILITY_M62))
+ {
+ printf(RADEON_MSG" Workarounding buggy Radeon Mobility M6 (0 vs. 8MB ram)\n");
+ radeon_ram_size = 8192*1024;
+ }
+#endif
if((radeon_mem_base = map_phys_mem(pci_info.base0,radeon_ram_size))==(void *)-1) return ENOMEM;
memset(&besr,0,sizeof(bes_registers_t));
radeon_vid_make_default();