summaryrefslogtreecommitdiffstats
path: root/drivers/pcmcia/pci_socket.h
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-02-05 06:47:02 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-02-05 06:47:02 +0000
commit99a7e12f34b3661a0d1354eef83a0eef4df5e34c (patch)
tree3560aca9ca86792f9ab7bd87861ea143a1b3c7a3 /drivers/pcmcia/pci_socket.h
parente73a04659c0b8cdee4dd40e58630e2cf63afb316 (diff)
Merge with Linux 2.3.38.
Diffstat (limited to 'drivers/pcmcia/pci_socket.h')
-rw-r--r--drivers/pcmcia/pci_socket.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/drivers/pcmcia/pci_socket.h b/drivers/pcmcia/pci_socket.h
new file mode 100644
index 000000000..41ea4ec09
--- /dev/null
+++ b/drivers/pcmcia/pci_socket.h
@@ -0,0 +1,39 @@
+/*
+ * drivers/pcmcia/pci_socket.h
+ *
+ * (C) Copyright 1999 Linus Torvalds
+ */
+
+struct pci_socket_ops;
+
+typedef struct pci_socket {
+ struct pci_dev *dev;
+ int cb_irq, io_irq;
+ void *base;
+ void (*handler)(void *, unsigned int);
+ void *info;
+ struct pci_socket_ops *op;
+ socket_cap_t cap;
+ struct timer_list timer;
+} pci_socket_t;
+
+struct pci_socket_ops {
+ int (*open)(struct pci_socket *);
+ void (*close)(struct pci_socket *);
+
+ int (*init)(struct pci_socket *);
+ int (*suspend)(struct pci_socket *);
+ int (*inquire)(struct pci_socket *, socket_cap_t *cap);
+ int (*get_status)(struct pci_socket *, unsigned int *);
+ int (*get_socket)(struct pci_socket *, socket_state_t *);
+ int (*set_socket)(struct pci_socket *, socket_state_t *);
+ int (*get_io_map)(struct pci_socket *, struct pccard_io_map *);
+ int (*set_io_map)(struct pci_socket *, struct pccard_io_map *);
+ int (*get_mem_map)(struct pci_socket *, struct pccard_mem_map *);
+ int (*set_mem_map)(struct pci_socket *, struct pccard_mem_map *);
+ void (*proc_setup)(struct pci_socket *, struct proc_dir_entry *base);
+};
+
+extern struct pci_socket_ops yenta_operations;
+extern struct pci_socket_ops ricoh_operations;
+