loader: Remove some commented out code to load modules based on PNP IDs.
authorSascha Wildner <saw@online.de>
Sun, 11 May 2014 12:43:56 +0000 (14:43 +0200)
committerSascha Wildner <saw@online.de>
Sun, 11 May 2014 12:43:56 +0000 (14:43 +0200)
sys/boot/common/pnp.c
sys/boot/common/pnpdata [deleted file]

index d4ee385..a2c4578 100644 (file)
@@ -2,7 +2,6 @@
  * mjs copyright
  *
  * $FreeBSD: src/sys/boot/common/pnp.c,v 1.16 2003/08/25 23:30:41 obrien Exp $
- * $DragonFly: src/sys/boot/common/pnp.c,v 1.4 2008/09/02 17:21:12 dillon Exp $
  */
 
 /*
@@ -81,52 +80,6 @@ pnp_scan(int argc, char *argv[])
     return(CMD_OK);
 }
 
-#if 0
-/*
- * Try to load outstanding modules (eg. after disk change)
- */
-COMMAND_SET(pnpload, "pnpload", "load modules for PnP devices", pnp_load);
-
-static int
-pnp_load(int argc, char *argv[])
-{
-    struct pnpinfo     *pi;
-    char               *modfname;
-       
-    /* find anything? */
-    if (STAILQ_FIRST(&pnp_devices) != NULL) {
-
-       /* check for kernel, assign modules handled by static drivers there */
-       if (pnp_scankernel()) {
-           command_errmsg = "cannot load drivers until kernel loaded";
-           return(CMD_ERROR);
-       }
-       if (fname == NULL) {
-           /* default paths */
-           pnp_readconf("/boot/pnpdata.local");
-           pnp_readconf("/boot/pnpdata");
-       } else {
-           if (pnp_readconf(fname)) {
-               sprintf(command_errbuf, "can't read PnP information from '%s'", fname);
-               return(CMD_ERROR);
-           }
-       }
-
-       /* try to load any modules that have been nominated */
-       STAILQ_FOREACH(pi, &pnp_devices, pi_link) {
-           /* Already loaded? */
-           if ((pi->pi_module != NULL) && (file_findfile(pi->pi_module, NULL) == NULL)) {
-               modfname = malloc(strlen(pi->pi_module) + 4);
-               sprintf(modfname, "%s.ko", pi->pi_module);      /* XXX implicit knowledge of KLD module filenames */
-               if (mod_load(pi->pi_module, pi->pi_argc, pi->pi_argv))
-                   printf("Could not load module '%s' for device '%s'\n", modfname, STAILQ_FIRST(&pi->pi_ident)->id_ident);
-               free(modfname);
-           }
-       }
-    }
-    return(CMD_OK);
-}
-#endif
 /*
  * Throw away anything we think we know about PnP devices.
  */
@@ -141,159 +94,7 @@ pnp_discard(void)
        pnp_freeinfo(pi);
     }
 }
