Changeset a1f48f6 in mainline for uspace/srv/bd/ata_bd/ata_bd.h


Ignore:
Timestamp:
2009-08-22T18:36:30Z (15 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
1c1657c
Parents:
4ef117f8
Message:

Add LBA-48 addressing support.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/bd/ata_bd/ata_bd.h

    r4ef117f8 ra1f48f6  
    156156        uint16_t _vs8;
    157157        uint16_t _vs9;
     158
    158159        uint16_t serial_number[10];
    159160        uint16_t _vs20;
     
    162163        uint16_t firmware_rev[4];
    163164        uint16_t model_name[20];
     165
    164166        uint16_t max_rw_multiple;
    165167        uint16_t _res48;
     
    168170        uint16_t pio_timing;
    169171        uint16_t dma_timing;
     172
    170173        uint16_t validity;
    171174        uint16_t cur_cyl;
     
    175178        uint16_t cur_capacity1;
    176179        uint16_t mss;
    177         uint16_t total_lba_sec0;
    178         uint16_t total_lba_sec1;
     180        uint16_t total_lba28_0;
     181        uint16_t total_lba28_1;
    179182        uint16_t sw_dma;
    180183        uint16_t mw_dma;
     
    184187        uint16_t min_raw_pio_cycle;
    185188        uint16_t min_iordy_pio_cycle;
     189
    186190        uint16_t _res69;
    187191        uint16_t _res70;
    188         uint16_t _res71[1 + 127 - 71];
     192        uint16_t _res71;
     193        uint16_t _res72;
     194        uint16_t _res73;
     195        uint16_t _res74;
     196
     197        uint16_t queue_depth;
     198        uint16_t _res76[1 + 79 - 76];
     199        uint16_t version_maj;
     200        uint16_t version_min;
     201        uint16_t cmd_set0;
     202        uint16_t cmd_set1;
     203        uint16_t csf_sup_ext;
     204        uint16_t csf_enabled0;
     205        uint16_t csf_enabled1;
     206        uint16_t csf_default;
     207        uint16_t udma;
     208
     209        uint16_t _res89[1 + 99 - 89];
     210
     211        /* Total number of blocks in LBA-48 addressing */
     212        uint16_t total_lba48_0;
     213        uint16_t total_lba48_1;
     214        uint16_t total_lba48_2;
     215        uint16_t total_lba48_3;
     216
     217        /* Note: more fields are defined in ATA/ATAPI-7 */
     218        uint16_t _res104[1 + 127 - 104];
    189219        uint16_t _vs128[1 + 159 - 128];
    190220        uint16_t _res160[1 + 255 - 160];
     
    198228};
    199229
     230/** Bits of @c identify_data_t.cmd_set1 */
     231enum ata_cs1 {
     232        cs1_addr48      = 0x0400        /**< 48-bit address feature set */
     233};
     234
    200235/** Block addressing mode. */
    201236enum addr_mode {
    202         am_chs,
    203         am_lba28
     237        am_chs,         /**< CHS block addressing */
     238        am_lba28,       /**< LBA-28 block addressing */
     239        am_lba48        /**< LBA-48 block addressing */
    204240};
    205241
Note: See TracChangeset for help on using the changeset viewer.