letmd
struct letmd *tmd;
tmd = &lance_mem.letmd[current];
tmd = &lance_mem.letmd[current];
tmd = &lance_mem.letmd[start + i];
uint8_t *bits = &lance_mem.letmd[i].tmd1_bits;
struct letmd *letmd = lance_mem.letmd;
addr = (uint32_t)letmd;
for (i = 0; i < TX_DESC_NUM; i++, letmd++) {
letmd->tmd0 = (addr & 0xffff) + i * 512; /* data block size */
letmd->tmd1_hadr = (addr >> 16) & 0xff;
letmd->tmd1_bits = 0;
letmd->tmd2 = 0;
letmd->tmd3 = 0;
struct letmd *letmd = lance_mem.letmd;
addr = (uint32_t)letmd;
for (i = 0; i < TX_DESC_NUM; i++, letmd++) {
letmd->tmd0 = (addr & 0xffff) + i * 64; /* data block size */
letmd->tmd1_hadr = (addr >> 16) & 0xff;
letmd->tmd1_bits = LE_T1_STP | LE_T1_ENP;
letmd->tmd2 = -28;
letmd->tmd2 = -32;
letmd->tmd3 = 0;
lance_mem.letmd[i].tmd1_bits |= LE_T1_OWN;/* buffer is filled */
if (lance_mem.letmd[i].tmd1_bits & LE_T1_ERR) {
struct letmd letmd[TX_DESC_NUM];
volatile struct letmd *tmd;
struct letmd *tmd;
mem += sizeof(struct letmd) * sc->lsc.sc_ntbuf;
struct letmd tmd;
struct letmd tmd;
struct letmd tmd;
struct letmd tmd;
mem += sizeof(struct letmd) * sc->lsc.sc_ntbuf;
struct letmd tmd;
struct letmd tmd;
struct letmd tmd;
struct letmd tmd;
#define LE_TMDADDR(sc, bix) (sc->sc_tmdaddr + sizeof(struct letmd) * (bix))
struct letmd pcd_txdescs[PCN_NTXDESC];
PCN_CDTXOFF(__x), sizeof(struct letmd) * \
PCN_CDTXOFF(__x), sizeof(struct letmd) * __n, (ops)); \