-#if 0
-/*
- * The PnP configuration database consists of a flat text file with 
- * entries one per line.  Valid lines are:
- *
- * # <text>
- *
- *     This line is a comment, and ignored.
- *
- * [<name>]
- *
- *     Entries following this line are for devices connected to the
- *     bus <name>, At least one such entry must be encountered
- *     before identifiers are recognised.
- *
- * ident=<identifier> rev=<revision> module=<module> args=<arguments>
- *
- *     This line describes an identifier:module mapping.  The 'ident'
- *     and 'module' fields are required; the 'rev' field is currently
- *     ignored (but should be used), and the 'args' field must come
- *     last.
- *
- * Comments may be appended to lines; any character including or following
- * '#' on a line is ignored.
- */
-static int
-pnp_readconf(char *path)
-{
-    struct pnpinfo     *pi;
-    struct pnpident    *id;
-    int                        fd, line;
-    char               lbuf[128], *currbus, *ident, *revision, *module, *args;
-    char               *cp, *ep, *tp, c;
-
-    /* try to open the file */
-    if ((fd = rel_open(path, NULL, O_RDONLY)) >= 0) {
-       line = 0;
-       currbus = NULL;
-       
-       while (fgetstr(lbuf, sizeof(lbuf), fd) > 0) {
-           line++;
-           /* Find the first non-space character on the line */
-           for (cp = lbuf; (*cp != 0) && !isspace(*cp); cp++)
-               ;
-           
-           /* keep/discard? */
-           if ((*cp == 0) || (*cp == '#'))
-               continue;
-
-           /* cut trailing comment? */
-           if ((ep = strchr(cp, '#')) != NULL)
-               *ep = 0;
-           
-           /* bus declaration? */
-           if (*cp == '[') {
-               if (((ep = strchr(cp, ']')) == NULL) || ((ep - cp) < 2)) {
-                   printf("%s line %d: bad bus specification\n", path, line);
-               } else {
-                   if (currbus != NULL)
-                       free(currbus);
-                   *ep = 0;
-                   currbus = strdup(cp + 1);
-               }
-               continue;
-           }
-
-           /* XXX should we complain? */
-           if (currbus == NULL)
-               continue;
-
-           /* mapping */
-           for (ident = module = args = revision = NULL; *cp != 0;) {
-
-               /* discard leading whitespace */
-               if (isspace(*cp)) {
-                   cp++;
-                   continue;
-               }
-               
-               /* scan for terminator, separator */
-               for (ep = cp; (*ep != 0) && (*ep != '=') && !isspace(*ep); ep++)
-                   ;
-
-               if (*ep == '=') {
-                   *ep = 0;
-                   for (tp = ep + 1; (*tp != 0) && !isspace(*tp); tp++)
-                       ;
-                   c = *tp;
-                   *tp = 0;
-                   if ((ident == NULL) && !strcmp(cp, "ident")) {
-                       ident = ep + 1;
-                   } else if ((revision == NULL) && !strcmp(cp, "revision")) {
-                       revision = ep + 1;
-                   } else if ((args == NULL) && !strcmp(cp, "args")) {
-                       *tp = c;
-                       while (*tp != 0)                /* skip to end of string */
-                           tp++;
-                       args = ep + 1;
-                   } else {
-                       /* XXX complain? */
-                   }
-                   cp = tp;
-                   continue;
-               }
-               
-               /* it's garbage or a keyword - ignore it for now */
-               cp = ep;
-           }
-
-           /* we must have at least ident and module set to be interesting */
-           if ((ident == NULL) || (module == NULL))
-               continue;
-           
-           /*
-            * Loop looking for module/bus that might match this, but aren't already
-            * assigned.
-            * XXX no revision parse/test here yet.
-            */
-           STAILQ_FOREACH(pi, &pnp_devices, pi_link) {
-
-               /* no driver assigned, bus matches OK */
-               if ((pi->pi_module == NULL) &&
-                   !strcmp(pi->pi_handler->pp_name, currbus)) {
-
-                   /* scan idents, take first match */
-                   STAILQ_FOREACH(id, &pi->pi_ident, id_link)
-                       if (!strcmp(id->id_ident, ident))
-                           break;
-                       
-                   /* find a match? */
-                   if (id != NULL) {
-                       if (args != NULL)
-                           if (parse(&pi->pi_argc, &pi->pi_argv, args)) {
-                               printf("%s line %d: bad arguments\n", path, line);
-                               continue;
-                           }
-                       pi->pi_module = strdup(module);
-                       printf("use module '%s' for %s:%s\n", module, pi->pi_handler->pp_name, id->id_ident);
-                   }
-               }
-           }
-       }
-       close(fd);
-    }
-    return(CMD_OK);
-}
 
-static int
-pnp_scankernel(void)
-{
-    return(CMD_OK);
-}
-#endif
 /*
  * Add a unique identifier to (pi)
  */
