summaryrefslogtreecommitdiffstats
path: root/loader2/hardware.c
diff options
context:
space:
mode:
Diffstat (limited to 'loader2/hardware.c')
-rw-r--r--loader2/hardware.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/loader2/hardware.c b/loader2/hardware.c
index ce1f811b4..2f3d879ce 100644
--- a/loader2/hardware.c
+++ b/loader2/hardware.c
@@ -134,6 +134,34 @@ int agpgartInitialize(moduleList modLoaded, moduleDeps modDeps,
return 0;
}
+int scsiTapeInitialize(moduleList modLoaded, moduleDeps modDeps,
+ moduleInfoSet modInfo, int flags) {
+ struct device ** devices;
+
+ if (FL_TESTING(flags)) return 0;
+
+ logMessage("looking for scsi tape devices");
+
+ devices = probeDevices(CLASS_TAPE, BUS_SCSI, PROBE_ALL);
+
+ if (!devices) {
+ logMessage("no scsi tape devices found");
+ return 0;
+ }
+
+ logMessage("scsi tape device(s) found, loading st.o");
+
+ if (mlLoadModuleSetLocation("st", modLoaded, modDeps,
+ modInfo, flags,
+ secondStageModuleLocation)) {
+ logMessage("failed to insert st module");
+ return 1;
+ }
+
+ return 0;
+}
+
+
/* This loads the necessary parallel port drivers for printers so that
kudzu can autodetect and setup printers in post install*/
void initializeParallelPort(moduleList modLoaded, moduleDeps modDeps,