Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/nic/e1k/e1k.h

    r9f0fb84 rc4be33a  
    8282} e1000_tx_descriptor_t;
    8383
    84 /** E1000 boards */
    85 typedef enum {
    86         E1000_82540,
    87         E1000_82541,
    88         E1000_82541REV2,
    89         E1000_82545,
    90         E1000_82546,
    91         E1000_82547,
    92         E1000_82572,
    93         E1000_80003ES2
    94 } e1000_board_t;
    95 
    96 typedef struct {
    97         uint32_t eerd_start;
    98         uint32_t eerd_done;
    99        
    100         uint32_t eerd_address_offset;
    101         uint32_t eerd_data_offset;
    102 } e1000_info_t;
    103 
    10484/** VLAN tag bits */
    105 typedef enum {
     85enum e1000_vlantag {
    10686        VLANTAG_CFI = (1 << 12),  /**< Canonical Form Indicator */
    107 } e1000_vlantag_t;
     87};
    10888
    10989/** Transmit descriptor COMMAND field bits */
    110 typedef enum {
     90enum e1000_txdescriptor_command {
    11191        TXDESCRIPTOR_COMMAND_VLE = (1 << 6),   /**< VLAN Packet Enable */
    11292        TXDESCRIPTOR_COMMAND_RS = (1 << 3),    /**< Report Status */
    11393        TXDESCRIPTOR_COMMAND_IFCS = (1 << 1),  /**< Insert FCS */
    11494        TXDESCRIPTOR_COMMAND_EOP = (1 << 0)    /**< End Of Packet */
    115 } e1000_txdescriptor_command_t;
     95};
    11696
    11797/** Transmit descriptor STATUS field bits */
    118 typedef enum {
     98enum e1000_txdescriptor_status {
    11999        TXDESCRIPTOR_STATUS_DD = (1 << 0)  /**< Descriptor Done */
    120 } e1000_txdescriptor_status_t;
     100};
    121101
    122102/** E1000 Registers */
    123 typedef enum {
     103enum e1000_registers {
    124104        E1000_CTRL = 0x0,      /**< Device Control Register */
    125105        E1000_STATUS = 0x8,    /**< Device Status Register */
     
    150130        E1000_IMS = 0xD0,      /**< Interrupt Mask Set/Read Register */
    151131        E1000_IMC = 0xD8       /**< Interrupt Mask Clear Register */
    152 } e1000_registers_t;
     132};
     133
     134/** EEPROM Read Register fields */
     135enum e1000_eerd {
     136        /** Start Read */
     137        EERD_START = (1 << 0),
     138        /** Read Done */
     139        EERD_DONE = (1 << 4),
     140        /** Read Done for 82541xx and 82547GI/EI */
     141        EERD_DONE_82541XX_82547GI_EI = (1 << 1),
     142        /** Read Address offset */
     143        EERD_ADDRESS_OFFSET = 8,
     144        /** Read Address offset for 82541xx and 82547GI/EI */
     145        EERD_ADDRESS_OFFSET_82541XX_82547GI_EI = 2,
     146        /** Read Data */
     147        EERD_DATA_OFFSET = 16
     148};
    153149
    154150/** Device Control Register fields */
    155 typedef enum {
     151enum e1000_ctrl {
    156152        CTRL_FD = (1 << 0),    /**< Full-Duplex */
    157153        CTRL_LRST = (1 << 3),  /**< Link Reset */
     
    180176        CTRL_VME = (1 << 30),      /**< VLAN Mode Enable */
    181177        CTRL_PHY_RST = (1 << 31)   /**< PHY Reset */
    182 } e1000_ctrl_t;
     178};
    183179
    184180/** Device Status Register fields */
    185 typedef enum {
     181enum e1000_status {
    186182        STATUS_FD = (1 << 0),  /**< Link Full Duplex configuration Indication */
    187183        STATUS_LU = (1 << 1),  /**< Link Up Indication */
     
    201197        /** Link speed setting 1000 Mb/s value variant B */
    202198        STATUS_SPEED_1000B = 3,
    203 } e1000_status_t;
     199};
    204200
    205201/** Transmit IPG Register fields
     
    208204 *
    209205 */
    210 typedef enum {
     206enum e1000_tipg {
    211207        TIPG_IPGT_SHIFT = 0,    /**< IPG Transmit Time shift */
    212208        TIPG_IPGR1_SHIFT = 10,  /**< IPG Receive Time 1 */
    213209        TIPG_IPGR2_SHIFT = 20   /**< IPG Receive Time 2 */
    214 } e1000_tipg_t;
     210};
    215211
    216212/** Transmit Control Register fields */
    217 typedef enum {
     213enum e1000_tctl {
    218214        TCTL_EN = (1 << 1),    /**< Transmit Enable */
    219215        TCTL_PSP =  (1 << 3),  /**< Pad Short Packets */
    220216        TCTL_CT_SHIFT = 4,     /**< Collision Threshold shift */
    221217        TCTL_COLD_SHIFT = 12   /**< Collision Distance shift */
    222 } e1000_tctl_t;
     218};
    223219
    224220/** ICR register fields */
    225 typedef enum {
     221enum e1000_icr {
    226222        ICR_TXDW = (1 << 0),  /**< Transmit Descriptor Written Back */
    227223        ICR_RXT0 = (1 << 7)   /**< Receiver Timer Interrupt */
    228 } e1000_icr_t;
     224};
    229225
    230226/** RAH register fields */
    231 typedef enum {
     227enum e1000_rah {
    232228        RAH_AV = (1 << 31)   /**< Address Valid */
    233 } e1000_rah_t;
     229};
    234230
    235231/** RCTL register fields */
    236 typedef enum {
     232enum e1000_rctl {
    237233        RCTL_EN = (1 << 1),    /**< Receiver Enable */
    238234        RCTL_SBP = (1 << 2),   /**< Store Bad Packets */
     
    241237        RCTL_BAM = (1 << 15),  /**< Broadcast Accept Mode */
    242238        RCTL_VFE = (1 << 18)   /**< VLAN Filter Enable */
    243 } e1000_rctl_t;
     239};
    244240
    245241#endif
Note: See TracChangeset for help on using the changeset viewer.