[U-Boot] [PATCH v2 4/7] net/ethoc: support device tree
Max Filippov
jcmvbkbc at gmail.com
Fri Aug 5 17:26:18 CEST 2016
Add .of_match table and .ofdata_to_platdata callback to allow for ethoc
device configuration from the device tree.
Signed-off-by: Max Filippov <jcmvbkbc at gmail.com>
Acked-by: Joe Hershberger <joe.hershberger at ni.com>
---
drivers/net/ethoc.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/drivers/net/ethoc.c b/drivers/net/ethoc.c
index 4846c58..a5c4b46 100644
--- a/drivers/net/ethoc.c
+++ b/drivers/net/ethoc.c
@@ -523,6 +523,14 @@ static void ethoc_stop(struct udevice *dev)
ethoc_disable_rx_and_tx(priv);
}
+static int ethoc_ofdata_to_platdata(struct udevice *dev)
+{
+ struct ethoc_eth_pdata *pdata = dev_get_platdata(dev);
+
+ pdata->eth_pdata.iobase = dev_get_addr(dev);
+ return 0;
+}
+
static int ethoc_probe(struct udevice *dev)
{
struct ethoc_eth_pdata *pdata = dev_get_platdata(dev);
@@ -549,9 +557,16 @@ static const struct eth_ops ethoc_ops = {
.write_hwaddr = ethoc_write_hwaddr,
};
+static const struct udevice_id ethoc_ids[] = {
+ { .compatible = "opencores,ethoc" },
+ { }
+};
+
U_BOOT_DRIVER(ethoc) = {
.name = "ethoc",
.id = UCLASS_ETH,
+ .of_match = ethoc_ids,
+ .ofdata_to_platdata = ethoc_ofdata_to_platdata,
.probe = ethoc_probe,
.remove = ethoc_remove,
.ops = ðoc_ops,
--
2.1.4
More information about the U-Boot
mailing list