diff options
Diffstat (limited to 'patch-5.14-redhat.patch')
-rw-r--r-- | patch-5.14-redhat.patch | 160 |
1 files changed, 3 insertions, 157 deletions
diff --git a/patch-5.14-redhat.patch b/patch-5.14-redhat.patch index 4d03990a1..77eb7a574 100644 --- a/patch-5.14-redhat.patch +++ b/patch-5.14-redhat.patch @@ -20,15 +20,10 @@ drivers/hwtracing/coresight/coresight-etm4x-core.c | 19 + drivers/input/rmi4/rmi_driver.c | 124 +++-- drivers/iommu/iommu.c | 22 + - drivers/net/ethernet/intel/e1000e/e1000.h | 4 +- - drivers/net/ethernet/intel/e1000e/ich8lan.c | 31 +- - drivers/net/ethernet/intel/e1000e/ich8lan.h | 3 + - drivers/net/ethernet/intel/e1000e/netdev.c | 29 +- drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c | 4 + drivers/net/wireguard/main.c | 6 + drivers/pci/quirks.c | 24 + drivers/usb/core/hub.c | 7 + - fs/autofs/waitq.c | 2 +- fs/xfs/xfs_super.c | 8 - include/linux/efi.h | 22 +- include/linux/lsm_hook_defs.h | 2 + @@ -57,13 +52,13 @@ tools/testing/selftests/bpf/progs/linked_maps2.c | 76 --- tools/testing/selftests/bpf/progs/linked_vars1.c | 54 -- tools/testing/selftests/bpf/progs/linked_vars2.c | 55 --- - 59 files changed, 723 insertions(+), 1511 deletions(-) + 54 files changed, 671 insertions(+), 1494 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 2fb7012c3246..47718b4f2f75 100644 +index 110b305af27f..488feec76f0a 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -1474,9 +1474,9 @@ config HIGHMEM +@@ -1475,9 +1475,9 @@ config HIGHMEM If unsure, say n. config HIGHPTE @@ -1250,142 +1245,6 @@ index 63f0af10c403..195be16dbd39 100644 /* * Changes the default domain of an iommu group that has *only* one device * -diff --git a/drivers/net/ethernet/intel/e1000e/e1000.h b/drivers/net/ethernet/intel/e1000e/e1000.h -index 5b2143f4b1f8..3178efd98006 100644 ---- a/drivers/net/ethernet/intel/e1000e/e1000.h -+++ b/drivers/net/ethernet/intel/e1000e/e1000.h -@@ -113,7 +113,8 @@ enum e1000_boards { - board_pch2lan, - board_pch_lpt, - board_pch_spt, -- board_pch_cnp -+ board_pch_cnp, -+ board_pch_tgp - }; - - struct e1000_ps_page { -@@ -499,6 +500,7 @@ extern const struct e1000_info e1000_pch2_info; - extern const struct e1000_info e1000_pch_lpt_info; - extern const struct e1000_info e1000_pch_spt_info; - extern const struct e1000_info e1000_pch_cnp_info; -+extern const struct e1000_info e1000_pch_tgp_info; - extern const struct e1000_info e1000_es2_info; - - void e1000e_ptp_init(struct e1000_adapter *adapter); -diff --git a/drivers/net/ethernet/intel/e1000e/ich8lan.c b/drivers/net/ethernet/intel/e1000e/ich8lan.c -index a80336c4319b..f8b3e758a8d2 100644 ---- a/drivers/net/ethernet/intel/e1000e/ich8lan.c -+++ b/drivers/net/ethernet/intel/e1000e/ich8lan.c -@@ -4804,7 +4804,7 @@ static s32 e1000_reset_hw_ich8lan(struct e1000_hw *hw) - static s32 e1000_init_hw_ich8lan(struct e1000_hw *hw) - { - struct e1000_mac_info *mac = &hw->mac; -- u32 ctrl_ext, txdctl, snoop; -+ u32 ctrl_ext, txdctl, snoop, fflt_dbg; - s32 ret_val; - u16 i; - -@@ -4863,6 +4863,15 @@ static s32 e1000_init_hw_ich8lan(struct e1000_hw *hw) - snoop = (u32)~(PCIE_NO_SNOOP_ALL); - e1000e_set_pcie_no_snoop(hw, snoop); - -+ /* Enable workaround for packet loss issue on TGP PCH -+ * Do not gate DMA clock from the modPHY block -+ */ -+ if (mac->type >= e1000_pch_tgp) { -+ fflt_dbg = er32(FFLT_DBG); -+ fflt_dbg |= E1000_FFLT_DBG_DONT_GATE_WAKE_DMA_CLK; -+ ew32(FFLT_DBG, fflt_dbg); -+ } -+ - ctrl_ext = er32(CTRL_EXT); - ctrl_ext |= E1000_CTRL_EXT_RO_DIS; - ew32(CTRL_EXT, ctrl_ext); -@@ -5983,3 +5992,23 @@ const struct e1000_info e1000_pch_cnp_info = { - .phy_ops = &ich8_phy_ops, - .nvm_ops = &spt_nvm_ops, - }; -+ -+const struct e1000_info e1000_pch_tgp_info = { -+ .mac = e1000_pch_tgp, -+ .flags = FLAG_IS_ICH -+ | FLAG_HAS_WOL -+ | FLAG_HAS_HW_TIMESTAMP -+ | FLAG_HAS_CTRLEXT_ON_LOAD -+ | FLAG_HAS_AMT -+ | FLAG_HAS_FLASH -+ | FLAG_HAS_JUMBO_FRAMES -+ | FLAG_APME_IN_WUC, -+ .flags2 = FLAG2_HAS_PHY_STATS -+ | FLAG2_HAS_EEE, -+ .pba = 26, -+ .max_hw_frame_size = 9022, -+ .get_variants = e1000_get_variants_ich8lan, -+ .mac_ops = &ich8_mac_ops, -+ .phy_ops = &ich8_phy_ops, -+ .nvm_ops = &spt_nvm_ops, -+}; -diff --git a/drivers/net/ethernet/intel/e1000e/ich8lan.h b/drivers/net/ethernet/intel/e1000e/ich8lan.h -index e757896287eb..8f2a8f4ce0ee 100644 ---- a/drivers/net/ethernet/intel/e1000e/ich8lan.h -+++ b/drivers/net/ethernet/intel/e1000e/ich8lan.h -@@ -286,6 +286,9 @@ - /* Proprietary Latency Tolerance Reporting PCI Capability */ - #define E1000_PCI_LTR_CAP_LPT 0xA8 - -+/* Don't gate wake DMA clock */ -+#define E1000_FFLT_DBG_DONT_GATE_WAKE_DMA_CLK 0x1000 -+ - void e1000e_write_protect_nvm_ich8lan(struct e1000_hw *hw); - void e1000e_set_kmrn_lock_loss_workaround_ich8lan(struct e1000_hw *hw, - bool state); -diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c -index 757a54c39eef..774f849027f0 100644 ---- a/drivers/net/ethernet/intel/e1000e/netdev.c -+++ b/drivers/net/ethernet/intel/e1000e/netdev.c -@@ -51,6 +51,7 @@ static const struct e1000_info *e1000_info_tbl[] = { - [board_pch_lpt] = &e1000_pch_lpt_info, - [board_pch_spt] = &e1000_pch_spt_info, - [board_pch_cnp] = &e1000_pch_cnp_info, -+ [board_pch_tgp] = &e1000_pch_tgp_info, - }; - - struct e1000_reg_info { -@@ -7844,20 +7845,20 @@ static const struct pci_device_id e1000_pci_tbl[] = { - { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_CMP_I219_V11), board_pch_cnp }, - { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_CMP_I219_LM12), board_pch_spt }, - { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_CMP_I219_V12), board_pch_spt }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_LM13), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_V13), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_LM14), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_V14), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_LM15), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_V15), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_ADP_I219_LM16), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_ADP_I219_V16), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_ADP_I219_LM17), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_ADP_I219_V17), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_MTP_I219_LM18), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_MTP_I219_V18), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_MTP_I219_LM19), board_pch_cnp }, -- { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_MTP_I219_V19), board_pch_cnp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_LM13), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_V13), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_LM14), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_V14), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_LM15), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_TGP_I219_V15), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_ADP_I219_LM16), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_ADP_I219_V16), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_ADP_I219_LM17), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_ADP_I219_V17), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_MTP_I219_LM18), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_MTP_I219_V18), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_MTP_I219_LM19), board_pch_tgp }, -+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_PCH_MTP_I219_V19), board_pch_tgp }, - - { 0, 0, 0, 0, 0, 0, 0 } /* terminate list */ - }; diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c index 6924a6aacbd5..60461ff4deae 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c @@ -1489,19 +1348,6 @@ index 86658a81d284..5647f4756e97 100644 /* Lock the device, then check to see if we were * disconnected while waiting for the lock to succeed. */ usb_lock_device(hdev); -diff --git a/fs/autofs/waitq.c b/fs/autofs/waitq.c -index 16b5fca0626e..54c1f8b8b075 100644 ---- a/fs/autofs/waitq.c -+++ b/fs/autofs/waitq.c -@@ -358,7 +358,7 @@ int autofs_wait(struct autofs_sb_info *sbi, - qstr.len = strlen(p); - offset = p - name; - } -- qstr.hash = full_name_hash(dentry, name, qstr.len); -+ qstr.hash = full_name_hash(dentry, qstr.name, qstr.len); - - if (mutex_lock_interruptible(&sbi->wq_mutex)) { - kfree(name); diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index 2c9e26a44546..f96324912d6a 100644 --- a/fs/xfs/xfs_super.c |