diff --git a/sys/boot/common/pnpdata b/sys/boot/common/pnpdata
deleted file mode 100644 (file)
index 4c7da33..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-#
-# $FreeBSD: src/sys/boot/common/pnpdata,v 1.2 1999/08/28 00:39:51 peter Exp $
-#
-# This file contains the system default Plug-and-Play data.  It is
-# derived from a number of sources, including:
-#
-# - The Microsoft "Windows Generic Device IDs" document
-#
-
-[pci]
-######################################################################
-# PCI devices.
-#
-# Required attributes:
-#
-# ident=       PCI identifier in the form 0xDDDDVVVV where
-#              'VVVV' is the 4-digit hex form of the vendor ID and
-#              'DDDD' is the 4-digit hex form of the device ID.
-# or
-#
-# vendor=      0xVVVV where 'VVVV' is above
-# name=                Vendor name
-
-vendor=0x8086 name=Intel
-
-
-[isa]
-######################################################################
-# ISA PnP devices
-#
-# Required attributes:
-#
-# ident=       ISA PnP identifier in the form AAAIIRR where
-#              'AAA' is the EISA vendor ID, 'II' is the device ID
-#              and 'RR' is the revision ID.
-# or
-# 
-# vendor=      AAA to register just a vendor name.
-# name=                Vendor name
-#
-# Optional attributes:
-#
-# module=      Support module identifier.
-#
-# args=                Arguments to pass to the support module.
-#
-
-vendor=CSC name=Crystal Semiconductor
-vendor=CTL name=Creative Labs
-vendor=PNP name=Generic
-
-# From "Windows Generic Device IDs"
-#
-# --Parallel Devices--
-ident=PNP0400 module=lpt            # Standard LPT printer port
-ident=PNP0401 module=lpt            # ECP printer port
-
-# --Serial Devices--
-ident=PNP0500 module=sio            # Standard PC COM port
-ident=PNP0501 module=sio            # 16550A-compatible COM port
-ident=PNP0502 module=sio            # Multiport serial device (non-intelligent 16550)
-
-# --Disk Controllers--
-ident=PNP0600 module=wd             # Generic ESDI/IDE/ATA compatible hard disk controller
-ident=PNP0603 module=wd             # Generic IDE supporting Microsoft Device Bay Specification
-ident=PNP0700 module=fd             # PC standard floppy disk controller
-ident=PNP0701 module=fd             # Standard floppy controller supporting MS Device Bay Spec
-
-# --Peripheral Buses--
-ident=PNP0A00 module=isa            # ISA Bus
-ident=PNP0A01 module=eisa           # EISA Bus
-ident=PNP0A03 module=pci            # PCI Bus
-ident=PNP0A04 module=isa            # VESA/VL Bus
-
-# -- Real Time Clock, BIOS, System board devices--
-ident=PNP0C04 module=npx            # Math Coprocessor
-ident=PNP0C05 module=apm            # APM BIOS (Version independent)
-
-# --PCMCIA Controller Chipsets--
-ident=PNP0E00 module=pcic           # Intel 82365-Compatible PCMCIA Controller
-ident=PNP0E01 module=pcic           # Cirrus Logic CL-PD6720 PCMCIA Controller
-ident=PNP0E02 module=pcic           # VLSI VL82C146 PCMCIA Controller
-ident=PNP0E03 module=pcic           # Intel 82365-compatible CardBus controller
-
-# --Network Adapters--
-ident=PNP8001 module=ed             # Novell/Anthem NE3200
-ident=PNP8004                       # Compaq NE3200
-ident=PNP80d3 module=ed             # Novell/Anthem NE1000
-ident=PNP80d4 module=ed             # Novell/Anthem NE2000
-ident=PNP80d5 module=ed             # NE1000 Compatible
-ident=PNP80d6 module=ed             # NE2000 Compatible
-ident=PNP80d8 module=lnc            # Novell/Anthem NE2100
-ident=PNP80f1 module=eg             # 3Com EtherLink Plus
-ident=PNP80f3 module=ed             # 3Com EtherLink II or IITP (8 or 16-bit)
-ident=PNP80f6 module=ed             # 3Com EtherLink 16
-ident=PNP80f7 module=ep             # 3Com EtherLink III
-ident=PNP80f8 module=ep             # 3Com Generic Etherlink Plug and Play Device
-ident=PNP8123 module=ed             # SMC StarCard PLUS (WD/8003S)
-ident=PNP8124 module=ed             # SMC StarCard PLUS With On Board Hub (WD/8003SH)
-ident=PNP8125 module=ed             # SMC EtherCard PLUS (WD/8003E)
-ident=PNP8126 module=ed             # SMC EtherCard PLUS With Boot ROM Socket (WD/8003EBT)
-ident=PNP8127 module=ed             # SMC EtherCard PLUS With Boot ROM Socket (WD/8003EB)
-ident=PNP8128 module=ed             # SMC EtherCard PLUS TP (WD/8003WT)
-ident=PNP812a module=ed             # SMC EtherCard PLUS 16 With Boot ROM Socket (WD/8013EBT)
-ident=PNP8137 module=ed             # Artisoft AE-1
-ident=PNP8138 module=ed             # Artisoft AE-2 or AE-3
-ident=PNP8158 module=ed             # HP PC LAN Adapter/16 TP Plus (HP27247B)
-ident=PNP8159 module=ed             # HP PC LAN Adapter/16 TL Plus (HP27252)
-ident=PNP81c3 module=ed             # SMC EtherCard PLUS Elite (WD/8003EP)
-ident=PNP81c4 module=ed             # SMC EtherCard PLUS 10T (WD/8003W)
-ident=PNP81c5 module=ed             # SMC EtherCard PLUS Elite 16 (WD/8013EP)
-ident=PNP81c6 module=ed             # SMC EtherCard PLUS Elite 16T (WD/8013W)
-ident=PNP81c7 module=ed             # SMC EtherCard PLUS Elite 16 Combo (WD/8013EW or 8013EWC)
-ident=PNP81c8 module=ed             # SMC EtherElite Ultra 16
-ident=PNP820a module=ed             # Zenith Data Systems NE2000-Compatible
-ident=PNP8231 module=lnc            # Advanced Micro Devices AM2100/AM1500T
-ident=PNP828C module=lnc            # AMD PCNet Family cards
-ident=PNP828D module=lnc            # AMD PCNet32 (VL version)
-ident=PNP8323 module=ed             # SMC EtherCard (All Types except 8013/A)
-ident=PNP8390 module=ed             # Generic network adapter
-
-# --Sound/Video-capture, multimedia--
-ident=PNPB000 module=pcm            # Sound Blaster 1.5 sound device
-ident=PNPB001 module=pcm            # Sound Blaster 2.0 sound device
-ident=PNPB002 module=pcm            # Sound Blaster Pro sound device
-ident=PNPB003 module=pcm            # Sound Blaster 16 sound device
-ident=PNPB007 module=pcm            # Microsoft Windows Sound System-compatible sound device
-ident=PNPB009 module=pcm            # Plug and Play Microsoft Windows Sound System Device
-ident=PNPB020 module=pcm            # Yamaha OPL3-compatible FM synthesizer device
-ident=PNPB02F module=joy            # Joystick/Game port
-
-# --Compatibility with early device ID list--
-ident=PNP0802 module=pcm            # Microsoft Sound System compatible device (obsolete, use PNPB0xx instead)
-
-# --Modems--
-ident=PNPC000 module=sio            # Compaq 14400 Modem (TBD)
-ident=PNPC001 module=sio            # Compaq 2400/9600 Modem (TBD)
-
-# Vendor supplied IDs.
-
-# --Parallel Devices--
-
-# --Serial Devices--
-
-# --Disk Controllers--
-
-# --Peripheral Buses--
-
-# --Real Time Clock, BIOS, System board devices--
-
-# --PCMCIA Controller Chipsets--
-
-# --Network Adapters--
-ident=CSC6040 module=cs             # Crystal Semiconductor CS8920
-
-# --SCSI, Proprietary CD Adapters--
-
-# --Sound/Video-capture, multimedia--
-
-# --Modems--
-
-
-
-[com]
-######################################################################
-# COM PnP devices
-#
-
-[lpt]
-######################################################################
-# LPT PnP devices
-#