Linux Headquarters
[ Register ]
[ About us ] [ Home Page ]

Advertisement
[ Kernel ] [ Documentation ] [ Links ] [ Books ]

Advertisement

Kernel v2.4.1 /drivers/pnp/isapnp_proc.c

Filename:/drivers/pnp/isapnp_proc.c
Lines Added:12
Lines Deleted:5
Also changed in: (Previous) 2.4.1-pre12  2.4.1-pre11  2.4.1-pre10  2.4.1-pre9  2.4.0-ac12  2.4.0-ac11 
(Following) 2.4.19-rc1-ac7  2.4.19-rc2-ac1  2.4.19-rc2-ac2  2.4.19-rc3-ac1  2.4.19-rc3-ac2  2.4.19-rc3-ac3 

Location
[  2.4.1
  [  drivers
    [  pnp
       o  isapnp_proc.c

Patch

diff -u --recursive --new-file v2.4.0/linux/drivers/pnp/isapnp_proc.c linux/drivers/pnp/isapnp_proc.c
--- v2.4.0/linux/drivers/pnp/isapnp_proc.c   Wed Jul 12 21:58:43 2000
+++ linux/drivers/pnp/isapnp_proc.c   Wed Jan 17 13:29:14 2001
@@ -783,7 +783,10 @@
    unsigned int id;
    char index[16], value[32];
 
-   isapnp_info_card = NULL;
+   if (isapnp_info_card) {
+      isapnp_cfg_end();
+      isapnp_info_card = NULL;
+   }
    line = isapnp_get_str(index, line, sizeof(index));
    isapnp_get_str(value, line, sizeof(value));
    idx = idx1 = simple_strtoul(index, NULL, 0);
@@ -853,10 +856,7 @@
 
 static int isapnp_autoconfigure(void)
 {
-   if (isapnp_info_device == NULL) {
-      printk("isapnp: device is not set\n");
-      return 0;
-   }
+   isapnp_cfg_end();
    if (isapnp_info_device->active)
       isapnp_info_device->deactivate(isapnp_info_device);
    if (isapnp_info_device->prepare(isapnp_info_device) < 0) {
@@ -867,6 +867,13 @@
       printk("isapnp: cannot activate device");
       return 0;
    }
+   if (isapnp_cfg_begin(isapnp_info_card->number, -1)<0) {
+      printk("isapnp: configuration start sequence for card %d failed\n", isapnp_info_card->number);
+      isapnp_info_card = NULL;
+      isapnp_info_device = NULL;
+      return 1;
+   }
+   isapnp_device(isapnp_info_device->devfn);
    return 0;
 }
 


Comments: webmaster (at) linuxhq.com.
Advertising: banners (at) linuxhq.com.
Compilation ©1998-2008 Linux Headquarters, Inc.