diff options
Diffstat (limited to 'drivers/s390/char/tape.h')
| -rw-r--r-- | drivers/s390/char/tape.h | 53 | 
1 files changed, 8 insertions, 45 deletions
diff --git a/drivers/s390/char/tape.h b/drivers/s390/char/tape.h index 7a242f07363..ea664dd4f56 100644 --- a/drivers/s390/char/tape.h +++ b/drivers/s390/char/tape.h @@ -1,5 +1,4 @@  /* - *  drivers/s390/char/tape.h   *    tape device driver for 3480/3490E/3590 tapes.   *   *  S390 and zSeries version @@ -16,7 +15,6 @@  #include <asm/ccwdev.h>  #include <asm/debug.h>  #include <asm/idals.h> -#include <linux/blkdev.h>  #include <linux/kernel.h>  #include <linux/module.h>  #include <linux/mtio.h> @@ -154,12 +152,6 @@ struct tape_discipline {  	struct tape_request *(*read_block)(struct tape_device *, size_t);  	struct tape_request *(*write_block)(struct tape_device *, size_t);  	void (*process_eov)(struct tape_device*); -#ifdef CONFIG_S390_TAPE_BLOCK -	/* Block device stuff. */ -	struct tape_request *(*bread)(struct tape_device *, struct request *); -	void (*check_locate)(struct tape_device *, struct tape_request *); -	void (*free_bread)(struct tape_request *); -#endif  	/* ioctl function for additional ioctls. */  	int (*ioctl_fn)(struct tape_device *, unsigned int, unsigned long);  	/* Array of tape commands with TAPE_NR_MTOPS entries */ @@ -182,26 +174,6 @@ struct tape_char_data {  	int block_size;			/*   of size block_size. */  }; -#ifdef CONFIG_S390_TAPE_BLOCK -/* Block Frontend Data */ -struct tape_blk_data -{ -	struct tape_device *	device; -	/* Block device request queue. */ -	struct request_queue *	request_queue; -	spinlock_t		request_queue_lock; - -	/* Task to move entries from block request to CCS request queue. */ -	struct work_struct	requeue_task; -	atomic_t		requeue_scheduled; - -	/* Current position on the tape. */ -	long			block_position; -	int			medium_changed; -	struct gendisk *	disk; -}; -#endif -  /* Tape Info */  struct tape_device {  	/* entry in tape_device_list */ @@ -248,10 +220,6 @@ struct tape_device {  	/* Character device frontend data */  	struct tape_char_data		char_data; -#ifdef CONFIG_S390_TAPE_BLOCK -	/* Block dev frontend data */ -	struct tape_blk_data		blk_data; -#endif  	/* Function to start or stop the next request later. */  	struct delayed_work		tape_dnr; @@ -280,6 +248,14 @@ tape_do_io_free(struct tape_device *device, struct tape_request *request)  	return rc;  } +static inline void +tape_do_io_async_free(struct tape_device *device, struct tape_request *request) +{ +	request->callback = (void *) tape_free_request; +	request->callback_data = NULL; +	tape_do_io_async(device, request); +} +  extern int tape_oper_handler(int irq, int status);  extern void tape_noper_handler(int irq, int status);  extern int tape_open(struct tape_device *); @@ -305,19 +281,6 @@ extern void tapechar_exit(void);  extern int  tapechar_setup_device(struct tape_device *);  extern void tapechar_cleanup_device(struct tape_device *); -/* Externals from tape_block.c */ -#ifdef CONFIG_S390_TAPE_BLOCK -extern int tapeblock_init (void); -extern void tapeblock_exit(void); -extern int tapeblock_setup_device(struct tape_device *); -extern void tapeblock_cleanup_device(struct tape_device *); -#else -static inline int tapeblock_init (void) {return 0;} -static inline void tapeblock_exit (void) {;} -static inline int tapeblock_setup_device(struct tape_device *t) {return 0;} -static inline void tapeblock_cleanup_device (struct tape_device *t) {;} -#endif -  /* tape initialisation functions */  #ifdef CONFIG_PROC_FS  extern void tape_proc_init (void);  | 
