]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/mtd/chips/gen_probe.c
Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
[linux-2.6-omap-h63xx.git] / drivers / mtd / chips / gen_probe.c
index b2d30525c04cc36f8cc1da81b7c9b83d38635cbb..cdb0f590b40c117ba246f23e2351528608476df2 100644 (file)
@@ -39,7 +39,7 @@ struct mtd_info *mtd_do_chip_probe(struct map_info *map, struct chip_probe *cp)
 
        if (mtd) {
                if (mtd->size > map->size) {
-                       printk(KERN_WARNING "Reducing visibility of %lKiB chip to %lKiB\n",
+                       printk(KERN_WARNING "Reducing visibility of %ldKiB chip to %ldKiB\n",
                               (unsigned long)mtd->size >> 10, 
                               (unsigned long)map->size >> 10);
                        mtd->size = map->size;
@@ -207,15 +207,15 @@ static inline struct mtd_info *cfi_cmdset_unknown(struct map_info *map,
        struct cfi_private *cfi = map->fldrv_priv;
        __u16 type = primary?cfi->cfiq->P_ID:cfi->cfiq->A_ID;
 #ifdef CONFIG_MODULES
-       char probename[32];
+       char probename[16+sizeof(MODULE_SYMBOL_PREFIX)];
        cfi_cmdset_fn_t *probe_function;
 
-       sprintf(probename, "cfi_cmdset_%4.4X", type);
+       sprintf(probename, MODULE_SYMBOL_PREFIX "cfi_cmdset_%4.4X", type);
 
-       probe_function = (void *)symbol_get(probename);
+       probe_function = __symbol_get(probename);
        if (!probe_function) {
-               request_module(probename);
-               probe_function = (void *)symbol_get(probename);
+               request_module(probename + sizeof(MODULE_SYMBOL_PREFIX) - 1);
+               probe_function = __symbol_get(probename);
        }
 
        if (probe_function) {