ide-cd: cleanup ide_cdrom_update_speed()
Bartlomiej Zolnierkiewicz [Fri, 1 Feb 2008 22:09:20 +0000 (23:09 +0100)]
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

drivers/ide/ide-cd.c

index f02ddc5..0f6d2e0 100644 (file)
@@ -2416,19 +2416,20 @@ int ide_cdrom_get_capabilities(ide_drive_t *drive, struct atapi_capabilities_pag
 static
 void ide_cdrom_update_speed (ide_drive_t *drive, struct atapi_capabilities_page *cap)
 {
+       u16 curspeed, maxspeed;
+
        /* The ACER/AOpen 24X cdrom has the speed fields byte-swapped */
        if (!drive->id->model[0] &&
            !strncmp(drive->id->fw_rev, "241N", 4)) {
-               CDROM_STATE_FLAGS(drive)->current_speed  =
-                       (le16_to_cpu(cap->curspeed) + (176/2)) / 176;
-               CDROM_CONFIG_FLAGS(drive)->max_speed =
-                       (le16_to_cpu(cap->maxspeed) + (176/2)) / 176;
+               curspeed = le16_to_cpu(cap->curspeed);
+               maxspeed = le16_to_cpu(cap->maxspeed);
        } else {
-               CDROM_STATE_FLAGS(drive)->current_speed  =
-                       (be16_to_cpu(cap->curspeed) + (176/2)) / 176;
-               CDROM_CONFIG_FLAGS(drive)->max_speed =
-                       (be16_to_cpu(cap->maxspeed) + (176/2)) / 176;
+               curspeed = be16_to_cpu(cap->curspeed);
+               maxspeed = be16_to_cpu(cap->maxspeed);
        }
+
+       CDROM_STATE_FLAGS(drive)->current_speed = (curspeed + (176/2)) / 176;
+       CDROM_CONFIG_FLAGS(drive)->max_speed = (maxspeed + (176/2)) / 176;
 }
 
 static