diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/ide/ide-probe.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c index 2cccfe9d39f4..e7067c20e338 100644 --- a/drivers/ide/ide-probe.c +++ b/drivers/ide/ide-probe.c | |||
@@ -881,13 +881,6 @@ static int ide_init_queue(ide_drive_t *drive) | |||
881 | q->queuedata = drive; | 881 | q->queuedata = drive; |
882 | blk_queue_segment_boundary(q, 0xffff); | 882 | blk_queue_segment_boundary(q, 0xffff); |
883 | 883 | ||
884 | if (!hwif->rqsize) { | ||
885 | if ((hwif->host_flags & IDE_HFLAG_NO_LBA48) || | ||
886 | (hwif->host_flags & IDE_HFLAG_NO_LBA48_DMA)) | ||
887 | hwif->rqsize = 256; | ||
888 | else | ||
889 | hwif->rqsize = 65536; | ||
890 | } | ||
891 | if (hwif->rqsize < max_sectors) | 884 | if (hwif->rqsize < max_sectors) |
892 | max_sectors = hwif->rqsize; | 885 | max_sectors = hwif->rqsize; |
893 | blk_queue_max_sectors(q, max_sectors); | 886 | blk_queue_max_sectors(q, max_sectors); |
@@ -1019,6 +1012,14 @@ static int init_irq (ide_hwif_t *hwif) | |||
1019 | goto out_unlink; | 1012 | goto out_unlink; |
1020 | } | 1013 | } |
1021 | 1014 | ||
1015 | if (!hwif->rqsize) { | ||
1016 | if ((hwif->host_flags & IDE_HFLAG_NO_LBA48) || | ||
1017 | (hwif->host_flags & IDE_HFLAG_NO_LBA48_DMA)) | ||
1018 | hwif->rqsize = 256; | ||
1019 | else | ||
1020 | hwif->rqsize = 65536; | ||
1021 | } | ||
1022 | |||
1022 | /* | 1023 | /* |
1023 | * For any present drive: | 1024 | * For any present drive: |
1024 | * - allocate the block device queue | 1025 | * - allocate the block device queue |