| Bartlomiej Zolnierkiewicz | f879048 | 2008-10-13 21:39:45 +0200 | [diff] [blame] | 1 | #include <linux/kernel.h> | 
|  | 2 | #include <linux/ide.h> | 
|  | 3 | #include <linux/hdreg.h> | 
|  | 4 |  | 
|  | 5 | #include "ide-disk.h" | 
|  | 6 |  | 
|  | 7 | static const struct ide_ioctl_devset ide_disk_ioctl_settings[] = { | 
|  | 8 | { HDIO_GET_ADDRESS,	HDIO_SET_ADDRESS,   &ide_devset_address   }, | 
|  | 9 | { HDIO_GET_MULTCOUNT,	HDIO_SET_MULTCOUNT, &ide_devset_multcount }, | 
|  | 10 | { HDIO_GET_NOWERR,	HDIO_SET_NOWERR,    &ide_devset_nowerr	  }, | 
|  | 11 | { HDIO_GET_WCACHE,	HDIO_SET_WCACHE,    &ide_devset_wcache	  }, | 
|  | 12 | { HDIO_GET_ACOUSTIC,	HDIO_SET_ACOUSTIC,  &ide_devset_acoustic  }, | 
|  | 13 | { 0 } | 
|  | 14 | }; | 
|  | 15 |  | 
| Al Viro | badf808 | 2008-10-16 10:23:20 -0400 | [diff] [blame] | 16 | int ide_disk_ioctl(ide_drive_t *drive, struct block_device *bdev, fmode_t mode, | 
| Bartlomiej Zolnierkiewicz | f879048 | 2008-10-13 21:39:45 +0200 | [diff] [blame] | 17 | unsigned int cmd, unsigned long arg) | 
|  | 18 | { | 
| Bartlomiej Zolnierkiewicz | f879048 | 2008-10-13 21:39:45 +0200 | [diff] [blame] | 19 | int err; | 
|  | 20 |  | 
|  | 21 | err = ide_setting_ioctl(drive, bdev, cmd, arg, ide_disk_ioctl_settings); | 
|  | 22 | if (err != -EOPNOTSUPP) | 
|  | 23 | return err; | 
|  | 24 |  | 
| Al Viro | 1bddd9e | 2008-09-02 17:19:43 -0400 | [diff] [blame] | 25 | return generic_ide_ioctl(drive, bdev, cmd, arg); | 
| Bartlomiej Zolnierkiewicz | f879048 | 2008-10-13 21:39:45 +0200 | [diff] [blame] | 26 | } |