summaryrefslogtreecommitdiff
path: root/src/radeon_driver.c
diff options
context:
space:
mode:
authorAlex Deucher <alex@botch2.com>2008-05-28 14:43:47 -0400
committerAlex Deucher <alex@botch2.com>2008-05-28 14:43:47 -0400
commite20b08525a64888287ec4a369d8f7dbde95c655d (patch)
tree45daaa4467cb8cffc9e430f46a1c40c3145716d8 /src/radeon_driver.c
parentd4fa17b426b0cafac3184b2ea9b675e2ff154ee9 (diff)
ATOM: fail of we are not able to get a bios image
Diffstat (limited to 'src/radeon_driver.c')
-rw-r--r--src/radeon_driver.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/radeon_driver.c b/src/radeon_driver.c
index 91421b5f..5ea7a499 100644
--- a/src/radeon_driver.c
+++ b/src/radeon_driver.c
@@ -2483,9 +2483,17 @@ static Bool RADEONPreInitXv(ScrnInfoPtr pScrn)
return TRUE;
}
-static void RADEONPreInitBIOS(ScrnInfoPtr pScrn, xf86Int10InfoPtr pInt10)
+static Bool
+RADEONPreInitBIOS(ScrnInfoPtr pScrn, xf86Int10InfoPtr pInt10)
{
- RADEONGetBIOSInfo(pScrn, pInt10);
+ RADEONInfoPtr info = RADEONPTR(pScrn);
+
+ if (!RADEONGetBIOSInfo(pScrn, pInt10)) {
+ /* Avivo chips require bios for atom */
+ if (IS_AVIVO_VARIANT)
+ return FALSE;
+ }
+ return TRUE;
}
static void RADEONFixZaphodOutputs(ScrnInfoPtr pScrn)
@@ -2767,7 +2775,8 @@ Bool RADEONPreInit(ScrnInfoPtr pScrn, int flags)
RADEONPostInt10Check(pScrn, int10_save);
- RADEONPreInitBIOS(pScrn, pInt10);
+ if (!RADEONPreInitBIOS(pScrn, pInt10))
+ goto fail;
#ifdef XF86DRI
/* PreInit DRI first of all since we need that for getting a proper