1 /*
2 * sd.h Copyright (C) 1992 Drew Eckhardt
3 * SCSI disk driver header file by
4 * Drew Eckhardt
5 *
6 * <drew@colorado.edu>
7 *
8 * Modified by Eric Youngdale eric@andante.org to
9 * add scatter-gather, multiple outstanding request, and other
10 * enhancements.
11 */
12 #ifndef _SD_H
13 #define _SD_H
14 /*
15 $Header: /usr/src/linux/kernel/blk_drv/scsi/RCS/sd.h,v 1.1 1992/07/24 06:27:38 root Exp root $
16 */
17
18 #ifndef _SCSI_H
19 #include "scsi.h"
20 #endif
21
22 #ifndef _GENDISK_H
23 #include <linux/genhd.h>
24 #endif
25
26 extern struct hd_struct *sd;
27
28 typedef struct scsi_disk {
29 unsigned capacity; /* size in blocks */
30 Scsi_Device *device;
31 unsigned char ready; /* flag ready for FLOPTICAL */
32 unsigned char write_prot; /* flag write_protect for rmvable dev */
33 unsigned char sector_bit_size; /* sector_size = 2 to the bit size power */
34 unsigned char sector_bit_shift; /* power of 2 sectors per FS block */
35 unsigned has_part_table:1; /* has partition table */
36 } Scsi_Disk;
37
38 extern int revalidate_scsidisk(kdev_t dev, int maxusage);
39
40 /*
41 * Used by pmac to find the device associated with a target.
42 */
43 extern kdev_t sd_find_target(void *host, int tgt);
44
45 #define N_SD_MAJORS 8
46
47 #define SD_MAJOR_MASK (N_SD_MAJORS - 1)
48 #define SD_PARTITION(i) (((MAJOR(i) & SD_MAJOR_MASK) << 8) | (MINOR(i) & 255))
49
50 #endif
51
52 /*
53 * Overrides for Emacs so that we follow Linus's tabbing style.
54 * Emacs will notice this stuff at the end of the file and automatically
55 * adjust the settings for this buffer only. This must remain at the end
56 * of the file.
57 * ---------------------------------------------------------------------------
58 * Local variables:
59 * c-indent-level: 4
60 * c-brace-imaginary-offset: 0
61 * c-brace-offset: -4
62 * c-argdecl-indent: 4
63 * c-label-offset: -4
64 * c-continued-statement-offset: 4
65 * c-continued-brace-offset: 0
66 * indent-tabs-mode: nil
67 * tab-width: 8
68 * End:
69 */
70
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.