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@tantalus.nrl.navy.mil 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 /* 27 * This is an arbitrary constant, and may be changed to whatever 28 * suits your purposes. Note that smaller will get you a few bytes 29 * more in kernel space if that is your thing. 30 */ 31 32 extern struct hd_struct * sd; 33 34 typedef struct scsi_disk { 35 unsigned capacity; /* size in blocks */ 36 unsigned sector_size; /* size in bytes */ 37 Scsi_Device *device; 38 unsigned char sector_bit_size; /* sector_size = 2 to the bit size power */ 39 unsigned char sector_bit_shift; /* power of 2 sectors per FS block */ 40 unsigned ten:1; /* support ten byte read / write */ 41 unsigned remap:1; /* support remapping */ 42 unsigned has_part_table:1; /* has partition table */ 43 } Scsi_Disk; 44 45 extern Scsi_Disk * rscsi_disks; 46 47 #endif 48 49 /* 50 * Overrides for Emacs so that we follow Linus's tabbing style. 51 * Emacs will notice this stuff at the end of the file and automatically 52 * adjust the settings for this buffer only. This must remain at the end 53 * of the file. 54 * --------------------------------------------------------------------------- 55 * Local variables: 56 * c-indent-level: 4 57 * c-brace-imaginary-offset: 0 58 * c-brace-offset: -4 59 * c-argdecl-indent: 4 60 * c-label-offset: -4 61 * c-continued-statement-offset: 4 62 * c-continued-brace-offset: 0 63 * indent-tabs-mode: nil 64 * tab-width: 4 65 * End: 66 */ 67