From aecab27aeabaa897d69fc082686df314329830de Mon Sep 17 00:00:00 2001
From: Dominik Brodowski <linux@dominikbrodowski.net>
Date: Mon, 27 Jun 2005 16:28:56 -0700
Subject: [PATCH] [PATCH] pcmcia: mod_devicetable.h fix for different sizes in
 kernel- and userspace

The size of pointers may differ between (userspace) modpost and (kernelspace)
modules -- so fix mod_devicetable.h to reflect this possibility.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
---
 include/linux/mod_devicetable.h | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/include/linux/mod_devicetable.h b/include/linux/mod_devicetable.h
index 8a8dc82a941d..9b6d05172ed4 100644
--- a/include/linux/mod_devicetable.h
+++ b/include/linux/mod_devicetable.h
@@ -191,12 +191,22 @@ struct pcmcia_device_id {
 	/* for pseude multi-function devices */
 	__u8  		device_no;
 
-	const char *	prod_id[4];
 	__u32 		prod_id_hash[4];
 
+	/* not matched against in kernelspace*/
+#ifdef __KERNEL__
+	const char *	prod_id[4];
+#else
+	kernel_ulong_t	prod_id[4];
+#endif
+
 	/* not matched against */
 	kernel_ulong_t	driver_info;
+#ifdef __KERNEL__
 	char *		cisfile;
+#else
+	kernel_ulong_t	cisfile;
+#endif
 };
 
 #define PCMCIA_DEV_ID_MATCH_MANF_ID	0x0001