summaryrefslogtreecommitdiff
path: root/src/pcmcia.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/pcmcia.h')
-rw-r--r--src/pcmcia.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/pcmcia.h b/src/pcmcia.h
new file mode 100644
index 0000000..a8aea93
--- /dev/null
+++ b/src/pcmcia.h
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2006 Dell, Inc.
+ * by Matt Domsch <Matt_Domsch@dell.com>
+ * Licensed under the GNU General Public license, version 2.
+ */
+
+#ifndef PCMCIA_H_INCLUDED
+#define PCMCIA_H_INCLUDED
+
+#include "list.h"
+#include "cistpl.h"
+#include "state.h"
+
+struct pcmcia_device {
+ struct list_head node;
+ unsigned int socket;
+ unsigned int function;
+ int function_id;
+ int network_type;
+};
+
+extern int get_pcmcia_devices(struct libbiosdevname_state *state);
+extern void free_pcmcia_devices(struct libbiosdevname_state *state);
+extern int unparse_pcmcia_name(char *buf, int size, const struct pcmcia_device *pdev);
+extern int unparse_pcmcia_device(char *buf, const int size, const struct pcmcia_device *p);
+
+static inline int is_pcmcia_network(struct pcmcia_device *dev)
+{
+ return dev->function_id == CISTPL_FUNCID_NETWORK &&
+ (dev->network_type == CISTPL_LAN_TECH_ETHERNET ||
+ dev->network_type == CISTPL_LAN_TECH_WIRELESS);
+}
+
+
+#endif /* PCMCIA_H_INCLUDED */