mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 23:24:38 +00:00
net: pcnet: Stop converting kseg1->kseg0 addresses
Now that MIPS virt_to_phys can handle kseg1 addresses on MIPS32, stop manually converting addresses to their kseg0 equivalents in the pcnet driver. Signed-off-by: Paul Burton <paul.burton@imgtec.com>
This commit is contained in:
parent
2e4cc1c5d4
commit
4677d665a7
1 changed files with 6 additions and 9 deletions
|
@ -135,14 +135,11 @@ static void pcnet_halt (struct eth_device *dev);
|
|||
static int pcnet_probe (struct eth_device *dev, bd_t * bis, int dev_num);
|
||||
|
||||
static inline pci_addr_t pcnet_virt_to_mem(const struct eth_device *dev,
|
||||
void *addr, bool uncached)
|
||||
void *addr)
|
||||
{
|
||||
pci_dev_t devbusfn = (pci_dev_t)dev->priv;
|
||||
void *virt_addr = addr;
|
||||
|
||||
if (uncached)
|
||||
virt_addr = (void *)CKSEG0ADDR(addr);
|
||||
|
||||
return pci_virt_to_mem(devbusfn, virt_addr);
|
||||
}
|
||||
|
||||
|
@ -361,7 +358,7 @@ static int pcnet_init(struct eth_device *dev, bd_t *bis)
|
|||
*/
|
||||
lp->cur_rx = 0;
|
||||
for (i = 0; i < RX_RING_SIZE; i++) {
|
||||
addr = pcnet_virt_to_mem(dev, (*lp->rx_buf)[i], false);
|
||||
addr = pcnet_virt_to_mem(dev, (*lp->rx_buf)[i]);
|
||||
uc->rx_ring[i].base = cpu_to_le32(addr);
|
||||
uc->rx_ring[i].buf_length = cpu_to_le16(-PKT_BUF_SZ);
|
||||
uc->rx_ring[i].status = cpu_to_le16(0x8000);
|
||||
|
@ -393,9 +390,9 @@ static int pcnet_init(struct eth_device *dev, bd_t *bis)
|
|||
|
||||
uc->init_block.tlen_rlen = cpu_to_le16(TX_RING_LEN_BITS |
|
||||
RX_RING_LEN_BITS);
|
||||
addr = pcnet_virt_to_mem(dev, uc->rx_ring, true);
|
||||
addr = pcnet_virt_to_mem(dev, uc->rx_ring);
|
||||
uc->init_block.rx_ring = cpu_to_le32(addr);
|
||||
addr = pcnet_virt_to_mem(dev, uc->tx_ring, true);
|
||||
addr = pcnet_virt_to_mem(dev, uc->tx_ring);
|
||||
uc->init_block.tx_ring = cpu_to_le32(addr);
|
||||
|
||||
PCNET_DEBUG1("\ntlen_rlen=0x%x rx_ring=0x%x tx_ring=0x%x\n",
|
||||
|
@ -406,7 +403,7 @@ static int pcnet_init(struct eth_device *dev, bd_t *bis)
|
|||
* Tell the controller where the Init Block is located.
|
||||
*/
|
||||
barrier();
|
||||
addr = pcnet_virt_to_mem(dev, &lp->uc->init_block, true);
|
||||
addr = pcnet_virt_to_mem(dev, &lp->uc->init_block);
|
||||
pcnet_write_csr(dev, 1, addr & 0xffff);
|
||||
pcnet_write_csr(dev, 2, (addr >> 16) & 0xffff);
|
||||
|
||||
|
@ -464,7 +461,7 @@ static int pcnet_send(struct eth_device *dev, void *packet, int pkt_len)
|
|||
* Setup Tx ring. Caution: the write order is important here,
|
||||
* set the status with the "ownership" bits last.
|
||||
*/
|
||||
addr = pcnet_virt_to_mem(dev, packet, false);
|
||||
addr = pcnet_virt_to_mem(dev, packet);
|
||||
writew(-pkt_len, &entry->length);
|
||||
writel(0, &entry->misc);
|
||||
writel(addr, &entry->base);
|
||||
|
|
Loading…
Reference in a new issue