From 0e18fb5a6637ddf864ea62335eea265819594ef0 Mon Sep 17 00:00:00 2001 From: Bartlomiej Zolnierkiewicz Date: Fri, 1 Feb 2008 23:09:20 +0100 Subject: [PATCH] --- yaml --- r: 82085 b: refs/heads/master c: 481c8c6476f86d7e92435764ba710315d644a45e h: refs/heads/master i: 82083: cc36863b7c8a3e03bf06dba37bdab87350e6be23 v: v3 --- [refs] | 2 +- trunk/drivers/ide/ide-cd.c | 17 +++++++++-------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/[refs] b/[refs] index 7be1841a837b..1ee425528bbc 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f18f960c5c1568fa2f720e2cb31d6c1af9ea1e1a +refs/heads/master: 481c8c6476f86d7e92435764ba710315d644a45e diff --git a/trunk/drivers/ide/ide-cd.c b/trunk/drivers/ide/ide-cd.c index f02ddc5b3b17..0f6d2e065b9a 100644 --- a/trunk/drivers/ide/ide-cd.c +++ b/trunk/drivers/ide/ide-cd.c @@ -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