diff options
author | Andrew Morton <akpm@osdl.org> | 2005-11-17 00:29:26 -0500 |
---|---|---|
committer | Dominik Brodowski <linux@dominikbrodowski.net> | 2006-01-05 17:41:19 -0500 |
commit | 2cff944720332535a24b7eae16cff32055a43048 (patch) | |
tree | 02758aa2ac6f9cece083fc216576042c05789ede /drivers/pcmcia/rsrc_nonstatic.c | |
parent | de75914ee103a30d82ad21b39b7e04f70e4fa1f0 (diff) |
[PATCH] pcmcia: validate_mem fix
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>
Diffstat (limited to 'drivers/pcmcia/rsrc_nonstatic.c')
-rw-r--r-- | drivers/pcmcia/rsrc_nonstatic.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/pcmcia/rsrc_nonstatic.c b/drivers/pcmcia/rsrc_nonstatic.c index ebfcab5df9ea..6b18092205b1 100644 --- a/drivers/pcmcia/rsrc_nonstatic.c +++ b/drivers/pcmcia/rsrc_nonstatic.c | |||
@@ -467,15 +467,19 @@ static int validate_mem(struct pcmcia_socket *s, unsigned int probe_mask) | |||
467 | 467 | ||
468 | #else /* CONFIG_PCMCIA_PROBE */ | 468 | #else /* CONFIG_PCMCIA_PROBE */ |
469 | 469 | ||
470 | static void validate_mem(struct pcmcia_socket *s, unsigned int probe_mask) | 470 | static int validate_mem(struct pcmcia_socket *s, unsigned int probe_mask) |
471 | { | 471 | { |
472 | struct resource_map *m, mm; | 472 | struct resource_map *m, mm; |
473 | struct socket_data *s_data = s->resource_data; | 473 | struct socket_data *s_data = s->resource_data; |
474 | unsigned long ok = 0; | ||
474 | 475 | ||
475 | for (m = s_data->mem_db.next; m != &s_data->mem_db; m = mm.next) { | 476 | for (m = s_data->mem_db.next; m != &s_data->mem_db; m = mm.next) { |
476 | mm = *m; | 477 | mm = *m; |
477 | do_mem_probe(mm.base, mm.num, s); | 478 | ok += do_mem_probe(mm.base, mm.num, s); |
478 | } | 479 | } |
480 | if (ok > 0) | ||
481 | return 0; | ||
482 | return -ENODEV; | ||
479 | } | 483 | } |
480 | 484 | ||
481 | #endif /* CONFIG_PCMCIA_PROBE */ | 485 | #endif /* CONFIG_PCMCIA_PROBE */ |