summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/common.h17
-rw-r--r--src/i810.h3
-rw-r--r--src/i810_driver.c10
-rw-r--r--src/i830.h2
-rw-r--r--src/i830_bios.c41
-rw-r--r--src/i830_driver.c9
-rw-r--r--src/i830_modes.c1
7 files changed, 22 insertions, 61 deletions
diff --git a/src/common.h b/src/common.h
index 840d30ab..acd5f4a2 100644
--- a/src/common.h
+++ b/src/common.h
@@ -81,8 +81,6 @@ extern void I830InitpScrn(ScrnInfoPtr pScrn);
extern int I830EntityIndex;
extern const char *I810vgahwSymbols[];
extern const char *I810ramdacSymbols[];
-extern const char *I810int10Symbols[];
-extern const char *I810vbeSymbols[];
extern const char *I810ddcSymbols[];
extern const char *I810fbSymbols[];
extern const char *I810xaaSymbols[];
@@ -106,21 +104,6 @@ extern void I830DPRINTF_stub(const char *filename, int line,
#define RecPtr pI810
#endif
-/* BIOS debug macro */
-#define xf86ExecX86int10_wrapper(pInt, pScrn) do { \
- ErrorF("Executing (ax == 0x%x) BIOS call at %s:%d\n", pInt->ax, __FILE__, __LINE__); \
- if (I810_DEBUG & DEBUG_VERBOSE_BIOS) { \
- ErrorF("Checking Error state before execution\n"); \
- PrintErrorState(pScrn); \
- } \
- xf86ExecX86int10(pInt); \
- if(I810_DEBUG & DEBUG_VERBOSE_BIOS) { \
- ErrorF("Checking Error state after execution\n"); \
- usleep(50000); \
- PrintErrorState(pScrn); \
- } \
-} while (0)
-
static inline void memset_volatile(volatile void *b, int c, size_t len)
{
int i;
diff --git a/src/i810.h b/src/i810.h
index e7331f6d..7ea20439 100644
--- a/src/i810.h
+++ b/src/i810.h
@@ -47,7 +47,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include "xaa.h"
#include "xf86Cursor.h"
#include "xf86xv.h"
-#include "xf86int10.h"
#include "vbe.h"
#include "vgaHW.h"
@@ -276,6 +275,8 @@ typedef struct _I810Rec {
int drmMinor;
} I810Rec;
+extern const char *I810vbeSymbols[];
+
#define I810PTR(p) ((I810Ptr)((p)->driverPrivate))
#define I810_SELECT_FRONT 0
diff --git a/src/i810_driver.c b/src/i810_driver.c
index a7f408c4..cc28ad8b 100644
--- a/src/i810_driver.c
+++ b/src/i810_driver.c
@@ -342,14 +342,6 @@ const char *I810ddcSymbols[] = {
NULL
};
-const char *I810int10Symbols[] = {
- "xf86ExecX86int10",
- "xf86InitInt10",
- "xf86Int10AllocPages",
- "xf86int10Addr",
- NULL
-};
-
const char *I810xaaSymbols[] = {
"XAACreateInfoRec",
"XAADestroyInfoRec",
@@ -518,7 +510,7 @@ i810Setup(pointer module, pointer opts, int *errmaj, int *errmin)
#endif
I810shadowFBSymbols,
I810vbeSymbols, vbeOptionalSymbols,
- I810ddcSymbols, I810int10Symbols, NULL);
+ I810ddcSymbols, NULL);
/*
* The return value must be non-NULL on success even though there
diff --git a/src/i830.h b/src/i830.h
index 491dfd00..5b782369 100644
--- a/src/i830.h
+++ b/src/i830.h
@@ -56,8 +56,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include "xaa.h"
#include "xf86Cursor.h"
#include "xf86xv.h"
-#include "xf86int10.h"
-#include "vbe.h"
#include "vgaHW.h"
#include "xf86Crtc.h"
#include "xf86RandR12.h"
diff --git a/src/i830_bios.c b/src/i830_bios.c
index 2cb0b07b..726fe30f 100644
--- a/src/i830_bios.c
+++ b/src/i830_bios.c
@@ -47,9 +47,6 @@
(bios[_addr + 2] << 16) \
(bios[_addr + 3] << 24))
-/* XXX */
-#define INTEL_VBIOS_SIZE (64 * 1024)
-
static void *
find_section(struct bdb_header *bdb, int section_id)
{
@@ -180,34 +177,34 @@ i830_bios_init(ScrnInfoPtr pScrn)
struct bdb_header *bdb;
int vbt_off, bdb_off;
unsigned char *bios;
- vbeInfoPtr pVbe;
- pointer pVBEModule = NULL;
+ int ret;
+ int size;
- bios = xalloc(INTEL_VBIOS_SIZE);
+#if XSERVER_LIBPCIACCESS
+ size = pI830->PciInfo->rom_size;
+#else
+#define INTEL_VBIOS_SIZE (64 * 1024) /* XXX */
+ size = INTEL_VBIOS_SIZE;
+#endif
+ if (size == 0)
+ return -1;
+ bios = xalloc(size);
if (bios == NULL)
return -1;
- /* Load vbe module */
- if (!(pVBEModule = xf86LoadSubModule(pScrn, "vbe")))
- return FALSE;
- xf86LoaderReqSymLists(I810vbeSymbols, NULL);
-
- pVbe = VBEInit(NULL, pI830->pEnt->index);
- if (pVbe != NULL) {
- memcpy(bios, xf86int10Addr(pVbe->pInt10,
- pVbe->pInt10->BIOSseg << 4),
- INTEL_VBIOS_SIZE);
- vbeFree (pVbe);
- } else {
#if XSERVER_LIBPCIACCESS
- pci_device_read_rom (pI830->PciInfo, bios);
+ ret = pci_device_read_rom (pI830->PciInfo, bios);
+ if (ret != 0)
+ return -1;
#else
- xf86ReadPciBIOS(0, pI830->PciTag, 0, bios, INTEL_VBIOS_SIZE);
+ /* xf86ReadPciBIOS returns the length read */
+ ret = xf86ReadPciBIOS(0, pI830->PciTag, 0, bios, size);
+ if (ret <= 0)
+ return -1;
#endif
- }
vbt_off = INTEL_BIOS_16(0x1a);
- if (vbt_off >= INTEL_VBIOS_SIZE) {
+ if (vbt_off >= size) {
xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Bad VBT offset: 0x%x\n",
vbt_off);
xfree(bios);
diff --git a/src/i830_driver.c b/src/i830_driver.c
index 53219c39..3a2a9a40 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -191,7 +191,6 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
#include "dixstruct.h"
#include "xf86xv.h"
#include <X11/extensions/Xv.h>
-#include "vbe.h"
#include "shadow.h"
#include "i830.h"
#include "i830_display.h"
@@ -441,9 +440,6 @@ I830DetectMemory(ScrnInfoPtr pScrn)
uint16_t gmch_ctrl;
int memsize = 0, gtt_size;
int range;
-#if 0
- VbeInfoBlock *vbeInfo;
-#endif
#if XSERVER_LIBPCIACCESS
struct pci_device *bridge = intel_host_bridge ();
@@ -1420,11 +1416,6 @@ I830LoadSyms(ScrnInfoPtr pScrn)
if (pI830->use_drm_mode)
return TRUE;
- /* Load int10 module */
- if (!xf86LoadSubModule(pScrn, "int10"))
- return FALSE;
- xf86LoaderReqSymLists(I810int10Symbols, NULL);
-
/* The vgahw module should be loaded here when needed */
if (!xf86LoadSubModule(pScrn, "vgahw"))
return FALSE;
diff --git a/src/i830_modes.c b/src/i830_modes.c
index 06921a50..4aa493ea 100644
--- a/src/i830_modes.c
+++ b/src/i830_modes.c
@@ -31,7 +31,6 @@
* Authors: David Dawes <dawes@xfree86.org>
* Eric Anholt <eric.anholt@intel.com>
*
- * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/vbe/vbeModes.c,v 1.6 2002/11/02 01:38:25 dawes Exp $
*/
/*
* Modified by Alan Hourihane <alanh@tungstengraphics.com>