13d0407baSopenharmony_ci/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
23d0407baSopenharmony_ci/*
33d0407baSopenharmony_ci * Copyright (c) 2020 Fuzhou Rockchip Electronics Co., Ltd
43d0407baSopenharmony_ci */
53d0407baSopenharmony_ci
63d0407baSopenharmony_ci#ifndef __DWMAC_RK_TOOL_H__
73d0407baSopenharmony_ci#define __DWMAC_RK_TOOL_H__
83d0407baSopenharmony_ci
93d0407baSopenharmony_ci#include <linux/phy.h>
103d0407baSopenharmony_ci#include "stmmac.h"
113d0407baSopenharmony_ci
123d0407baSopenharmony_civoid dwmac_rk_set_rgmii_delayline(struct stmmac_priv *priv, int tx_delay, int rx_delay);
133d0407baSopenharmony_civoid dwmac_rk_get_rgmii_delayline(struct stmmac_priv *priv, int *tx_delay, int *rx_delay);
143d0407baSopenharmony_ciint dwmac_rk_get_phy_interface(struct stmmac_priv *priv);
153d0407baSopenharmony_ci
163d0407baSopenharmony_ciint dwmac_rk_create_loopback_sysfs(struct device *dev);
173d0407baSopenharmony_ciint dwmac_rk_remove_loopback_sysfs(struct device *device);
183d0407baSopenharmony_ci
193d0407baSopenharmony_ci#ifdef CONFIG_DWMAC_RK_AUTO_DELAYLINE
203d0407baSopenharmony_ciint dwmac_rk_get_rgmii_delayline_from_vendor(struct stmmac_priv *priv);
213d0407baSopenharmony_ciint dwmac_rk_search_rgmii_delayline(struct stmmac_priv *priv);
223d0407baSopenharmony_ci#endif
233d0407baSopenharmony_ci
243d0407baSopenharmony_ci#endif /* __DWMAC_RK_TOOL_H__ */
253d0407baSopenharmony_ci
26