18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 28c2ecf20Sopenharmony_ci/* r8169.h: RealTek 8169/8168/8101 ethernet driver. 38c2ecf20Sopenharmony_ci * 48c2ecf20Sopenharmony_ci * Copyright (c) 2002 ShuChen <shuchen@realtek.com.tw> 58c2ecf20Sopenharmony_ci * Copyright (c) 2003 - 2007 Francois Romieu <romieu@fr.zoreil.com> 68c2ecf20Sopenharmony_ci * Copyright (c) a lot of people too. Please respect their work. 78c2ecf20Sopenharmony_ci * 88c2ecf20Sopenharmony_ci * See MAINTAINERS file for support contact information. 98c2ecf20Sopenharmony_ci */ 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci#include <linux/types.h> 128c2ecf20Sopenharmony_ci#include <linux/phy.h> 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_cienum mac_version { 158c2ecf20Sopenharmony_ci /* support for ancient RTL_GIGA_MAC_VER_01 has been removed */ 168c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_02, 178c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_03, 188c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_04, 198c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_05, 208c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_06, 218c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_07, 228c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_08, 238c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_09, 248c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_10, 258c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_11, 268c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_12, 278c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_13, 288c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_14, 298c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_16, 308c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_17, 318c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_18, 328c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_19, 338c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_20, 348c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_21, 358c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_22, 368c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_23, 378c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_24, 388c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_25, 398c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_26, 408c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_27, 418c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_28, 428c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_29, 438c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_30, 448c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_31, 458c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_32, 468c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_33, 478c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_34, 488c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_35, 498c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_36, 508c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_37, 518c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_38, 528c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_39, 538c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_40, 548c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_41, 558c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_42, 568c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_43, 578c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_44, 588c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_45, 598c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_46, 608c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_47, 618c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_48, 628c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_49, 638c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_50, 648c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_51, 658c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_52, 668c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_60, 678c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_61, 688c2ecf20Sopenharmony_ci RTL_GIGA_MAC_VER_63, 698c2ecf20Sopenharmony_ci RTL_GIGA_MAC_NONE 708c2ecf20Sopenharmony_ci}; 718c2ecf20Sopenharmony_ci 728c2ecf20Sopenharmony_cistruct rtl8169_private; 738c2ecf20Sopenharmony_ci 748c2ecf20Sopenharmony_civoid r8169_apply_firmware(struct rtl8169_private *tp); 758c2ecf20Sopenharmony_ciu16 rtl8168h_2_get_adc_bias_ioffset(struct rtl8169_private *tp); 768c2ecf20Sopenharmony_ciu8 rtl8168d_efuse_read(struct rtl8169_private *tp, int reg_addr); 778c2ecf20Sopenharmony_civoid r8169_hw_phy_config(struct rtl8169_private *tp, struct phy_device *phydev, 788c2ecf20Sopenharmony_ci enum mac_version ver); 79