Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | #ifndef _SCSI_SCSI_DRIVER_H |
2 | #define _SCSI_SCSI_DRIVER_H | |
3 | ||
4 | #include <linux/device.h> | |
5 | ||
6 | struct module; | |
7 | struct scsi_cmnd; | |
7f9a6bc4 JB |
8 | struct scsi_device; |
9 | struct request; | |
10 | struct request_queue; | |
1da177e4 LT |
11 | |
12 | ||
13 | struct scsi_driver { | |
14 | struct module *owner; | |
15 | struct device_driver gendrv; | |
16 | ||
1da177e4 | 17 | void (*rescan)(struct device *); |
1da177e4 LT |
18 | }; |
19 | #define to_scsi_driver(drv) \ | |
20 | container_of((drv), struct scsi_driver, gendrv) | |
21 | ||
22 | extern int scsi_register_driver(struct device_driver *); | |
23 | #define scsi_unregister_driver(drv) \ | |
24 | driver_unregister(drv); | |
25 | ||
26 | extern int scsi_register_interface(struct class_interface *); | |
27 | #define scsi_unregister_interface(intf) \ | |
28 | class_interface_unregister(intf) | |
29 | ||
7f9a6bc4 JB |
30 | int scsi_setup_blk_pc_cmnd(struct scsi_device *sdev, struct request *req); |
31 | int scsi_setup_fs_cmnd(struct scsi_device *sdev, struct request *req); | |
32 | int scsi_prep_state_check(struct scsi_device *sdev, struct request *req); | |
33 | int scsi_prep_return(struct request_queue *q, struct request *req, int ret); | |
34 | ||
1da177e4 | 35 | #endif /* _SCSI_SCSI_DRIVER_H */ |