123456789101112131415161718192021222324252627282930313233343536 |
- /* SPDX-License-Identifier: GPL-2.0-or-later */
- /*
- * Ethernet driver for the WIZnet W5100 chip.
- *
- * Copyright (C) 2006-2008 WIZnet Co.,Ltd.
- * Copyright (C) 2012 Mike Sinkovsky <[email protected]>
- */
- enum {
- W5100,
- W5200,
- W5500,
- };
- struct w5100_ops {
- bool may_sleep;
- int chip_id;
- int (*read)(struct net_device *ndev, u32 addr);
- int (*write)(struct net_device *ndev, u32 addr, u8 data);
- int (*read16)(struct net_device *ndev, u32 addr);
- int (*write16)(struct net_device *ndev, u32 addr, u16 data);
- int (*readbulk)(struct net_device *ndev, u32 addr, u8 *buf, int len);
- int (*writebulk)(struct net_device *ndev, u32 addr, const u8 *buf,
- int len);
- int (*reset)(struct net_device *ndev);
- int (*init)(struct net_device *ndev);
- };
- void *w5100_ops_priv(const struct net_device *ndev);
- int w5100_probe(struct device *dev, const struct w5100_ops *ops,
- int sizeof_ops_priv, const void *mac_addr, int irq,
- int link_gpio);
- void w5100_remove(struct device *dev);
- extern const struct dev_pm_ops w5100_pm_ops;
|