2009-11-12 Ralf Corsépius <ralf.corsepius@rtems.org>

* libchip/ide/ata.c (rtems_ata_initialize): Avoid implicit cast to uint16_t.
This commit is contained in:
Ralf Corsepius
2009-11-12 16:34:24 +00:00
parent b27799c311
commit d949482a3c
2 changed files with 5 additions and 3 deletions

View File

@@ -1,5 +1,6 @@
2009-11-12 Ralf Corsépius <ralf.corsepius@rtems.org> 2009-11-12 Ralf Corsépius <ralf.corsepius@rtems.org>
* libchip/ide/ata.c (rtems_ata_initialize): Avoid implicit cast to uint16_t.
* libchip/ide/ata.c (ata_non_data_request): Change arg from int to * libchip/ide/ata.c (ata_non_data_request): Change arg from int to
uint32_t (16bit ints are too small). uint32_t (16bit ints are too small).

View File

@@ -1406,8 +1406,9 @@ rtems_ata_initialize(rtems_device_major_number major,
ATA_DEV_INFO(ctrl_minor, dev).sectors = ATA_DEV_INFO(ctrl_minor, dev).sectors =
CF_LE_W(buffer[ATA_IDENT_WORD_NUM_OF_CURR_LOG_SECS]); CF_LE_W(buffer[ATA_IDENT_WORD_NUM_OF_CURR_LOG_SECS]);
ATA_DEV_INFO(ctrl_minor, dev).lba_sectors = 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_SECS1]);
CF_LE_W(buffer[ATA_IDENT_WORD_NUM_OF_USR_SECS0]); 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 = ATA_DEV_INFO(ctrl_minor, dev).lba_avaible =
(CF_LE_W(buffer[ATA_IDENT_WORD_CAPABILITIES]) >> 9) & 0x1; (CF_LE_W(buffer[ATA_IDENT_WORD_CAPABILITIES]) >> 9) & 0x1;