summaryrefslogtreecommitdiff
path: root/drivers/firewire/fw-device.h
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@redhat.com>2007-03-07 17:12:44 (GMT)
committerStefan Richter <stefanr@s5r6.in-berlin.de>2007-03-09 21:03:09 (GMT)
commita3aca3dabbcf00f2088d472f27755c29acaa992e (patch)
treec6b23c1d51a7eab5bee4137d344264974ddfc432 /drivers/firewire/fw-device.h
parent344bbc4de14e70d03f09bff04bb7d161b8a0d28c (diff)
downloadlinux-a3aca3dabbcf00f2088d472f27755c29acaa992e.tar.xz
firewire: Switch cdev code over to use register_chrdev and keep a list of devices.
The old mechanism kept a struct cdev for each fw device, but fops->release would reference this struct after the device got freed in some cases. Signed-off-by: Kristian Høgsberg <krh@redhat.com> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/firewire/fw-device.h')
-rw-r--r--drivers/firewire/fw-device.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/firewire/fw-device.h b/drivers/firewire/fw-device.h
index 4f731c2..1a3655b 100644
--- a/drivers/firewire/fw-device.h
+++ b/drivers/firewire/fw-device.h
@@ -39,7 +39,7 @@ struct fw_device {
int generation;
struct fw_card *card;
struct device device;
- struct cdev cdev;
+ struct list_head link;
struct list_head client_list;
__be32 *config_rom;
size_t config_rom_length;
@@ -59,6 +59,9 @@ int fw_device_enable_phys_dma(struct fw_device *device);
void fw_device_cdev_update(struct fw_device *device);
+struct fw_device *fw_device_from_devt(dev_t devt);
+extern int fw_cdev_major;
+
struct fw_unit {
struct device device;
u32 *directory;