summaryrefslogtreecommitdiffstats
path: root/drivers/net/liteeth.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/liteeth.c')
-rw-r--r--drivers/net/liteeth.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/drivers/net/liteeth.c b/drivers/net/liteeth.c
index 771f57eead..1781e26348 100644
--- a/drivers/net/liteeth.c
+++ b/drivers/net/liteeth.c
@@ -53,7 +53,7 @@
#define MAX_PKT_SIZE LITEETH_BUFFER_SIZE
struct liteeth {
- struct device_d *dev;
+ struct device *dev;
struct eth_device edev;
void __iomem *base;
void __iomem *mdio_base;
@@ -73,6 +73,8 @@ struct liteeth {
int rx_slot;
int num_rx_slots;
void __iomem *rx_base;
+
+ void *rx_buf;
};
static inline void litex_write8(void __iomem *addr, u8 val)
@@ -230,9 +232,9 @@ static int liteeth_eth_rx(struct eth_device *edev)
rx_slot = litex_read8(priv->base + LITEETH_WRITER_SLOT);
- memcpy(NetRxPackets[0], priv->rx_base + rx_slot * LITEETH_BUFFER_SIZE, len);
+ memcpy(priv->rx_buf, priv->rx_base + rx_slot * LITEETH_BUFFER_SIZE, len);
- net_receive(edev, NetRxPackets[0], len);
+ net_receive(edev, priv->rx_buf, len);
litex_write8(priv->base + LITEETH_WRITER_EV_PENDING, reg);
@@ -270,9 +272,9 @@ static int liteeth_set_ethaddr(struct eth_device *edev,
return 0;
}
-static int liteeth_probe(struct device_d *dev)
+static int liteeth_probe(struct device *dev)
{
- struct device_node *np = dev->device_node;
+ struct device_node *np = dev->of_node;
struct eth_device *edev;
void __iomem *buf_base;
struct liteeth *priv;
@@ -323,6 +325,8 @@ static int liteeth_probe(struct device_d *dev)
priv->tx_base = buf_base + priv->num_rx_slots * LITEETH_BUFFER_SIZE;
priv->tx_slot = 0;
+ priv->rx_buf = xmalloc(PKTSIZE);
+
edev->init = liteeth_init_dev;
edev->open = liteeth_eth_open;
edev->send = liteeth_eth_send;
@@ -365,8 +369,9 @@ static const struct of_device_id liteeth_dt_ids[] = {
}, {
}
};
+MODULE_DEVICE_TABLE(of, liteeth_dt_ids);
-static struct driver_d liteeth_driver = {
+static struct driver liteeth_driver = {
.name = DRV_NAME,
.probe = liteeth_probe,
.of_compatible = DRV_OF_COMPAT(liteeth_dt_ids),