diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-23 19:08:11 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-23 19:08:11 -0400 |
commit | 969907a956752f88dde4aa23fa8c033b9a939aee (patch) | |
tree | e131db71d1db9a3b8591d718e8c5e897daadccec /drivers/ide/ide-disk.c | |
parent | ea541686d8454efac4f2b5c0767affb12d4b6a52 (diff) | |
parent | fa3fd7204e1a4e8538117f0edbfecd4132276860 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:
ide: drivers/ide/generic.c -> drivers/ide/ide-pci-generic.c
ide-disk: set non-rotational queue flag for SSD and CF devices
ide-cd: add TEAC CD-224E to the NO_AUTOCLOSE list
ide: Add tx4938ide driver (v2)
TXx9: Add TX4938 ATA support (v3)
ide: Add tx4939ide driver (v6)
ide: two more pci_ioremap_bar() conversions
pci: use pci_ioremap_bar() in drivers/ide
sgiioc4: use ide_host_add() (take 2)
sgiioc4: fix error cleanup path (take 2)
Diffstat (limited to 'drivers/ide/ide-disk.c')
-rw-r--r-- | drivers/ide/ide-disk.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/ide/ide-disk.c b/drivers/ide/ide-disk.c index 223750c1b5a6..e5adebe8ac2c 100644 --- a/drivers/ide/ide-disk.c +++ b/drivers/ide/ide-disk.c | |||
@@ -600,6 +600,7 @@ static int ide_disk_check(ide_drive_t *drive, const char *s) | |||
600 | static void ide_disk_setup(ide_drive_t *drive) | 600 | static void ide_disk_setup(ide_drive_t *drive) |
601 | { | 601 | { |
602 | struct ide_disk_obj *idkp = drive->driver_data; | 602 | struct ide_disk_obj *idkp = drive->driver_data; |
603 | struct request_queue *q = drive->queue; | ||
603 | ide_hwif_t *hwif = drive->hwif; | 604 | ide_hwif_t *hwif = drive->hwif; |
604 | u16 *id = drive->id; | 605 | u16 *id = drive->id; |
605 | char *m = (char *)&id[ATA_ID_PROD]; | 606 | char *m = (char *)&id[ATA_ID_PROD]; |
@@ -626,11 +627,14 @@ static void ide_disk_setup(ide_drive_t *drive) | |||
626 | if (max_s > hwif->rqsize) | 627 | if (max_s > hwif->rqsize) |
627 | max_s = hwif->rqsize; | 628 | max_s = hwif->rqsize; |
628 | 629 | ||
629 | blk_queue_max_sectors(drive->queue, max_s); | 630 | blk_queue_max_sectors(q, max_s); |
630 | } | 631 | } |
631 | 632 | ||
632 | printk(KERN_INFO "%s: max request size: %dKiB\n", drive->name, | 633 | printk(KERN_INFO "%s: max request size: %dKiB\n", drive->name, |
633 | drive->queue->max_sectors / 2); | 634 | q->max_sectors / 2); |
635 | |||
636 | if (ata_id_is_ssd(id) || ata_id_is_cfa(id)) | ||
637 | queue_flag_set_unlocked(QUEUE_FLAG_NONROT, q); | ||
634 | 638 | ||
635 | /* calculate drive capacity, and select LBA if possible */ | 639 | /* calculate drive capacity, and select LBA if possible */ |
636 | ide_disk_get_capacity(drive); | 640 | ide_disk_get_capacity(drive); |