From a0a287d27673590e6855b7ab1ba259ca7c72cd27 Mon Sep 17 00:00:00 2001 From: Stefan Richter Date: Sun, 24 Feb 2008 19:01:21 +0100 Subject: [PATCH] --- yaml --- r: 89619 b: refs/heads/master c: 1dc3bea78b6cd71c2017aa5da076684c049d8b98 h: refs/heads/master i: 89617: 830dccf6ce324c14c0d90f4c64218cfefd94d397 89615: bdf4603671c541b5e9c86a309d381352a6e43b33 v: v3 --- [refs] | 2 +- trunk/drivers/firewire/fw-device.h | 27 +++++++++++++++++---------- trunk/drivers/firewire/fw-sbp2.c | 4 ++-- 3 files changed, 20 insertions(+), 13 deletions(-) diff --git a/[refs] b/[refs] index 2f456861e12f..20b0cd100bb0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7c1fca336661aaeb70b9094c4b8eaae389027509 +refs/heads/master: 1dc3bea78b6cd71c2017aa5da076684c049d8b98 diff --git a/trunk/drivers/firewire/fw-device.h b/trunk/drivers/firewire/fw-device.h index 78ecd3991b7f..0d771fda86de 100644 --- a/trunk/drivers/firewire/fw-device.h +++ b/trunk/drivers/firewire/fw-device.h @@ -64,28 +64,24 @@ struct fw_device { struct fw_attribute_group attribute_group; }; -static inline struct fw_device * -fw_device(struct device *dev) +static inline struct fw_device *fw_device(struct device *dev) { return container_of(dev, struct fw_device, device); } -static inline int -fw_device_is_shutdown(struct fw_device *device) +static inline int fw_device_is_shutdown(struct fw_device *device) { return atomic_read(&device->state) == FW_DEVICE_SHUTDOWN; } -static inline struct fw_device * -fw_device_get(struct fw_device *device) +static inline struct fw_device *fw_device_get(struct fw_device *device) { get_device(&device->device); return device; } -static inline void -fw_device_put(struct fw_device *device) +static inline void fw_device_put(struct fw_device *device) { put_device(&device->device); } @@ -104,12 +100,23 @@ struct fw_unit { struct fw_attribute_group attribute_group; }; -static inline struct fw_unit * -fw_unit(struct device *dev) +static inline struct fw_unit *fw_unit(struct device *dev) { return container_of(dev, struct fw_unit, device); } +static inline struct fw_unit *fw_unit_get(struct fw_unit *unit) +{ + get_device(&unit->device); + + return unit; +} + +static inline void fw_unit_put(struct fw_unit *unit) +{ + put_device(&unit->device); +} + #define CSR_OFFSET 0x40 #define CSR_LEAF 0x80 #define CSR_DIRECTORY 0xc0 diff --git a/trunk/drivers/firewire/fw-sbp2.c b/trunk/drivers/firewire/fw-sbp2.c index 8fff18e05000..c7aba5cff5d2 100644 --- a/trunk/drivers/firewire/fw-sbp2.c +++ b/trunk/drivers/firewire/fw-sbp2.c @@ -796,7 +796,7 @@ static void sbp2_release_target(struct kref *kref) scsi_remove_host(shost); fw_notify("released %s\n", tgt->bus_id); - put_device(&tgt->unit->device); + fw_unit_put(tgt->unit); scsi_host_put(shost); fw_device_put(device); } @@ -1119,7 +1119,7 @@ static int sbp2_probe(struct device *dev) goto fail_shost_put; fw_device_get(device); - get_device(&unit->device); + fw_unit_get(unit); /* Initialize to values that won't match anything in our table. */ firmware_revision = 0xff000000;