bsg.h 734 B

12345678910111213141516171819202122232425262728293031323334
  1. #ifndef BSG_H
  2. #define BSG_H
  3. #include <uapi/linux/bsg.h>
  4. #if defined(CONFIG_BLK_DEV_BSG)
  5. struct bsg_class_device {
  6. struct device *class_dev;
  7. struct device *parent;
  8. int minor;
  9. struct request_queue *queue;
  10. struct kref ref;
  11. void (*release)(struct device *);
  12. };
  13. extern int bsg_register_queue(struct request_queue *q,
  14. struct device *parent, const char *name,
  15. void (*release)(struct device *));
  16. extern void bsg_unregister_queue(struct request_queue *);
  17. #else
  18. static inline int bsg_register_queue(struct request_queue *q,
  19. struct device *parent, const char *name,
  20. void (*release)(struct device *))
  21. {
  22. return 0;
  23. }
  24. static inline void bsg_unregister_queue(struct request_queue *q)
  25. {
  26. }
  27. #endif
  28. #endif