mtip32xx: Change HDIO_GET_IDENTITY to return stored data

For the ioctl command HDIO_GET_IDENTITY, return the stored copy of IDENTIFY
DATA instead of sending the command to the device - similar to libata.

Signed-off-by: Asai Thambi S P <asamymuthupa@micron.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
Asai Thambi S P 2012-05-29 18:41:47 -07:00 committed by Jens Axboe
parent 2df7aa96e7
commit 971890f258

View File

@ -2295,13 +2295,12 @@ static int mtip_hw_ioctl(struct driver_data *dd, unsigned int cmd,
{ {
switch (cmd) { switch (cmd) {
case HDIO_GET_IDENTITY: case HDIO_GET_IDENTITY:
if (mtip_get_identify(dd->port, (void __user *) arg) < 0) { {
dev_warn(&dd->pdev->dev, if (copy_to_user((void __user *)arg, dd->port->identify,
"Unable to read identity\n"); sizeof(u16) * ATA_ID_WORDS))
return -EIO; return -EFAULT;
}
break; break;
}
case HDIO_DRIVE_CMD: case HDIO_DRIVE_CMD:
{ {
u8 drive_command[4]; u8 drive_command[4];