Ο καλύτερος τρόπος για να έχετε τα PLIP και LP μαζί είναι με τη χρήση modules: μπορείτε να φορτώσετε το plip.o και να το ξεφορτώσετε όταν θέλετε να τυπώσετε και αντίστροφα. Εάν θέλετε να χρησιμοποιήσετε τα PLIP και LP ταυτόχρονο, δοκιμάστε τις παρακάτω προσθήκες.
Εάν για κάποιο λόγο θέλετε τα PLIP και LP να υποστηρίζονται απευθείας από τον πυρήνα, μπορείτε να δοκιμάσετε τις παρακάτω προσθήκες.
Πρέπει να πειράξετε τον παρακάτω κώδικα, αλλά κρατήστε αντίγραφα των αρχείων που θα αλλάξετε:
******** modifications to linux/drivers/char/lp.c *********************** struct lp_struct lp_table[] = { { 0x3bc, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, }, /* { 0x378, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, }, { 0x278, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, }, */ }; #define LP_NO 1 ******** modifications to linux/drivers/net/Space.c ******************** #if defined(PLIP) || defined(CONFIG_PLIP) extern int plip_init(struct device *); static struct device plip2_dev = { "plip2", 0, 0, 0, 0, 0x278, 2, 0, 0, 0, NEXT_DEV, plip_init, }; static struct device plip1_dev = { "plip1", 0, 0, 0, 0, 0x378, 7, 0, 0, 0, &plip2_dev, plip_init, }; /* static struct device plip0_dev = { "plip0", 0, 0, 0, 0, 0x3BC, 5, 0, 0, 0, &plip1_dev, plip_init, }; */ # undef NEXT_DEV # define NEXT_DEV (&plip1_dev) #endif /* PLIP */
Φυσικά υπάρχει και η συνηθισμένη αποκύρηξη ευθυνών: έλαβα τις παραπάνω προσθήκες και τις παρουσιάζω "όπως τις πήρα". Αυτό σημαίνει ότι τις δοκιμάζετε με δικής σας ευθύνη. Όπως και να έχει, το μόνο πρόβλημα θα είναι η απλή επαναφορά των αρχείων και η μεταγλώττιση.
Εάν έχετε τουλάχιστον 2 παράλληλες θύρες μπορείτε να δοκιμάσετε αυτές τις προσθήκες που επιτρέπουν την χρήση του PLIP σε μια θύρα και του LP σε άλλη.
struct lp_struct lp_table[] = { { 0x3bc, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, }, { 0x378, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, }, /* { 0x278, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, }, */ }; 3 -> 2
PLIP (parallel port) support (CONFIG_PLIP) [n] y
Parallel Printer support [y] y
lp1 at 0x0378, using polling driver
.....
NET3 PLIP version 2.0 gniibe@mri.co.jp
plip2: Parallel port at 0x278, using assigned IRQ 5.
Ξανά αποκύρηξη ευθυνών όπως στο τμήμα 8.1.