mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1.0 KiB
36 lines
1.0 KiB
/* 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); |
|
int w5100_remove(struct device *dev); |
|
|
|
extern const struct dev_pm_ops w5100_pm_ops;
|
|
|