Projects
Essentials
r8168
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 21
View file
r8168.changes
Changed
@@ -1,4 +1,10 @@ ------------------------------------------------------------------- +Fri Aug 5 13:40:01 UTC 2022 - Dr. Werner Fink <werner@suse.de> + +- Update to new version 8.050.03 +- Add patch r8168-support-linux-5.19.patch to get it build with 5.19 + +------------------------------------------------------------------- Tue May 24 09:09:05 UTC 2022 - Dr. Werner Fink <werner@suse.de> - Add upstream patch r8168-kernel_5.18.patch
View file
r8168.spec
Changed
@@ -18,7 +18,7 @@ #!BuildIgnore: enough-build-resources Name: r8168 -Version: 8.050.00 +Version: 8.050.03 Release: 0 Summary: Device driver for RealTek Gigabit Ethernet controllers License: GPL-2.0-or-later @@ -30,6 +30,7 @@ Patch0: r8168-kernel_version.patch Patch1: r8168-configuration.patch Patch2: r8168-kernel_5.18.patch +Patch3: r8168-support-linux-5.19.patch BuildRequires: kernel-source BuildRequires: kernel-syms BuildRequires: libelf-devel @@ -59,6 +60,7 @@ %patch0 -b .p0 %patch1 -b .p1 %patch2 -b .p2 +%patch3 -p1 -b .p3 cp %{S:1} . cp %{S:2} .
View file
r8168-kernel_5.18.patch
Changed
@@ -4,7 +4,7 @@ --- src/r8168_n.c +++ src/r8168_n.c 2022-05-03 21:58:06.034047041 +0000 -@@ -3707,7 +3707,7 @@ static void rtl8168_mac_loopback_test(st +@@ -3723,7 +3723,7 @@ static void rtl8168_mac_loopback_test(st txd->opts2 = 0; while (1) { memset(tmpAddr, pattern++, len - 14); @@ -13,7 +13,7 @@ le64_to_cpu(mapping), len, DMA_TO_DEVICE); txd->opts1 = cpu_to_le32(DescOwn | FirstFrag | LastFrag | len); -@@ -3735,7 +3735,7 @@ static void rtl8168_mac_loopback_test(st +@@ -3751,7 +3751,7 @@ static void rtl8168_mac_loopback_test(st if (rx_len == len) { dma_sync_single_for_cpu(tp_to_dev(tp), le64_to_cpu(rxd->addr), tp->rx_buf_sz, DMA_FROM_DEVICE); i = memcmp(skb->data, rx_skb->data, rx_len); @@ -22,7 +22,7 @@ if (i == 0) { // dev_printk(KERN_INFO, tp_to_dev(tp), "loopback test finished\n",rx_len,len); break; -@@ -26412,11 +26412,11 @@ rtl8168_init_board(struct pci_dev *pdev, +@@ -26454,11 +26454,11 @@ rtl8168_init_board(struct pci_dev *pdev, if ((sizeof(dma_addr_t) > 4) && use_dac &&
View file
r8168-kernel_version.patch
Changed
@@ -48,7 +48,7 @@ static struct net_device_stats *rtl8168_get_stats(struct net_device *dev); static int rtl8168_rx_interrupt(struct net_device *, struct rtl8168_private *, napi_budget); static int rtl8168_change_mtu(struct net_device *dev, int new_mtu); -@@ -28748,8 +28757,12 @@ static void +@@ -28796,8 +28805,12 @@ static void rtl8168_tx_timeout(struct net_device *dev, unsigned int txqueue) #else static void @@ -61,7 +61,7 @@ { struct rtl8168_private *tp = netdev_priv(dev); unsigned long flags; -@@ -29435,7 +29448,7 @@ process_pkt: +@@ -29483,7 +29496,7 @@ process_pkt: if (rtl8168_rx_vlan_skb(tp, desc, skb) < 0) rtl8168_rx_skb(tp, skb);
View file
r8168-support-linux-5.19.patch
Added
@@ -0,0 +1,18 @@ +--- r8168-8.050.03/src/r8168_n.c ++++ r8168-8.050.03/src/r8168_n.c +@@ -121,6 +121,15 @@ + #define FIRMWARE_8168FP_3 "rtl_nic/rtl8168fp-3.fw" + #define FIRMWARE_8168FP_4 "rtl_nic/rtl8168fp-4.fw" + ++#if LINUX_VERSION_CODE > KERNEL_VERSION(5, 18, 0) ++static inline void netif_set_gso_max_size(struct net_device *dev, ++ unsigned int size) ++{ ++ /* dev->gso_max_size is read locklessly from sk_setup_caps() */ ++ WRITE_ONCE(dev->gso_max_size, size); ++} ++#endif ++ + /* Maximum number of multicast addresses to filter (vs. Rx-all-multicast). + The RTL chips use a 64 element hash table based on the Ethernet CRC. */ + static const int multicast_filter_limit = 32;
View file
r8168-8.050.00.tar.gz/src/r8168.h -> r8168-8.050.03.tar.gz/src/r8168.h
Changed
@@ -344,7 +344,7 @@ #define DASH_SUFFIX "" #endif -#define RTL8168_VERSION "8.050.00" NAPI_SUFFIX FIBER_SUFFIX REALWOW_SUFFIX DASH_SUFFIX +#define RTL8168_VERSION "8.050.03" NAPI_SUFFIX FIBER_SUFFIX REALWOW_SUFFIX DASH_SUFFIX #define MODULENAME "r8168" #define PFX MODULENAME ": " @@ -1599,6 +1599,7 @@ u32 HwFiberModeVer; u32 HwFiberStat; + u8 HwFiberLedMode; u8 HwSwitchMdiToFiber; u8 HwSuppSerDesPhyVer; @@ -1781,7 +1782,7 @@ #define NIC_MAX_PHYS_BUF_COUNT_LSO2 (16*4) #define GTTCPHO_SHIFT 18 -#define GTTCPHO_MAX 0x7fU +#define GTTCPHO_MAX 0x70U #define GTPKTSIZE_MAX 0x3ffffU #define TCPHO_SHIFT 18 #define TCPHO_MAX 0x3ffU @@ -1809,7 +1810,7 @@ #define NIC_RAMCODE_VERSION_CFG_METHOD_28 (0x0019) #define NIC_RAMCODE_VERSION_CFG_METHOD_29 (0x0055) #define NIC_RAMCODE_VERSION_CFG_METHOD_31 (0x0003) -#define NIC_RAMCODE_VERSION_CFG_METHOD_35 (0x0004) +#define NIC_RAMCODE_VERSION_CFG_METHOD_35 (0x0010) //hwoptimize #define HW_PATCH_SOC_LAN (BIT_0)
View file
r8168-8.050.00.tar.gz/src/r8168_fiber.h -> r8168-8.050.03.tar.gz/src/r8168_fiber.h
Changed
@@ -50,6 +50,12 @@ FIBER_STAT_MAX }; +enum { + FIBER_LED_MODE_DEFAULT = 0, + FIBER_LED_MODE_1, + FIBER_LED_MODE_MAX +}; + #define HW_FIBER_MODE_ENABLED(_M) ((_M)->HwFiberModeVer > 0) #define HW_FIBER_STATUS_CONNECTED(_M) (((_M)->HwFiberStat == FIBER_STAT_CONNECT_EEPROM) || ((_M)->HwFiberStat == FIBER_STAT_CONNECT_GPO)) #define HW_FIBER_STATUS_DISCONNECTED(_M) ((_M)->HwFiberStat == FIBER_STAT_DISCONNECT)
View file
r8168-8.050.00.tar.gz/src/r8168_n.c -> r8168-8.050.03.tar.gz/src/r8168_n.c
Changed
@@ -1911,7 +1911,8 @@ u32 data32; int i; - if (tp->HwSuppPhyOcpVer == 0) goto out; + if (tp->HwSuppPhyOcpVer == 0) + goto out; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18) WARN_ON_ONCE(RegAddr % 2); @@ -1935,7 +1936,8 @@ u16 RegAddr, u16 value) { - if (tp->rtk_enable_diag) return; + if (tp->rtk_enable_diag) + return; mdio_real_direct_write_phy_ocp(tp, RegAddr, value); } @@ -1947,7 +1949,8 @@ { u16 ocp_addr; - if (tp->rtk_enable_diag) return; + if (tp->rtk_enable_diag) + return; ocp_addr = map_phy_ocp_addr(PageNum, RegAddr); @@ -2022,7 +2025,8 @@ u16 RegAddr, u16 value) { - if (tp->rtk_enable_diag) return; + if (tp->rtk_enable_diag) + return; mdio_real_write(tp, RegAddr, value); } @@ -2047,7 +2051,8 @@ u32 data32; int i, value = 0; - if (tp->HwSuppPhyOcpVer == 0) goto out; + if (tp->HwSuppPhyOcpVer == 0) + goto out; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18) WARN_ON_ONCE(RegAddr % 2); @@ -2071,7 +2076,8 @@ static u32 mdio_direct_read_phy_ocp(struct rtl8168_private *tp, u16 RegAddr) { - if (tp->rtk_enable_diag) return 0xffffffff; + if (tp->rtk_enable_diag) + return 0xffffffff; return mdio_real_direct_read_phy_ocp(tp, RegAddr); } @@ -2082,7 +2088,8 @@ { u16 ocp_addr; - if (tp->rtk_enable_diag) return 0xffffffff; + if (tp->rtk_enable_diag) + return 0xffffffff; ocp_addr = map_phy_ocp_addr(PageNum, RegAddr); @@ -2160,7 +2167,8 @@ u32 rtl8168_mdio_read(struct rtl8168_private *tp, u16 RegAddr) { - if (tp->rtk_enable_diag) return 0xffffffff; + if (tp->rtk_enable_diag) + return 0xffffffff; return mdio_real_read(tp, RegAddr); } @@ -2430,7 +2438,8 @@ u16 ocp_reg_mutex_oob; u16 ocp_reg_mutex_prio; - if (!tp->DASH) return; + if (!tp->DASH) + return; switch (tp->mcfg) { case CFG_METHOD_11: @@ -2493,7 +2502,8 @@ u16 ocp_reg_mutex_oob; u16 ocp_reg_mutex_prio; - if (!tp->DASH) return; + if (!tp->DASH) + return; switch (tp->mcfg) { case CFG_METHOD_11: @@ -2556,7 +2566,8 @@ void rtl8168_dash2_disable_tx(struct rtl8168_private *tp) { - if (!tp->DASH) return; + if (!tp->DASH) + return; if (HW_DASH_SUPPORT_TYPE_2(tp) || HW_DASH_SUPPORT_TYPE_3(tp)) { u16 WaitCnt; @@ -2585,7 +2596,8 @@ void rtl8168_dash2_enable_tx(struct rtl8168_private *tp) { - if (!tp->DASH) return; + if (!tp->DASH) + return; if (HW_DASH_SUPPORT_TYPE_2(tp) || HW_DASH_SUPPORT_TYPE_3(tp)) { RTL_CMAC_W8(tp, CMAC_IBCR2, RTL_CMAC_R8(tp, CMAC_IBCR2) | BIT_0); @@ -2594,7 +2606,8 @@ void rtl8168_dash2_disable_rx(struct rtl8168_private *tp) { - if (!tp->DASH) return; + if (!tp->DASH) + return; if (HW_DASH_SUPPORT_TYPE_2(tp) || HW_DASH_SUPPORT_TYPE_3(tp)) { RTL_CMAC_W8(tp, CMAC_IBCR0, RTL_CMAC_R8(tp, CMAC_IBCR0) & ~( BIT_0 )); @@ -2603,7 +2616,8 @@ void rtl8168_dash2_enable_rx(struct rtl8168_private *tp) { - if (!tp->DASH) return; + if (!tp->DASH) + return; if (HW_DASH_SUPPORT_TYPE_2(tp) || HW_DASH_SUPPORT_TYPE_3(tp)) { RTL_CMAC_W8(tp, CMAC_IBCR0, RTL_CMAC_R8(tp, CMAC_IBCR0) | BIT_0); @@ -3412,7 +3426,8 @@ inline void rtl8168_enable_dash2_interrupt(struct rtl8168_private *tp) { - if (!tp->DASH) return; + if (!tp->DASH) + return; if (HW_DASH_SUPPORT_TYPE_2(tp) || HW_DASH_SUPPORT_TYPE_3(tp)) { RTL_CMAC_W8(tp, CMAC_IBIMR0, ( ISRIMR_DASH_TYPE2_ROK | ISRIMR_DASH_TYPE2_TOK | ISRIMR_DASH_TYPE2_TDU | ISRIMR_DASH_TYPE2_RDU | ISRIMR_DASH_TYPE2_RX_DISABLE_IDLE )); @@ -3422,7 +3437,8 @@ static inline void rtl8168_disable_dash2_interrupt(struct rtl8168_private *tp) { - if (!tp->DASH) return; + if (!tp->DASH) + return; if (HW_DASH_SUPPORT_TYPE_2(tp) || HW_DASH_SUPPORT_TYPE_3(tp)) { RTL_CMAC_W8(tp, CMAC_IBIMR0, 0); @@ -3803,7 +3819,8 @@ ~(ADVERTISE_1000HALF | ADVERTISE_1000FULL)); rtl8168_mdio_write(tp, MII_BMCR, BMCR_RESET | BMCR_ANENABLE); - if (rtl8168_wait_phy_reset_complete(tp) == 0) return; + if (rtl8168_wait_phy_reset_complete(tp) == 0) + return; if (netif_msg_link(tp)) printk(KERN_ERR "%s: PHY reset failed.\n", dev->name); @@ -3900,7 +3917,7 @@ csi_tmp |= (BIT_10 | BIT_11); rtl8168_eri_write(tp, 0xD4, 4, csi_tmp, ERIAR_ExGMAC); break; - case CFG_METHOD_21 ... CFG_METHOD_34: + case CFG_METHOD_21 ... CFG_METHOD_35: csi_tmp = rtl8168_eri_read(tp, 0xD4, 4, ERIAR_ExGMAC); csi_tmp |= (BIT_7 | BIT_8 | BIT_9 | BIT_10 | BIT_11 | BIT_12); rtl8168_eri_write(tp, 0xD4, 4, csi_tmp, ERIAR_ExGMAC); @@ -3927,7 +3944,7 @@ csi_tmp &= ~(BIT_10 | BIT_11); rtl8168_eri_write(tp, 0xD4, 4, csi_tmp, ERIAR_ExGMAC); break; - case CFG_METHOD_21 ... CFG_METHOD_34: + case CFG_METHOD_21 ... CFG_METHOD_35: csi_tmp = rtl8168_eri_read(tp, 0xD4, 4, ERIAR_ExGMAC); csi_tmp &= ~(BIT_7 | BIT_8 | BIT_9 | BIT_10 | BIT_11 | BIT_12); rtl8168_eri_write(tp, 0xD4, 4, csi_tmp, ERIAR_ExGMAC); @@ -3938,7 +3955,8 @@ static void rtl8168_hw_aspm_clkreq_enable(struct rtl8168_private *tp, bool enable) { - if (!tp->HwSuppAspmClkIntrLock) return; + if (!tp->HwSuppAspmClkIntrLock) + return; if (enable && aspm) { RTL_W8(tp, Config5, RTL_R8(tp, Config5) | ASPM_en); @@ -4846,7 +4864,8 @@ {
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.