patch-2.4.0-test10 linux/include/linux/isapnp.h
Next file: linux/include/linux/linkage.h
Previous file: linux/include/linux/init.h
Back to the patch index
Back to the overall index
- Lines: 66
- Date:
Tue Oct 31 11:18:36 2000
- Orig file:
v2.4.0-test9/linux/include/linux/isapnp.h
- Orig date:
Fri Sep 8 12:53:47 2000
diff -u --recursive --new-file v2.4.0-test9/linux/include/linux/isapnp.h linux/include/linux/isapnp.h
@@ -132,17 +132,33 @@
#define ISAPNP_CARD_DEVS 8
#define ISAPNP_CARD_ID(_va, _vb, _vc, _device) \
- vendor: ISAPNP_VENDOR(_va, _vb, _vc), device: ISAPNP_DEVICE(_device)
+ card_vendor: ISAPNP_VENDOR(_va, _vb, _vc), card_device: ISAPNP_DEVICE(_device)
#define ISAPNP_CARD_END \
- vendor: 0, device: 0
+ card_vendor: 0, card_device: 0
#define ISAPNP_DEVICE_ID(_va, _vb, _vc, _function) \
{ vendor: ISAPNP_VENDOR(_va, _vb, _vc), function: ISAPNP_FUNCTION(_function) }
+/* export used IDs outside module */
+#define ISAPNP_CARD_TABLE(name) \
+ MODULE_GENERIC_TABLE(isapnp_card, name)
+
struct isapnp_card_id {
- unsigned short vendor, device;
+ unsigned long driver_data; /* data private to the driver */
+ unsigned short card_vendor, card_device;
struct {
unsigned short vendor, function;
} devs[ISAPNP_CARD_DEVS]; /* logical devices */
+};
+
+#define ISAPNP_DEVICE_SINGLE(_cva, _cvb, _cvc, _cdevice, _dva, _dvb, _dvc, _dfunction) \
+ card_vendor: ISAPNP_VENDOR(_cva, _cvb, _cvc), card_device: ISAPNP_DEVICE(_cdevice), \
+ vendor: ISAPNP_VENDOR(_dva, _dvb, _dvc), function: ISAPNP_FUNCTION(_dfunction)
+#define ISAPNP_DEVICE_SINGLE_END \
+ card_vendor: 0, card_device: 0
+
+struct isapnp_device_id {
+ unsigned short card_vendor, card_device;
+ unsigned short vendor, function;
unsigned long driver_data; /* data private to the driver */
};
@@ -179,10 +195,14 @@
int isapnp_probe_cards(const struct isapnp_card_id *ids,
int (*probe)(struct pci_bus *card,
const struct isapnp_card_id *id));
+int isapnp_probe_devs(const struct isapnp_device_id *ids,
+ int (*probe)(struct pci_dev *dev,
+ const struct isapnp_device_id *id));
/* misc */
void isapnp_resource_change(struct resource *resource,
unsigned long start,
unsigned long size);
+int isapnp_activate_dev(struct pci_dev *dev, const char *name);
/* init/main.c */
int isapnp_init(void);
@@ -221,9 +241,13 @@
extern inline int isapnp_probe_cards(const struct isapnp_card_id *ids,
int (*probe)(struct pci_bus *card,
const struct isapnp_card_id *id)) { return -ENODEV; }
+extern inline int isapnp_probe_devs(const struct isapnp_device_id *ids,
+ int (*probe)(struct pci_dev *dev,
+ const struct isapnp_device_id *id)) { return -ENODEV; }
extern inline void isapnp_resource_change(struct resource *resource,
unsigned long start,
unsigned long size) { ; }
+extern inline int isapnp_activate_dev(struct pci_dev *dev, const char *name) { return -ENODEV; }
#endif /* CONFIG_ISAPNP */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)