summaryrefslogtreecommitdiffstats
path: root/loader/loader.c
diff options
context:
space:
mode:
authorMike Fulbright <msf@redhat.com>2000-07-18 16:42:42 +0000
committerMike Fulbright <msf@redhat.com>2000-07-18 16:42:42 +0000
commitb15255ef412244b703d73ecfecb01b705dac27bb (patch)
treec7bb4d5fd1a30fe3b1090873c25d05bbcfe00fc9 /loader/loader.c
parent11001763d42ac2d69b83b9e1423bdf1e570ce023 (diff)
downloadanaconda-b15255ef412244b703d73ecfecb01b705dac27bb.tar.gz
anaconda-b15255ef412244b703d73ecfecb01b705dac27bb.tar.xz
anaconda-b15255ef412244b703d73ecfecb01b705dac27bb.zip
i810 support attempt, needs work to work
Diffstat (limited to 'loader/loader.c')
-rw-r--r--loader/loader.c53
1 files changed, 53 insertions, 0 deletions
diff --git a/loader/loader.c b/loader/loader.c
index 93b0c22ff..da8409fc9 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -2209,6 +2209,51 @@ static void usbInitializeMouse(moduleList modLoaded, moduleDeps modDeps,
flags);
}
+
+static int agpgartInitialize(moduleList modLoaded, moduleDeps modDeps,
+ moduleInfoSet modInfo, int flags) {
+ struct device ** devices, *p;
+ int i;
+
+ if (FL_TESTING(flags)) return 0;
+
+ logMessage("looking for video cards requiring agpgart module");
+
+ devices = probeDevices(CLASS_VIDEO, BUS_UNSPEC, PROBE_ALL);
+
+ if (!devices) {
+ logMessage("no video cards found");
+ return 0;
+ }
+
+ /* loop thru cards, see if we need agpgart */
+/* for (p = devices[0]; p; p++) {*/
+ for (i=0; devices[i]; i++) {
+ p = devices[i];
+ logMessage("found video card controller %s", p->driver);
+
+ /* HACK - need to have list of cards which match!! */
+#if 0
+ if (!strcmp(p->driver, "Card:Intel 810")) {
+ logMessage("found i810 card requiring agpgart, loading module");
+
+ if (mlLoadModule("agpgart", NULL, modLoaded, modDeps, NULL,
+ modInfo, flags)) {
+ logMessage("failed to insert agpgart module");
+ return 1;
+ } else {
+ /* only load it once! */
+ return 0;
+ }
+
+ }
+#endif
+ }
+
+ return 0;
+}
+
+
int main(int argc, char ** argv) {
char ** argptr;
char * anacondaArgs[40];
@@ -2318,6 +2363,14 @@ int main(int argc, char ** argv) {
a system w/o USB keyboard support, which would be bad. */
usbInitialize(modLoaded, modDeps, modInfo, flags);
+ printf("1\n"); sleep(2);
+
+
+ /* We must look for cards which require the agpgart module */
+ agpgartInitialize(modLoaded, modDeps, modInfo, flags);
+
+ printf("2\n"); sleep(2);
+
if (FL_KSFLOPPY(flags)) {
startNewt(flags);
ksFile = "/tmp/ks.cfg";