Linux kernel & device driver programming

Cross-Referenced Linux and Device Driver Code

[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ]
Version: [ 2.6.11.8 ] [ 2.6.25 ] [ 2.6.25.8 ] [ 2.6.31.13 ] Architecture: [ i386 ]
  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;
  8 struct scsi_device;
  9 struct request;
 10 struct request_queue;
 11 
 12 
 13 struct scsi_driver {
 14         struct module           *owner;
 15         struct device_driver    gendrv;
 16 
 17         void (*rescan)(struct device *);
 18         int (*done)(struct scsi_cmnd *);
 19 };
 20 #define to_scsi_driver(drv) \
 21         container_of((drv), struct scsi_driver, gendrv)
 22 
 23 extern int scsi_register_driver(struct device_driver *);
 24 #define scsi_unregister_driver(drv) \
 25         driver_unregister(drv);
 26 
 27 extern int scsi_register_interface(struct class_interface *);
 28 #define scsi_unregister_interface(intf) \
 29         class_interface_unregister(intf)
 30 
 31 int scsi_setup_blk_pc_cmnd(struct scsi_device *sdev, struct request *req);
 32 int scsi_setup_fs_cmnd(struct scsi_device *sdev, struct request *req);
 33 int scsi_prep_state_check(struct scsi_device *sdev, struct request *req);
 34 int scsi_prep_return(struct request_queue *q, struct request *req, int ret);
 35 int scsi_prep_fn(struct request_queue *, struct request *);
 36 
 37 #endif /* _SCSI_SCSI_DRIVER_H */
 38 
  This page was automatically generated by the LXR engine.