diff options
author | Ralf Corsepius <ralf.corsepius@rtems.org> | 2009-11-12 16:34:24 +0000 |
---|---|---|
committer | Ralf Corsepius <ralf.corsepius@rtems.org> | 2009-11-12 16:34:24 +0000 |
commit | d949482a3c3838d88332d3101cf671c348d4d97a (patch) | |
tree | 542c506c2275bed7e19433df89587b7e78a61334 /c/src/libchip/ide/ata.c | |
parent | New test case (diff) | |
download | rtems-d949482a3c3838d88332d3101cf671c348d4d97a.tar.bz2 |
2009-11-12 Ralf Corsépius <ralf.corsepius@rtems.org>
* libchip/ide/ata.c (rtems_ata_initialize): Avoid implicit cast to uint16_t.
Diffstat (limited to 'c/src/libchip/ide/ata.c')
-rw-r--r-- | c/src/libchip/ide/ata.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/c/src/libchip/ide/ata.c b/c/src/libchip/ide/ata.c index 450148bbf3..2d17748a57 100644 --- a/c/src/libchip/ide/ata.c +++ b/c/src/libchip/ide/ata.c @@ -1405,9 +1405,10 @@ rtems_ata_initialize(rtems_device_major_number major, CF_LE_W(buffer[ATA_IDENT_WORD_NUM_OF_CURR_LOG_HEADS]); ATA_DEV_INFO(ctrl_minor, dev).sectors = CF_LE_W(buffer[ATA_IDENT_WORD_NUM_OF_CURR_LOG_SECS]); - ATA_DEV_INFO(ctrl_minor, dev).lba_sectors = - (CF_LE_W(buffer[ATA_IDENT_WORD_NUM_OF_USR_SECS1]) << 16) + - CF_LE_W(buffer[ATA_IDENT_WORD_NUM_OF_USR_SECS0]); + ATA_DEV_INFO(ctrl_minor, dev).lba_sectors = + CF_LE_W(buffer[ATA_IDENT_WORD_NUM_OF_USR_SECS1]); + ATA_DEV_INFO(ctrl_minor, dev).lba_sectors <<= 16; + ATA_DEV_INFO(ctrl_minor, dev).lba_sectors += CF_LE_W(buffer[ATA_IDENT_WORD_NUM_OF_USR_SECS0]); ATA_DEV_INFO(ctrl_minor, dev).lba_avaible = (CF_LE_W(buffer[ATA_IDENT_WORD_CAPABILITIES]) >> 9) & 0x1; |