Revision 00c3a05b
b/hw/e1000.c | ||
---|---|---|
507 | 507 |
~(E1000_TXD_STAT_EC | E1000_TXD_STAT_LC | E1000_TXD_STAT_TU); |
508 | 508 |
dp->upper.data = cpu_to_le32(txd_upper); |
509 | 509 |
pci_dma_write(&s->dev, base + ((char *)&dp->upper - (char *)dp), |
510 |
(void *)&dp->upper, sizeof(dp->upper));
|
|
510 |
&dp->upper, sizeof(dp->upper)); |
|
511 | 511 |
return E1000_ICR_TXDW; |
512 | 512 |
} |
513 | 513 |
|
... | ... | |
534 | 534 |
while (s->mac_reg[TDH] != s->mac_reg[TDT]) { |
535 | 535 |
base = tx_desc_base(s) + |
536 | 536 |
sizeof(struct e1000_tx_desc) * s->mac_reg[TDH]; |
537 |
pci_dma_read(&s->dev, base, (void *)&desc, sizeof(desc));
|
|
537 |
pci_dma_read(&s->dev, base, &desc, sizeof(desc)); |
|
538 | 538 |
|
539 | 539 |
DBGOUT(TX, "index %d: %p : %x %x\n", s->mac_reg[TDH], |
540 | 540 |
(void *)(intptr_t)desc.buffer_addr, desc.lower.data, |
... | ... | |
714 | 714 |
desc_size = s->rxbuf_size; |
715 | 715 |
} |
716 | 716 |
base = rx_desc_base(s) + sizeof(desc) * s->mac_reg[RDH]; |
717 |
pci_dma_read(&s->dev, base, (void *)&desc, sizeof(desc));
|
|
717 |
pci_dma_read(&s->dev, base, &desc, sizeof(desc)); |
|
718 | 718 |
desc.special = vlan_special; |
719 | 719 |
desc.status |= (vlan_status | E1000_RXD_STAT_DD); |
720 | 720 |
if (desc.buffer_addr) { |
... | ... | |
724 | 724 |
copy_size = s->rxbuf_size; |
725 | 725 |
} |
726 | 726 |
pci_dma_write(&s->dev, le64_to_cpu(desc.buffer_addr), |
727 |
(void *)(buf + desc_offset + vlan_offset), |
|
728 |
copy_size); |
|
727 |
buf + desc_offset + vlan_offset, copy_size); |
|
729 | 728 |
} |
730 | 729 |
desc_offset += desc_size; |
731 | 730 |
desc.length = cpu_to_le16(desc_size); |
... | ... | |
739 | 738 |
} else { // as per intel docs; skip descriptors with null buf addr |
740 | 739 |
DBGOUT(RX, "Null RX descriptor!!\n"); |
741 | 740 |
} |
742 |
pci_dma_write(&s->dev, base, (void *)&desc, sizeof(desc));
|
|
741 |
pci_dma_write(&s->dev, base, &desc, sizeof(desc)); |
|
743 | 742 |
|
744 | 743 |
if (++s->mac_reg[RDH] * sizeof(desc) >= s->mac_reg[RDLEN]) |
745 | 744 |
s->mac_reg[RDH] = 0; |
Also available in: Unified diff