summaryrefslogtreecommitdiffstats
path: root/drivers/pcmcia/pcmcia_ioctl.c
diff options
context:
space:
mode:
authorDominik Brodowski <linux@dominikbrodowski.net>2005-06-28 01:28:54 +0200
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-28 03:03:20 +0200
commit3448139b41b9e3b8799eed7d427cd50789dadc3e (patch)
tree9c6c2938220fb6826de49f7bf1b7fe3ecdc801ad /drivers/pcmcia/pcmcia_ioctl.c
parent[PATCH] pcmcia: cs.c cleanup (diff)
downloadlinux-3448139b41b9e3b8799eed7d427cd50789dadc3e.tar.xz
linux-3448139b41b9e3b8799eed7d427cd50789dadc3e.zip
[PATCH] pcmcia: ds.c cleanup
Clean up ds.c Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/pcmcia/pcmcia_ioctl.c')
-rw-r--r--drivers/pcmcia/pcmcia_ioctl.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/pcmcia/pcmcia_ioctl.c b/drivers/pcmcia/pcmcia_ioctl.c
index fa2a79d29e16..3084d8a3ba41 100644
--- a/drivers/pcmcia/pcmcia_ioctl.c
+++ b/drivers/pcmcia/pcmcia_ioctl.c
@@ -71,6 +71,29 @@ extern int ds_pc_debug;
#define ds_dbg(lvl, fmt, arg...) do { } while (0)
#endif
+static const char *release = "Linux Kernel Card Services";
+
+/** pcmcia_get_card_services_info
+ *
+ * Return information about this version of Card Services
+ */
+static int pcmcia_get_card_services_info(servinfo_t *info)
+{
+ unsigned int socket_count = 0;
+ struct list_head *tmp;
+ info->Signature[0] = 'C';
+ info->Signature[1] = 'S';
+ down_read(&pcmcia_socket_list_rwsem);
+ list_for_each(tmp, &pcmcia_socket_list)
+ socket_count++;
+ up_read(&pcmcia_socket_list_rwsem);
+ info->Count = socket_count;
+ info->Revision = CS_RELEASE_CODE;
+ info->CSLevel = 0x0210;
+ info->VendorString = (char *)release;
+ return CS_SUCCESS;
+} /* get_card_services_info */
+
/* backwards-compatible accessing of driver --- by name! */