aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDominik Brodowski <linux@dominikbrodowski.de>2005-01-11 03:28:37 -0800
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-01-11 03:28:37 -0800
commit1b55e603e08a16ed866a91433fc1b44eb9a1e16d (patch)
tree88e95a7f37f3c7a8b1cd1955080e0f2b3ecb353c /drivers
parent1b71fababfefb7b4477826789eaaad961e423b06 (diff)
downloadhistory-1b55e603e08a16ed866a91433fc1b44eb9a1e16d.tar.gz
[PATCH] pcmcia: find_mem_region only for non-statically mapped sockets
Calls to adjust_mem_region only happen if !SS_CAP_STATIC_MAP. Signed-off-by: Dominik Brodowski <linux@brodo.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/pcmcia/rsrc_mgr.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/pcmcia/rsrc_mgr.c b/drivers/pcmcia/rsrc_mgr.c
index de488824dbe654..ea52d03e9f4bec 100644
--- a/drivers/pcmcia/rsrc_mgr.c
+++ b/drivers/pcmcia/rsrc_mgr.c
@@ -638,7 +638,7 @@ struct resource *nonstatic_find_io_region(unsigned long base, int num,
return res;
}
-struct resource *find_mem_region(u_long base, u_long num, u_long align,
+struct resource * nonstatic_find_mem_region(u_long base, u_long num, u_long align,
int low, struct pcmcia_socket *s)
{
struct resource *res = make_resource(0, num, IORESOURCE_MEM, s->dev.class_id);
@@ -1005,15 +1005,25 @@ struct resource *find_io_region(unsigned long base, int num,
return NULL;
}
+struct resource *find_mem_region(u_long base, u_long num, u_long align,
+ int low, struct pcmcia_socket *s)
+{
+ if (s->resource_ops->find_mem)
+ return s->resource_ops->find_mem(base, num, align, low, s);
+ return NULL;
+}
+
struct pccard_resource_ops pccard_static_ops = {
.validate_mem = NULL,
.adjust_io_region = NULL,
.find_io = NULL,
+ .find_mem = NULL,
};
struct pccard_resource_ops pccard_nonstatic_ops = {
.validate_mem = pcmcia_nonstatic_validate_mem,
.adjust_io_region = nonstatic_adjust_io_region,
.find_io = nonstatic_find_io_region,
+ .find_mem = nonstatic_find_mem_region,
};