On Fri, 1 Oct 1999, Daniel Eischen wrote:

> Soren Schmidt wrote:
> > It seems Daniel M. Eischen wrote:
> > > 
> > > More info on the kernel hang.
> > > 
> > > Removing pnp from the kernel configuration will allow me to boot
> > > and successfully detects my pnp modem.  So the culprit seems to
> > > be the new pnp code.  Suggestions welcome.
> > 
> > Hmm, I also have severe problems with the PnP stuff and my 3C509
> > cards, it just wont work as the pnp code finds and allocates
> > adresses for the card, but the card probe doesn't pick them up...
> 
> Here, it might be the opposite.  The normal sio probes pick up the
> pnp modem just fine, and then perhaps pnp comes along and trounces
> on what has already been setup/configured.

Could you try this patch for me. It attempts to disable pnp devices before
running the regular probes. This allows it to 'hide' those devices from
the heuristic probes so that they don't get seen twice when the pnp probe
happens.

Index: isa_common.c
===================================================================
RCS file: /home/ncvs/src/sys/isa/isa_common.c,v
retrieving revision 1.9
diff -u -r1.9 isa_common.c
--- isa_common.c        1999/09/07 08:42:47     1.9
+++ isa_common.c        1999/09/25 17:11:59
@@ -435,7 +435,21 @@
                return;
 
        /*
-        * First probe all non-pnp devices so that they claim their
+        * First disable all pnp devices so that they don't get
+        * matched by legacy probes.
+        */
+       for (i = 0; i < nchildren; i++) {
+               device_t child = children[i];
+               struct isa_device *idev = DEVTOISA(child);
+               struct isa_config config;
+
+               bzero(&config, sizeof config);
+               if (idev->id_config_cb)
+                       idev->id_config_cb(idev->id_config_arg, &config, 0);
+       }
+
+       /*
+        * Next probe all non-pnp devices so that they claim their
         * resources first.
         */
        for (i = 0; i < nchildren; i++) {
@@ -449,7 +463,7 @@
        }
 
        /*
-        * Next assign resource to pnp devices and probe them.
+        * Finally assign resource to pnp devices and probe them.
         */
        for (i = 0; i < nchildren; i++) {
                device_t child = children[i];

--
Doug Rabson                             Mail:  [EMAIL PROTECTED]
Nonlinear Systems Ltd.                  Phone: +44 181 442 9037




To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to