1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _LINUX_BSG_H 3 #define _LINUX_BSG_H 4 5 #include <uapi/linux/bsg.h> 6 7 struct bsg_device; 8 struct device; 9 struct request_queue; 10 11 typedef int (bsg_sg_io_fn)(struct request_queue *, struct sg_io_v4 *hdr, 12 bool open_for_write, unsigned int timeout); 13 14 struct bsg_device *bsg_register_queue(struct request_queue *q, 15 struct device *parent, const char *name, 16 bsg_sg_io_fn *sg_io_fn); 17 void bsg_unregister_queue(struct bsg_device *bcd); 18 19 #endif /* _LINUX_BSG_H */ 20