]> err.no Git - linux-2.6/commitdiff
[PATCH] pcmcia: size reduction if ioctl isn't compiled
authorDominik Brodowski <linux@dominikbrodowski.net>
Sun, 15 Jan 2006 00:14:31 +0000 (01:14 +0100)
committerDominik Brodowski <linux@dominikbrodowski.net>
Fri, 31 Mar 2006 15:02:39 +0000 (17:02 +0200)
If the kernel is configured to not include the deprecated PCMCIA ioctl,
some code doesn't need to be built.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
drivers/pcmcia/ds.c
drivers/pcmcia/ds_internal.h
drivers/pcmcia/rsrc_mgr.c
include/pcmcia/ds.h

index 4d11b35d4c3722934efd51a42138f064a7ca75bd..211aa84353fc9451502ab5de4a5be5d6fe278f38 100644 (file)
@@ -835,9 +835,11 @@ static int pcmcia_bus_match(struct device * dev, struct device_driver * drv) {
        struct pcmcia_driver * p_drv = to_pcmcia_drv(drv);
        struct pcmcia_device_id *did = p_drv->id_table;
 
+#ifdef CONFIG_PCMCIA_IOCTL
        /* matching by cardmgr */
        if (p_dev->cardmgr == p_drv)
                return 1;
+#endif
 
        while (did && did->match_flags) {
                if (pcmcia_devmatch(p_dev, did))
index d359bd25a51cae5992925d3c04074abac6c7dd48..783d8617a05cf3277ce6bfc98dd46cbeaf50ad45 100644 (file)
@@ -15,7 +15,7 @@ extern void handle_event(struct pcmcia_socket *s, event_t event);
 extern int handle_request(struct pcmcia_socket *s, event_t event);
 #else
 static inline void __init pcmcia_setup_ioctl(void) { return; }
-static inline void __init pcmcia_cleanup_ioctl(void) { return; }
+static inline void __exit pcmcia_cleanup_ioctl(void) { return; }
 static inline void handle_event(struct pcmcia_socket *s, event_t event) { return; }
 static inline int handle_request(struct pcmcia_socket *s, event_t event) { return CS_SUCCESS; }
 #endif
index e5a33121de77b9dca1a3e369243f6211fe926092..81dfc2cac2b4f722bd84e9cf121695ad23083099 100644 (file)
@@ -21,6 +21,8 @@
 #include "cs_internal.h"
 
 
+#ifdef CONFIG_PCMCIA_IOCTL
+
 #ifdef CONFIG_PCMCIA_PROBE
 
 static int adjust_irq(struct pcmcia_socket *s, adjust_t *adj)
@@ -97,6 +99,8 @@ int pcmcia_adjust_resource_info(adjust_t *adj)
 }
 EXPORT_SYMBOL(pcmcia_adjust_resource_info);
 
+#endif
+
 int pcmcia_validate_mem(struct pcmcia_socket *s)
 {
        if (s->resource_ops->validate_mem)
index 8512cf9a12168815b955e0a7aad1702f312b58fc..ce76ab587df64e788c379f0507540af3bcff417a 100644 (file)
@@ -183,10 +183,12 @@ struct pcmcia_device {
 
        char *                  prod_id[4];
 
+       struct device           dev;
+
+#ifdef CONFIG_PCMCIA_IOCTL
        /* device driver wanted by cardmgr */
        struct pcmcia_driver *  cardmgr;
-
-       struct device           dev;
+#endif
 };
 
 #define to_pcmcia_dev(n) container_of(n, struct pcmcia_device, dev)