summaryrefslogtreecommitdiffstats
path: root/include/blkdev.h
diff options
context:
space:
mode:
authorSami Kerola2012-06-11 21:17:38 +0200
committerSami Kerola2012-06-11 22:06:06 +0200
commitba32a9465a3bedb0ba750cdc80a4e84fe2de6eda (patch)
treeac0ac7d16cb282bb7b3e63a63974e3b22acb0a0d /include/blkdev.h
parentwipefs: use symbolic value for markup mode (diff)
downloadkernel-qcow2-util-linux-ba32a9465a3bedb0ba750cdc80a4e84fe2de6eda.tar.gz
kernel-qcow2-util-linux-ba32a9465a3bedb0ba750cdc80a4e84fe2de6eda.tar.xz
kernel-qcow2-util-linux-ba32a9465a3bedb0ba750cdc80a4e84fe2de6eda.zip
blkdev: add blkdev_scsi_type_to_name()
Add a function, and necessary symbols, to convert scsi type id's to name strings. Reference: http://permalink.gmane.org/gmane.linux.utilities.util-linux-ng/5994 Signed-off-by: Sami Kerola <kerolasa@iki.fi>
Diffstat (limited to 'include/blkdev.h')
-rw-r--r--include/blkdev.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/include/blkdev.h b/include/blkdev.h
index 56dbce75c..84c26dd33 100644
--- a/include/blkdev.h
+++ b/include/blkdev.h
@@ -78,6 +78,24 @@
# define CDROM_GET_CAPABILITY 0x5331
#endif
+/* SCSI device types. Copied almost as-is from kernel header.
+ * http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=include/scsi/scsi.h */
+#define SCSI_TYPE_DISK 0x00
+#define SCSI_TYPE_TAPE 0x01
+#define SCSI_TYPE_PRINTER 0x02
+#define SCSI_TYPE_PROCESSOR 0x03 /* HP scanners use this */
+#define SCSI_TYPE_WORM 0x04 /* Treated as ROM by our system */
+#define SCSI_TYPE_ROM 0x05
+#define SCSI_TYPE_SCANNER 0x06
+#define SCSI_TYPE_MOD 0x07 /* Magneto-optical disk - treated as SCSI_TYPE_DISK */
+#define SCSI_TYPE_MEDIUM_CHANGER 0x08
+#define SCSI_TYPE_COMM 0x09 /* Communications device */
+#define SCSI_TYPE_RAID 0x0c
+#define SCSI_TYPE_ENCLOSURE 0x0d /* Enclosure Services Device */
+#define SCSI_TYPE_RBC 0x0e
+#define SCSI_TYPE_OSD 0x11
+#define SCSI_TYPE_NO_LUN 0x7f
+
struct hd_geometry {
unsigned char heads;
unsigned char sectors;
@@ -113,4 +131,7 @@ int blkdev_is_cdrom(int fd);
/* get device's geometry - legacy */
int blkdev_get_geometry(int fd, unsigned int *h, unsigned int *s);
+/* convert scsi type code to name */
+char *blkdev_scsi_type_to_name(int type);
+
#endif /* BLKDEV_H */