255 return bits(d->
d2, 26,26);
257 return bits(d->
d2, 31, 31);
291 #define ADD_FIELD32(NAME, OFFSET, BITS) \
292 inline uint32_t NAME() { return bits(_data, OFFSET+BITS-1, OFFSET); } \
293 inline void NAME(uint32_t d) { replaceBits(_data, OFFSET+BITS-1, OFFSET,d); }
295 #define ADD_FIELD64(NAME, OFFSET, BITS) \
296 inline uint64_t NAME() { return bits(_data, OFFSET+BITS-1, OFFSET); } \
297 inline void NAME(uint64_t d) { replaceBits(_data, OFFSET+BITS-1, OFFSET,d); }
489 case 0:
return bsex() == 0 ? 2048 : 0;
490 case 1:
return bsex() == 0 ? 1024 : 16384;
491 case 2:
return bsex() == 0 ? 512 : 8192;
492 case 3:
return bsex() == 0 ? 256 : 4096;
564 unsigned bufLen() {
return pktlen() << 10; }
const uint8_t MULTICAST_TABLE_SIZE
ADD_FIELD32(pktlen, 0, 8)
const uint16_t RXDEE_TCPE
const uint32_t REG_CRCERRS
const uint8_t RCV_ADDRESS_TABLE_SIZE
ADD_FIELD32(interval, 0, 16)
struct iGbReg::RxDesc::@61::@63 legacy
const uint8_t PHY_GSTATUS
const uint8_t PHY_EPSTATUS
const uint32_t REG_RXCSUM
void serialize(CheckpointOut &cp) const override
Serialize an object.
const uint16_t RXDP_IPV4E
const uint32_t REG_SRRCTL
const uint8_t EEPROM_READ_OPCODE_SPI
const uint32_t REG_CTRL_EXT
ADD_FIELD64(tdbal, 0, 32)
bool isType(TxDesc *d, uint8_t type)
ADD_FIELD64(rdbal, 0, 32)
ADD_FIELD32(delay, 0, 16)
const uint8_t RXDT_ADV_SPLIT_A
const uint32_t STATS_REGS_SIZE
void serialize(CheckpointOut &cp) const
ADD_FIELD32(gpi_en, 0, 4)
const uint8_t TXD_ADVCNXT
const uint32_t REG_RXDCTL
#define UNSERIALIZE_SCALAR(scalar)
const uint16_t RXDS_UDPCS
const uint32_t REG_LEDCTL
const uint32_t REG_STATUS
uint8_t getCso(TxDesc *d)
const uint8_t RXDT_LEGACY
void paramOut(CheckpointOut &cp, const string &name, ExtMachInst const &machInst)
void replaceBits(T &val, int first, int last, B bit_val)
A convenience function to replace bits first to last of val with bit_val in place.
const uint32_t REG_TDWBAL
const uint32_t REG_SWFWSYNC
ADD_FIELD32(pthresh, 0, 6)
void unserialize(CheckpointIn &cp) override
Unserialize an object.
bool isContext(TxDesc *d)
const uint16_t EEPROM_CSUM
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
#define ULL(N)
uint64_t constant
bool isAdvDesc(TxDesc *d)
Basic support for object serialization.
ADD_FIELD32(eep_fw_semaphore, 0, 1)
#define SERIALIZE_SCALAR(scalar)
const uint8_t PHY_PSTATUS
const uint8_t EEPROM_RDSR_OPCODE_SPI
const uint16_t RXDS_DYNINT
struct iGbReg::RxDesc::@61::@64 adv_read
std::ostream CheckpointOut
bool isTypes(TxDesc *d, uint8_t t1, uint8_t t2)
void paramIn(CheckpointIn &cp, const string &name, ExtMachInst &machInst)
const Reg< T > & operator=(T d)
const uint16_t RXDS_TCPCS
ADD_FIELD32(cpu_mask, 0, 5)
const uint8_t EEPROM_SIZE
const uint16_t RXDP_IPV6E
void unserialize(CheckpointIn &cp)
const uint32_t REG_TXDCA_CTL
const uint8_t VLAN_FILTER_TABLE_SIZE
T bits(T val, int first, int last)
Extract the bitfield from position 'first' to 'last' (inclusive) from 'val' and right justify it...
uint8_t getType(TxDesc *d)
const uint8_t TXD_ADVDATA
const uint32_t REG_TXDCTL
uint8_t getCss(TxDesc *d)
ADD_FIELD32(txdw, 0, 1) ADD_FIELD32(txqe
struct iGbReg::RxDesc::@61::@65 adv_wb
const uint8_t RXDT_ADV_ONEBUF
ADD_FIELD32(pthresh, 0, 6)
ADD_FIELD32(iscsi_dis, 0, 1)
const uint32_t REG_TDWBAH