xref: /linux/drivers/net/ethernet/asix/ax88796c_ioctl.h (revision 03ab8e6297acd1bc0eedaa050e2a1635c576fd11)
1*a97c69baSŁukasz Stelmach /* SPDX-License-Identifier: GPL-2.0-only */
2*a97c69baSŁukasz Stelmach /*
3*a97c69baSŁukasz Stelmach  * Copyright (c) 2010 ASIX Electronics Corporation
4*a97c69baSŁukasz Stelmach  * Copyright (c) 2020 Samsung Electronics Co., Ltd.
5*a97c69baSŁukasz Stelmach  *
6*a97c69baSŁukasz Stelmach  * ASIX AX88796C SPI Fast Ethernet Linux driver
7*a97c69baSŁukasz Stelmach  */
8*a97c69baSŁukasz Stelmach 
9*a97c69baSŁukasz Stelmach #ifndef _AX88796C_IOCTL_H
10*a97c69baSŁukasz Stelmach #define _AX88796C_IOCTL_H
11*a97c69baSŁukasz Stelmach 
12*a97c69baSŁukasz Stelmach #include <linux/ethtool.h>
13*a97c69baSŁukasz Stelmach #include <linux/netdevice.h>
14*a97c69baSŁukasz Stelmach 
15*a97c69baSŁukasz Stelmach #include "ax88796c_main.h"
16*a97c69baSŁukasz Stelmach 
17*a97c69baSŁukasz Stelmach extern const struct ethtool_ops ax88796c_ethtool_ops;
18*a97c69baSŁukasz Stelmach 
19*a97c69baSŁukasz Stelmach bool ax88796c_check_power(const struct ax88796c_device *ax_local);
20*a97c69baSŁukasz Stelmach bool ax88796c_check_power_and_wake(struct ax88796c_device *ax_local);
21*a97c69baSŁukasz Stelmach void ax88796c_set_power_saving(struct ax88796c_device *ax_local, u8 ps_level);
22*a97c69baSŁukasz Stelmach int ax88796c_mdio_read(struct mii_bus *mdiobus, int phy_id, int loc);
23*a97c69baSŁukasz Stelmach int ax88796c_mdio_write(struct mii_bus *mdiobus, int phy_id, int loc, u16 val);
24*a97c69baSŁukasz Stelmach int ax88796c_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd);
25*a97c69baSŁukasz Stelmach 
26*a97c69baSŁukasz Stelmach #endif
27