]> git.karo-electronics.de Git - karo-tx-linux.git/blob - drivers/ide/ide-gd.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
[karo-tx-linux.git] / drivers / ide / ide-gd.h
1 #ifndef __IDE_GD_H
2 #define __IDE_GD_H
3
4 #define DRV_NAME "ide-gd"
5 #define PFX DRV_NAME ": "
6
7 /* define to see debug info */
8 #define IDE_GD_DEBUG_LOG        0
9
10 #if IDE_GD_DEBUG_LOG
11 #define ide_debug_log(lvl, fmt, args...) __ide_debug_log(lvl, fmt, args)
12 #else
13 #define ide_debug_log(lvl, fmt, args...) do {} while (0)
14 #endif
15
16 struct ide_disk_obj {
17         ide_drive_t             *drive;
18         struct ide_driver       *driver;
19         struct gendisk          *disk;
20         struct kref             kref;
21         unsigned int            openers;        /* protected by BKL for now */
22
23         /* Last failed packet command */
24         struct ide_atapi_pc *failed_pc;
25         /* used for blk_{fs,pc}_request() requests */
26         struct ide_atapi_pc queued_pc;
27
28         /* Last error information */
29         u8 sense_key, asc, ascq;
30
31         int progress_indication;
32
33         /* Device information */
34         /* Current format */
35         int blocks, block_size, bs_factor;
36         /* Last format capacity descriptor */
37         u8 cap_desc[8];
38         /* Copy of the flexible disk page */
39         u8 flexible_disk_page[32];
40 };
41
42 sector_t ide_gd_capacity(ide_drive_t *);
43
44 #endif /* __IDE_GD_H */