aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/enclosure.h
diff options
context:
space:
mode:
authorSong Liu <songliubraving@fb.com>2014-12-30 14:46:18 -0800
committerChristoph Hellwig <hch@lst.de>2015-01-09 15:44:19 +0100
commit08024885a2a3ed432716e9d50046a620a5b2df05 (patch)
tree52e0042dac2c8651641987da49163908c3305e74 /include/linux/enclosure.h
parentses: add reliable slot attribute (diff)
downloadlinux-dev-08024885a2a3ed432716e9d50046a620a5b2df05.tar.xz
linux-dev-08024885a2a3ed432716e9d50046a620a5b2df05.zip
ses: Add power_status to SES device slot
Add power_status to SES device slot, so we can power on/off the HDDs behind the enclosure. Check firmware status in ses_set_* before sending control pages to firmware. Signed-off-by: Song Liu <songliubraving@fb.com> Acked-by: Dan Williams <dan.j.williams@intel.com> Reviewed-by: Jens Axboe <axboe@fb.com> Cc: Hannes Reinecke <hare@suse.de> Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'include/linux/enclosure.h')
-rw-r--r--include/linux/enclosure.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/enclosure.h b/include/linux/enclosure.h
index 0f826c14a337..7be22da321f3 100644
--- a/include/linux/enclosure.h
+++ b/include/linux/enclosure.h
@@ -79,6 +79,11 @@ struct enclosure_component_callbacks {
int (*set_locate)(struct enclosure_device *,
struct enclosure_component *,
enum enclosure_component_setting);
+ void (*get_power_status)(struct enclosure_device *,
+ struct enclosure_component *);
+ int (*set_power_status)(struct enclosure_device *,
+ struct enclosure_component *,
+ int);
int (*show_id)(struct enclosure_device *, char *buf);
};
@@ -94,6 +99,7 @@ struct enclosure_component {
int locate;
int slot;
enum enclosure_status status;
+ int power_status;
};
struct enclosure_device {