1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __IDE_FLOPPY_H 3 #define __IDE_FLOPPY_H 4 5 #include "ide-gd.h" 6 7 #ifdef CONFIG_IDE_GD_ATAPI 8 /* 9 * Pages of the SELECT SENSE / MODE SENSE packet commands. 10 * See SFF-8070i spec. 11 */ 12 #define IDEFLOPPY_CAPABILITIES_PAGE 0x1b 13 #define IDEFLOPPY_FLEXIBLE_DISK_PAGE 0x05 14 15 /* IOCTLs used in low-level formatting. */ 16 #define IDEFLOPPY_IOCTL_FORMAT_SUPPORTED 0x4600 17 #define IDEFLOPPY_IOCTL_FORMAT_GET_CAPACITY 0x4601 18 #define IDEFLOPPY_IOCTL_FORMAT_START 0x4602 19 #define IDEFLOPPY_IOCTL_FORMAT_GET_PROGRESS 0x4603 20 21 /* ide-floppy.c */ 22 extern const struct ide_disk_ops ide_atapi_disk_ops; 23 void ide_floppy_create_mode_sense_cmd(struct ide_atapi_pc *, u8); 24 void ide_floppy_create_read_capacity_cmd(struct ide_atapi_pc *); 25 26 /* ide-floppy_ioctl.c */ 27 int ide_floppy_ioctl(ide_drive_t *, struct block_device *, fmode_t, 28 unsigned int, unsigned long); 29 int ide_floppy_compat_ioctl(ide_drive_t *, struct block_device *, fmode_t, 30 unsigned int, unsigned long); 31 32 #ifdef CONFIG_IDE_PROC_FS 33 /* ide-floppy_proc.c */ 34 extern ide_proc_entry_t ide_floppy_proc[]; 35 extern const struct ide_proc_devset ide_floppy_settings[]; 36 #endif 37 #else 38 #define ide_floppy_proc NULL 39 #define ide_floppy_settings NULL 40 #endif 41 42 #endif /*__IDE_FLOPPY_H */ 43