mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-28 22:57:37 +00:00
86 lines
2.7 KiB
Diff
86 lines
2.7 KiB
Diff
--- hpoj-0.91/scripts/ptal-init.in.kernel26 2004-03-03 17:30:47.000000000 +0000
|
|
+++ hpoj-0.91/scripts/ptal-init.in 2004-03-03 17:30:59.000000000 +0000
|
|
@@ -90,6 +90,11 @@
|
|
my $varLock="/var/lock";
|
|
my $varLockSubsys="$varLock/subsys";
|
|
my $osPlatform=`uname -s 2>/dev/null`;
|
|
+chomp $osPlatform;
|
|
+my $linuxVersion=($osPlatform eq 'Linux' ? `uname -r 2>/dev/null` : '');
|
|
+$linuxVersion=~s/^(\s*)(\d+\.\d+)(\..*)$/$2/;
|
|
+chomp $linuxVersion;
|
|
+my $usbprintermodule = ($linuxVersion eq '2.6' ? "usblp" : "printer");
|
|
my %devnames;
|
|
my %obsoleteDevnames;
|
|
my %configInfo;
|
|
@@ -1222,12 +1227,12 @@
|
|
# undef -- skip USB probe
|
|
# 0 -- do nothing, proceed with USB probe
|
|
# >0 -- load printer.o
|
|
-# <0 -- disable and unload printer.o
|
|
+# <0 -- disable and unload printer.o/usblp.o
|
|
sub linuxWhatShouldWeDoAboutUsbPrinterModule {
|
|
my $isSmp=&linuxIsSmp;
|
|
my $libusbSupported=&ptalMlcdSupportsLibusb;
|
|
my $usblpIsLoaded=&linuxUsblpIsLoaded;
|
|
- my $printerIsLoaded=&linuxModuleIsLoaded("printer");
|
|
+ my $printerIsLoaded=&linuxModuleIsLoaded($usbprintermodule);
|
|
|
|
# non-SMP:
|
|
if (!$isSmp) {
|
|
@@ -1261,9 +1266,10 @@
|
|
}
|
|
goto allowInsmodPrinter;
|
|
|
|
- # SMP, libusb support, some sort of printer.c functionality loaded:
|
|
+ # SMP, libusb support, some sort of printer.c/usblp.c
|
|
+ # functionality loaded:
|
|
} elsif ($usblpIsLoaded) {
|
|
- # printer.c compiled into the kernel:
|
|
+ # printer.c/usblp.c compiled into the kernel:
|
|
if (!$printerIsLoaded) {
|
|
if (!&askYN(
|
|
"\n".
|
|
@@ -1280,7 +1286,7 @@
|
|
return undef;
|
|
}
|
|
|
|
- # printer.c compiled and loaded as a module:
|
|
+ # printer.c/usblp.c compiled and loaded as a module:
|
|
} else {
|
|
promptDisableRmmodPrinter:
|
|
my $r=&askYN(
|
|
@@ -1301,8 +1307,9 @@
|
|
}
|
|
}
|
|
|
|
- # SMP, libusb support, printer.c enabled although not loaded:
|
|
- } elsif (!&linuxModuleIsDisabled("printer")) {
|
|
+ # SMP, libusb support, printer.c/usblp.c enabled although not
|
|
+ # loaded:
|
|
+ } elsif (!&linuxModuleIsDisabled($usbprintermodule)) {
|
|
goto promptDisableRmmodPrinter;
|
|
}
|
|
|
|
@@ -1326,11 +1333,11 @@
|
|
return 1;
|
|
}
|
|
if ($r<0) {
|
|
- $r=&linuxDisableAndUnloadModule("printer",
|
|
+ $r=&linuxDisableAndUnloadModule($usbprintermodule,
|
|
"to prevent possible system instability due to SMP+USB");
|
|
} else {
|
|
linuxJustLoad:
|
|
- $r=&linuxInsmod("printer",$quiet);
|
|
+ $r=&linuxInsmod($usbprintermodule,$quiet);
|
|
}
|
|
if (!$r && !$quiet &&
|
|
&askYN("\n*** Continue with the USB probe anyway".$msg,0)) {
|
|
@@ -1601,7 +1608,7 @@
|
|
|
|
} else {
|
|
my $parModulesLoaded=0;
|
|
- # Don't "modprobe printer" on SMP Linux with libusb support:
|
|
+ # Don't "modprobe printer/usblp" on SMP Linux with libusb support:
|
|
my $usbModulesLoaded=
|
|
(&ptalMlcdSupportsLibusb &&
|
|
$osPlatform=~/Linux/ && &linuxIsSmp);
|