Changeset 7357f566 in rtems for c/src/libchip/ide/ide_ctrl_io.h


Ignore:
Timestamp:
Oct 8, 2009, 7:25:15 AM (11 years ago)
Author:
Chris Johns <chrisj@…>
Branches:
4.10, 4.11, 5, master
Children:
578e6fe
Parents:
c1fc5d4
Message:

2009-10-08 Chris Johns <chrisj@…>

  • libchip/ide/ata.c, c/src/libchip/ide/ata_internal.h: Remove the multiblock support from the ATA driver. Multiblock at the disk level should not be a global policy as a disk may have more than one partition with different block sizes. An IDE driver could decide to use the feature with DMA but this a driver specific design choice. Fixed bugs relating to variable block sizes and large block transfer.
  • c/src/libchip/ide/ide_controller.c, c/src/libchip/ide/ide_ctrl_cfg.h, c/src/libchip/ide/ide_ctrl_io.h: Changed the block size to 32bits so blocks of 64K or bigger can be transfered in a single driver call.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • c/src/libchip/ide/ide_ctrl_io.h

    rc1fc5d4 r7357f566  
    7575#define IDE_REGISTER_LBA3_LBA            0x0f
    7676
    77 #define IDE_REGISTER_ERROR_ICRC          0x80  /* Interface CRC error on */
    78                                                /* UDMA data transfer */
    79 #define IDE_REGISTER_ERROR_UNC           0x40  /* Uncorrectable data error */
    80 #define IDE_REGISTER_ERROR_WP            0x40  /* Write protect */
    81 #define IDE_REGISTER_ERROR_MC            0x20  /* Media changed */
    82 #define IDE_REGISTER_ERROR_IDNF          0x10  /* Sector ID not found */
    83 #define IDE_REGISTER_ERROR_MCR           0x08  /* Media change requested */
    84 #define IDE_REGISTER_ERROR_ABRT          0x04  /* Aborted command */
    85 #define IDE_REGISTER_ERROR_NM            0x02  /* No media */
    86 #define IDE_REGISTER_ERROR_AMNF          0x01  /* Address mark not found */
    87                                                /* --obsolette in ATA-4 */
    88 #define IDE_REGISTER_ERROR_MED           0x01  /* Media error is detected */
     77#define IDE_REGISTER_ERROR_ICRC          (1 << 7) /* Interface CRC error on */
     78                                                  /* UDMA data transfer */
     79#define IDE_REGISTER_ERROR_UNC           (1 << 6) /* Uncorrectable data error */
     80#if CCJ_COULD_NOT_FIND_THIS_ERROR
     81#define IDE_REGISTER_ERROR_WP            (1 << 6) /* Write protect */
     82#endif
     83#define IDE_REGISTER_ERROR_MC            (1 << 5) /* Media changed */
     84#define IDE_REGISTER_ERROR_IDNF          (1 << 4) /* Sector ID not found */
     85#define IDE_REGISTER_ERROR_MCR           (1 << 3) /* Media change requested */
     86                                                  /* obsolette */
     87#define IDE_REGISTER_ERROR_ABRT          (1 << 2) /* Aborted command */
     88#define IDE_REGISTER_ERROR_NM            (1 << 1) /* No media, End of Media. */
     89#define IDE_REGISTER_ERROR_AMNF          (1 << 0) /* Address mark not found */
     90                                                  /* --obsolette in ATA-4 */
     91#define IDE_REGISTER_ERROR_MED           (1 << 0) /* Media error is detected */
    8992
    9093/*
     
    104107void
    105108ide_controller_read_data_block(rtems_device_minor_number  minor,
    106                                uint16_t                   block_size,
     109                               uint32_t                   block_size,
    107110                               rtems_blkdev_sg_buffer    *bufs,
    108111                               uint32_t                  *cbuf,
     
    125128void
    126129ide_controller_write_data_block(rtems_device_minor_number  minor,
    127                                 uint16_t                   block_size,
     130                                uint32_t                   block_size,
    128131                                rtems_blkdev_sg_buffer    *bufs,
    129132                                uint32_t                  *cbuf,
Note: See TracChangeset for help on using the changeset viewer.