mirror of
https://github.com/torvalds/linux.git
synced 2024-11-28 07:01:32 +00:00
a97c69ba4f
ASIX AX88796[1] is a versatile ethernet adapter chip, that can be connected to a CPU with a 8/16-bit bus or with an SPI. This driver supports SPI connection. The driver has been ported from the vendor kernel for ARTIK5[2] boards. Several changes were made to adapt it to the current kernel which include: + updated DT configuration, + clock configuration moved to DT, + new timer, ethtool and gpio APIs, + dev_* instead of pr_* and custom printk() wrappers, + removed awkward vendor power managemtn. + introduced ethtool tunable to control SPI compression [1] https://www.asix.com.tw/products.php?op=pItemdetail&PItemID=104;65;86&PLine=65 [2] https://git.tizen.org/cgit/profile/common/platform/kernel/linux-3.10-artik/ The other ax88796 driver is for NE2000 compatible AX88796L chip. These chips are not compatible. Hence, two separate drivers are required. Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
27 lines
845 B
C
27 lines
845 B
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* Copyright (c) 2010 ASIX Electronics Corporation
|
|
* Copyright (c) 2020 Samsung Electronics Co., Ltd.
|
|
*
|
|
* ASIX AX88796C SPI Fast Ethernet Linux driver
|
|
*/
|
|
|
|
#ifndef _AX88796C_IOCTL_H
|
|
#define _AX88796C_IOCTL_H
|
|
|
|
#include <linux/ethtool.h>
|
|
#include <linux/netdevice.h>
|
|
|
|
#include "ax88796c_main.h"
|
|
|
|
extern const struct ethtool_ops ax88796c_ethtool_ops;
|
|
|
|
bool ax88796c_check_power(const struct ax88796c_device *ax_local);
|
|
bool ax88796c_check_power_and_wake(struct ax88796c_device *ax_local);
|
|
void ax88796c_set_power_saving(struct ax88796c_device *ax_local, u8 ps_level);
|
|
int ax88796c_mdio_read(struct mii_bus *mdiobus, int phy_id, int loc);
|
|
int ax88796c_mdio_write(struct mii_bus *mdiobus, int phy_id, int loc, u16 val);
|
|
int ax88796c_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd);
|
|
|
|
#endif
|