Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / drivers / mtd / maps / pci.c
index 08b60bd..d2ab1ba 100644 (file)
@@ -7,8 +7,8 @@
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  *
- *  $Id: pci.c,v 1.9 2004/11/28 09:40:40 dwmw2 Exp $
- * 
+ *  $Id: pci.c,v 1.14 2005/11/17 08:20:27 dwmw2 Exp $
+ *
  * Generic PCI memory map driver.  We support the following boards:
  *  - Intel IQ80310 ATU.
  *  - Intel EBSA285 (blank rom programming mode). Tested working 27/09/2001
@@ -17,6 +17,7 @@
 #include <linux/kernel.h>
 #include <linux/pci.h>
 #include <linux/init.h>
+#include <linux/slab.h>
 
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/map.h>
@@ -37,7 +38,7 @@ struct map_pci_info {
        void (*exit)(struct pci_dev *dev, struct map_pci_info *map);
        unsigned long (*translate)(struct map_pci_info *map, unsigned long ofs);
        struct pci_dev *dev;
-};     
+};
 
 static map_word mtd_pci_read8(struct map_info *_map, unsigned long ofs)
 {
@@ -101,7 +102,7 @@ static void mtd_pci_copyto(struct map_info *_map, unsigned long to, const void *
        memcpy_toio(map->base + map->translate(map, to), from, len);
 }
 
-static struct map_info mtd_pci_map = {
+static const struct map_info mtd_pci_map = {
        .phys =         NO_XIP,
        .copy_from =    mtd_pci_copyfrom,
        .copy_to =      mtd_pci_copyto,
@@ -333,9 +334,6 @@ mtd_pci_probe(struct pci_dev *dev, const struct pci_device_id *id)
        return 0;
 
 release:
-       if (mtd)
-               map_destroy(mtd);
-
        if (map) {
                map->exit(dev, map);
                kfree(map);
@@ -370,7 +368,7 @@ static struct pci_driver mtd_pci_driver = {
 
 static int __init mtd_pci_maps_init(void)
 {
-       return pci_module_init(&mtd_pci_driver);
+       return pci_register_driver(&mtd_pci_driver);
 }
 
 static void __exit mtd_pci_maps_exit(void)