ide: fix pre-EIDE SWDMA support on big-endian
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Tue, 5 Aug 2008 16:16:55 +0000 (18:16 +0200)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Tue, 5 Aug 2008 16:16:55 +0000 (18:16 +0200)
id->tDMA is of 'unsigned char' type so endianness is already
correct and calling le16_to_cpu() is wrong.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/ide-dma.c

index 71c377a..adc6827 100644 (file)
@@ -649,11 +649,7 @@ static unsigned int ide_get_mode_mask(ide_drive_t *drive, u8 base, u8 req_mode)
                if (id->field_valid & 2) {
                        mask = id->dma_1word & hwif->swdma_mask;
                } else if (id->tDMA) {
-                       /*
-                        * ide_fix_driveid() doesn't convert ->tDMA to the
-                        * CPU endianness so we need to do it here
-                        */
-                       u8 mode = le16_to_cpu(id->tDMA);
+                       u8 mode = id->tDMA;
 
                        /*
                         * if the mode is valid convert it to the mask