[PATCH] pcmcia: validate_mem fix
authorAndrew Morton <akpm@osdl.org>
Thu, 17 Nov 2005 05:29:26 +0000 (21:29 -0800)
committerDominik Brodowski <linux@dominikbrodowski.net>
Thu, 5 Jan 2006 22:41:19 +0000 (23:41 +0100)
Also return a value if CONFIG_PCMCIA_PROBE is not set.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
drivers/pcmcia/rsrc_nonstatic.c

index ebfcab5df9ea02e1dc9253fdc74b4af438adf2a0..6b18092205b1d94deca1d861f5f4c5a426d4fee1 100644 (file)
@@ -467,15 +467,19 @@ static int validate_mem(struct pcmcia_socket *s, unsigned int probe_mask)
 
 #else /* CONFIG_PCMCIA_PROBE */
 
-static void validate_mem(struct pcmcia_socket *s, unsigned int probe_mask)
+static int validate_mem(struct pcmcia_socket *s, unsigned int probe_mask)
 {
        struct resource_map *m, mm;
        struct socket_data *s_data = s->resource_data;
+       unsigned long ok = 0;
 
        for (m = s_data->mem_db.next; m != &s_data->mem_db; m = mm.next) {
                mm = *m;
-               do_mem_probe(mm.base, mm.num, s);
+               ok += do_mem_probe(mm.base, mm.num, s);
        }
+       if (ok > 0)
+               return 0;
+       return -ENODEV;
 }
 
 #endif /* CONFIG_PCMCIA_PROBE */