From: Sasha Levin Date: Sun, 6 Jun 2021 22:02:45 +0000 (-0400) Subject: Drop some patches X-Git-Tag: v4.4.272~84 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b15410348d172798bfdd5ac8e724dfd58b7bd954;p=thirdparty%2Fkernel%2Fstable-queue.git Drop some patches Signed-off-by: Sasha Levin --- diff --git a/queue-5.10/mt76-mt76x0e-fix-device-hang-during-suspend-resume.patch b/queue-5.10/mt76-mt76x0e-fix-device-hang-during-suspend-resume.patch deleted file mode 100644 index ba22395897d..00000000000 --- a/queue-5.10/mt76-mt76x0e-fix-device-hang-during-suspend-resume.patch +++ /dev/null @@ -1,152 +0,0 @@ -From 36d3502aceebd28e13b6465b9ca280dfc5aca573 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Fri, 7 May 2021 18:50:19 +0200 -Subject: mt76: mt76x0e: fix device hang during suspend/resume - -From: Lorenzo Bianconi - -[ Upstream commit 509559c35bcd23d5a046624b225cb3e99a9f1481 ] - -Similar to usb device, re-initialize mt76x0e device after resume in order -to fix mt7630e hang during suspend/resume - -Reported-by: Luca Trombin -Fixes: c2a4d9fbabfb9 ("mt76x0: inital split between pci and usb") -Signed-off-by: Lorenzo Bianconi -Signed-off-by: Kalle Valo -Link: https://lore.kernel.org/r/4812f9611624b34053c1592fd9c175b67d4ffcb4.1620406022.git.lorenzo@kernel.org -Signed-off-by: Sasha Levin ---- - .../net/wireless/mediatek/mt76/mt76x0/pci.c | 81 ++++++++++++++++++- - 1 file changed, 77 insertions(+), 4 deletions(-) - -diff --git a/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c b/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c -index b87d8e136cb9..a594ae11b1f7 100644 ---- a/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c -+++ b/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c -@@ -87,7 +87,7 @@ static const struct ieee80211_ops mt76x0e_ops = { - .reconfig_complete = mt76x02_reconfig_complete, - }; - --static int mt76x0e_register_device(struct mt76x02_dev *dev) -+static int mt76x0e_init_hardware(struct mt76x02_dev *dev, bool resume) - { - int err; - -@@ -100,9 +100,11 @@ static int mt76x0e_register_device(struct mt76x02_dev *dev) - if (err < 0) - return err; - -- err = mt76x02_dma_init(dev); -- if (err < 0) -- return err; -+ if (!resume) { -+ err = mt76x02_dma_init(dev); -+ if (err < 0) -+ return err; -+ } - - err = mt76x0_init_hardware(dev); - if (err < 0) -@@ -123,6 +125,17 @@ static int mt76x0e_register_device(struct mt76x02_dev *dev) - mt76_clear(dev, 0x110, BIT(9)); - mt76_set(dev, MT_MAX_LEN_CFG, BIT(13)); - -+ return 0; -+} -+ -+static int mt76x0e_register_device(struct mt76x02_dev *dev) -+{ -+ int err; -+ -+ err = mt76x0e_init_hardware(dev, false); -+ if (err < 0) -+ return err; -+ - err = mt76x0_register_device(dev); - if (err < 0) - return err; -@@ -167,6 +180,8 @@ mt76x0e_probe(struct pci_dev *pdev, const struct pci_device_id *id) - if (ret) - return ret; - -+ mt76_pci_disable_aspm(pdev); -+ - mdev = mt76_alloc_device(&pdev->dev, sizeof(*dev), &mt76x0e_ops, - &drv_ops); - if (!mdev) -@@ -220,6 +235,60 @@ mt76x0e_remove(struct pci_dev *pdev) - mt76_free_device(mdev); - } - -+#ifdef CONFIG_PM -+static int mt76x0e_suspend(struct pci_dev *pdev, pm_message_t state) -+{ -+ struct mt76_dev *mdev = pci_get_drvdata(pdev); -+ struct mt76x02_dev *dev = container_of(mdev, struct mt76x02_dev, mt76); -+ int i; -+ -+ mt76_worker_disable(&mdev->tx_worker); -+ for (i = 0; i < ARRAY_SIZE(mdev->phy.q_tx); i++) -+ mt76_queue_tx_cleanup(dev, mdev->phy.q_tx[i], true); -+ for (i = 0; i < ARRAY_SIZE(mdev->q_mcu); i++) -+ mt76_queue_tx_cleanup(dev, mdev->q_mcu[i], true); -+ napi_disable(&mdev->tx_napi); -+ -+ mt76_for_each_q_rx(mdev, i) -+ napi_disable(&mdev->napi[i]); -+ -+ mt76x02_dma_disable(dev); -+ mt76x02_mcu_cleanup(dev); -+ mt76x0_chip_onoff(dev, false, false); -+ -+ pci_enable_wake(pdev, pci_choose_state(pdev, state), true); -+ pci_save_state(pdev); -+ -+ return pci_set_power_state(pdev, pci_choose_state(pdev, state)); -+} -+ -+static int mt76x0e_resume(struct pci_dev *pdev) -+{ -+ struct mt76_dev *mdev = pci_get_drvdata(pdev); -+ struct mt76x02_dev *dev = container_of(mdev, struct mt76x02_dev, mt76); -+ int err, i; -+ -+ err = pci_set_power_state(pdev, PCI_D0); -+ if (err) -+ return err; -+ -+ pci_restore_state(pdev); -+ -+ mt76_worker_enable(&mdev->tx_worker); -+ -+ mt76_for_each_q_rx(mdev, i) { -+ mt76_queue_rx_reset(dev, i); -+ napi_enable(&mdev->napi[i]); -+ napi_schedule(&mdev->napi[i]); -+ } -+ -+ napi_enable(&mdev->tx_napi); -+ napi_schedule(&mdev->tx_napi); -+ -+ return mt76x0e_init_hardware(dev, true); -+} -+#endif /* CONFIG_PM */ -+ - static const struct pci_device_id mt76x0e_device_table[] = { - { PCI_DEVICE(0x14c3, 0x7610) }, - { PCI_DEVICE(0x14c3, 0x7630) }, -@@ -237,6 +306,10 @@ static struct pci_driver mt76x0e_driver = { - .id_table = mt76x0e_device_table, - .probe = mt76x0e_probe, - .remove = mt76x0e_remove, -+#ifdef CONFIG_PM -+ .suspend = mt76x0e_suspend, -+ .resume = mt76x0e_resume, -+#endif /* CONFIG_PM */ - }; - - module_pci_driver(mt76x0e_driver); --- -2.30.2 - diff --git a/queue-5.10/series b/queue-5.10/series index 536c09e6184..00f3f0fa09d 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -1,6 +1,5 @@ btrfs-tree-checker-do-not-error-out-if-extent-ref-ha.patch net-usb-cdc_ncm-don-t-spew-notifications.patch -mt76-mt76x0e-fix-device-hang-during-suspend-resume.patch hwmon-dell-smm-hwmon-fix-index-values.patch hwmon-pmbus-isl68137-remove-read_temperature_3-for-r.patch netfilter-conntrack-unregister-ipv4-sockopts-on-erro.patch diff --git a/queue-5.4/net-mlx5e-check-for-needed-capability-for-cvlan-matc.patch b/queue-5.4/net-mlx5e-check-for-needed-capability-for-cvlan-matc.patch deleted file mode 100644 index aec980c7d67..00000000000 --- a/queue-5.4/net-mlx5e-check-for-needed-capability-for-cvlan-matc.patch +++ /dev/null @@ -1,55 +0,0 @@ -From ae7489922492dcc2272199a53d4787b68a0d39d2 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 13 Apr 2021 14:35:22 +0300 -Subject: net/mlx5e: Check for needed capability for cvlan matching - -From: Roi Dayan - -[ Upstream commit afe93f71b5d3cdae7209213ec8ef25210b837b93 ] - -If not supported show an error and return instead of trying to offload -to the hardware and fail. - -Fixes: 699e96ddf47f ("net/mlx5e: Support offloading tc double vlan headers match") -Reported-by: Pablo Neira Ayuso -Signed-off-by: Roi Dayan -Signed-off-by: Saeed Mahameed -Signed-off-by: Sasha Levin ---- - drivers/net/ethernet/mellanox/mlx5/core/en_tc.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c -index fe7342e8a043..1a8990b1563e 100644 ---- a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c -+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c -@@ -1812,10 +1812,12 @@ static int __parse_cls_flower(struct mlx5e_priv *priv, - misc_parameters); - struct flow_rule *rule = flow_cls_offload_flow_rule(f); - struct flow_dissector *dissector = rule->match.dissector; -+ enum fs_flow_table_type fs_type; - u16 addr_type = 0; - u8 ip_proto = 0; - u8 *match_level; - -+ fs_type = mlx5e_is_eswitch_flow(flow) ? FS_FT_FDB : FS_FT_NIC_RX; - match_level = outer_match_level; - - if (dissector->used_keys & -@@ -1930,6 +1932,13 @@ static int __parse_cls_flower(struct mlx5e_priv *priv, - if (match.mask->vlan_id || - match.mask->vlan_priority || - match.mask->vlan_tpid) { -+ if (!MLX5_CAP_FLOWTABLE_TYPE(priv->mdev, ft_field_support.outer_second_vid, -+ fs_type)) { -+ NL_SET_ERR_MSG_MOD(extack, -+ "Matching on CVLAN is not supported"); -+ return -EOPNOTSUPP; -+ } -+ - if (match.key->vlan_tpid == htons(ETH_P_8021AD)) { - MLX5_SET(fte_match_set_misc, misc_c, - outer_second_svlan_tag, 1); --- -2.30.2 - diff --git a/queue-5.4/series b/queue-5.4/series index b4b293da523..b076b0bed3d 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -15,7 +15,6 @@ hid-pidff-fix-error-return-code-in-hid_pidff_init.patch hid-i2c-hid-fix-format-string-mismatch.patch net-sched-act_ct-fix-ct-template-allocation-for-zone.patch acpica-clean-up-context-mutex-during-object-deletion.patch -net-mlx5e-check-for-needed-capability-for-cvlan-matc.patch netfilter-nft_ct-skip-expectations-for-confirmed-con.patch netfilter-nfnetlink_cthelper-hit-ebusy-on-updates-if.patch ieee802154-fix-error-return-code-in-ieee802154_add_i.patch