From: Greg Kroah-Hartman Date: Sun, 28 May 2023 16:56:55 +0000 (+0100) Subject: 5.15-stable patches X-Git-Tag: review~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e814d2be2c4c6f6e1d43cf1ab380d227f62fad48;p=thirdparty%2Fkernel%2Fstable-queue.git 5.15-stable patches added patches: 3c589_cs-fix-an-error-handling-path-in-tc589_probe.patch arm64-dts-imx8mn-var-som-fix-phy-detection-bug-by-adding-deassert-delay.patch firmware-arm_ffa-set-reserved-mbz-fields-to-zero-in-the-memory-descriptors.patch net-phy-mscc-add-vsc8502-to-module_device_table.patch regulator-mt6359-add-read-check-for-pmic-mt6359.patch --- diff --git a/queue-5.15/3c589_cs-fix-an-error-handling-path-in-tc589_probe.patch b/queue-5.15/3c589_cs-fix-an-error-handling-path-in-tc589_probe.patch new file mode 100644 index 00000000000..4affa87b300 --- /dev/null +++ b/queue-5.15/3c589_cs-fix-an-error-handling-path-in-tc589_probe.patch @@ -0,0 +1,49 @@ +From 640bf95b2c7c2981fb471acdafbd3e0458f8390d Mon Sep 17 00:00:00 2001 +From: Christophe JAILLET +Date: Sat, 20 May 2023 11:48:55 +0200 +Subject: 3c589_cs: Fix an error handling path in tc589_probe() + +From: Christophe JAILLET + +commit 640bf95b2c7c2981fb471acdafbd3e0458f8390d upstream. + +Should tc589_config() fail, some resources need to be released as already +done in the remove function. + +Fixes: 15b99ac17295 ("[PATCH] pcmcia: add return value to _config() functions") +Signed-off-by: Christophe JAILLET +Reviewed-by: Simon Horman +Link: https://lore.kernel.org/r/d8593ae867b24c79063646e36f9b18b0790107cb.1684575975.git.christophe.jaillet@wanadoo.fr +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + drivers/net/ethernet/3com/3c589_cs.c | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +--- a/drivers/net/ethernet/3com/3c589_cs.c ++++ b/drivers/net/ethernet/3com/3c589_cs.c +@@ -195,6 +195,7 @@ static int tc589_probe(struct pcmcia_dev + { + struct el3_private *lp; + struct net_device *dev; ++ int ret; + + dev_dbg(&link->dev, "3c589_attach()\n"); + +@@ -218,7 +219,15 @@ static int tc589_probe(struct pcmcia_dev + + dev->ethtool_ops = &netdev_ethtool_ops; + +- return tc589_config(link); ++ ret = tc589_config(link); ++ if (ret) ++ goto err_free_netdev; ++ ++ return 0; ++ ++err_free_netdev: ++ free_netdev(dev); ++ return ret; + } + + static void tc589_detach(struct pcmcia_device *link) diff --git a/queue-5.15/arm64-dts-imx8mn-var-som-fix-phy-detection-bug-by-adding-deassert-delay.patch b/queue-5.15/arm64-dts-imx8mn-var-som-fix-phy-detection-bug-by-adding-deassert-delay.patch new file mode 100644 index 00000000000..c6c605c4a13 --- /dev/null +++ b/queue-5.15/arm64-dts-imx8mn-var-som-fix-phy-detection-bug-by-adding-deassert-delay.patch @@ -0,0 +1,58 @@ +From f161cea5a20f3aeeb637a88ad1705fc2720b4d58 Mon Sep 17 00:00:00 2001 +From: Hugo Villeneuve +Date: Mon, 1 May 2023 13:05:32 -0400 +Subject: arm64: dts: imx8mn-var-som: fix PHY detection bug by adding deassert delay + +From: Hugo Villeneuve + +commit f161cea5a20f3aeeb637a88ad1705fc2720b4d58 upstream. + +While testing the ethernet interface on a Variscite symphony carrier +board using an imx8mn SOM with an onboard ADIN1300 PHY (EC hardware +configuration), the ethernet PHY is not detected. + +The ADIN1300 datasheet indicate that the "Management interface +active (t4)" state is reached at most 5ms after the reset signal is +deasserted. + +The device tree in Variscite custom git repository uses the following +property: + + phy-reset-post-delay = <20>; + +Add a new MDIO property 'reset-deassert-us' of 20ms to have the same +delay inside the ethphy node. Adding this property fixes the problem +with the PHY detection. + +Note that this SOM can also have an Atheros AR8033 PHY. In this case, +a 1ms deassert delay is sufficient. Add a comment to that effect. + +Fixes: ade0176dd8a0 ("arm64: dts: imx8mn-var-som: Add Variscite VAR-SOM-MX8MN System on Module") +Signed-off-by: Hugo Villeneuve +Signed-off-by: Shawn Guo +Signed-off-by: Greg Kroah-Hartman +--- + arch/arm64/boot/dts/freescale/imx8mn-var-som.dtsi | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +--- a/arch/arm64/boot/dts/freescale/imx8mn-var-som.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mn-var-som.dtsi +@@ -98,11 +98,17 @@ + #address-cells = <1>; + #size-cells = <0>; + +- ethphy: ethernet-phy@4 { ++ ethphy: ethernet-phy@4 { /* AR8033 or ADIN1300 */ + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <4>; + reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; + reset-assert-us = <10000>; ++ /* ++ * Deassert delay: ++ * ADIN1300 requires 5ms. ++ * AR8033 requires 1ms. ++ */ ++ reset-deassert-us = <20000>; + }; + }; + }; diff --git a/queue-5.15/firmware-arm_ffa-set-reserved-mbz-fields-to-zero-in-the-memory-descriptors.patch b/queue-5.15/firmware-arm_ffa-set-reserved-mbz-fields-to-zero-in-the-memory-descriptors.patch new file mode 100644 index 00000000000..8137730ce05 --- /dev/null +++ b/queue-5.15/firmware-arm_ffa-set-reserved-mbz-fields-to-zero-in-the-memory-descriptors.patch @@ -0,0 +1,59 @@ +From 111a833dc5cbef3d05b2a796a7e23cb7f6ff2192 Mon Sep 17 00:00:00 2001 +From: Sudeep Holla +Date: Wed, 3 May 2023 14:12:52 +0100 +Subject: firmware: arm_ffa: Set reserved/MBZ fields to zero in the memory descriptors + +From: Sudeep Holla + +commit 111a833dc5cbef3d05b2a796a7e23cb7f6ff2192 upstream. + +The transmit buffers allocated by the driver can be used to transmit data +by any messages/commands needing the buffer. However, it is not guaranteed +to have been zero-ed before every new transmission and hence it will just +contain residual value from the previous transmission. There are several +reserved fields in the memory descriptors that must be zero(MBZ). The +receiver can reject the transmission if any such MBZ fields are non-zero. + +While we can set the whole page to zero, it is not optimal as most of the +fields get initialised to the value required for the current transmission. + +So, just set the reserved/MBZ fields to zero in the memory descriptors +explicitly to honour the requirement and keep the receiver happy. + +Fixes: cc2195fe536c ("firmware: arm_ffa: Add support for MEM_* interfaces") +Reported-by: Marc Bonnici +Link: https://lore.kernel.org/r/20230503131252.12585-1-sudeep.holla@arm.com +Signed-off-by: Sudeep Holla +Signed-off-by: Greg Kroah-Hartman +--- + drivers/firmware/arm_ffa/driver.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +--- a/drivers/firmware/arm_ffa/driver.c ++++ b/drivers/firmware/arm_ffa/driver.c +@@ -451,12 +451,17 @@ ffa_setup_and_transmit(u32 func_id, void + ep_mem_access->receiver = args->attrs[idx].receiver; + ep_mem_access->attrs = args->attrs[idx].attrs; + ep_mem_access->composite_off = COMPOSITE_OFFSET(args->nattrs); ++ ep_mem_access->flag = 0; ++ ep_mem_access->reserved = 0; + } ++ mem_region->reserved_0 = 0; ++ mem_region->reserved_1 = 0; + mem_region->ep_count = args->nattrs; + + composite = buffer + COMPOSITE_OFFSET(args->nattrs); + composite->total_pg_cnt = ffa_get_num_pages_sg(args->sg); + composite->addr_range_cnt = num_entries; ++ composite->reserved = 0; + + length = COMPOSITE_CONSTITUENTS_OFFSET(args->nattrs, num_entries); + frag_len = COMPOSITE_CONSTITUENTS_OFFSET(args->nattrs, 0); +@@ -491,6 +496,7 @@ ffa_setup_and_transmit(u32 func_id, void + + constituents->address = sg_phys(args->sg); + constituents->pg_cnt = args->sg->length / FFA_PAGE_SIZE; ++ constituents->reserved = 0; + constituents++; + frag_len += sizeof(struct ffa_mem_region_addr_range); + } while ((args->sg = sg_next(args->sg))); diff --git a/queue-5.15/net-phy-mscc-add-vsc8502-to-module_device_table.patch b/queue-5.15/net-phy-mscc-add-vsc8502-to-module_device_table.patch new file mode 100644 index 00000000000..89b3c9f1d29 --- /dev/null +++ b/queue-5.15/net-phy-mscc-add-vsc8502-to-module_device_table.patch @@ -0,0 +1,31 @@ +From 57fb54ab9f6945e204740b696bd4cee61ee04e5e Mon Sep 17 00:00:00 2001 +From: David Epping +Date: Tue, 23 May 2023 17:31:05 +0200 +Subject: net: phy: mscc: add VSC8502 to MODULE_DEVICE_TABLE + +From: David Epping + +commit 57fb54ab9f6945e204740b696bd4cee61ee04e5e upstream. + +The mscc driver implements support for VSC8502, so its ID should be in +the MODULE_DEVICE_TABLE for automatic loading. + +Signed-off-by: David Epping +Fixes: d3169863310d ("net: phy: mscc: add support for VSC8502") +Reviewed-by: Vladimir Oltean +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + drivers/net/phy/mscc/mscc_main.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/net/phy/mscc/mscc_main.c ++++ b/drivers/net/phy/mscc/mscc_main.c +@@ -2664,6 +2664,7 @@ static struct phy_driver vsc85xx_driver[ + module_phy_driver(vsc85xx_driver); + + static struct mdio_device_id __maybe_unused vsc85xx_tbl[] = { ++ { PHY_ID_VSC8502, 0xfffffff0, }, + { PHY_ID_VSC8504, 0xfffffff0, }, + { PHY_ID_VSC8514, 0xfffffff0, }, + { PHY_ID_VSC8530, 0xfffffff0, }, diff --git a/queue-5.15/regulator-mt6359-add-read-check-for-pmic-mt6359.patch b/queue-5.15/regulator-mt6359-add-read-check-for-pmic-mt6359.patch new file mode 100644 index 00000000000..b933c42a84d --- /dev/null +++ b/queue-5.15/regulator-mt6359-add-read-check-for-pmic-mt6359.patch @@ -0,0 +1,38 @@ +From a511637502b1caa135046d0f8fdabd55a31af8ef Mon Sep 17 00:00:00 2001 +From: Sen Chu +Date: Thu, 18 May 2023 12:06:46 +0800 +Subject: regulator: mt6359: add read check for PMIC MT6359 + +From: Sen Chu + +commit a511637502b1caa135046d0f8fdabd55a31af8ef upstream. + +Add hardware version read check for PMIC MT6359 + +Signed-off-by: Sen Chu +--- + drivers/regulator/mt6359-regulator.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +--- a/drivers/regulator/mt6359-regulator.c ++++ b/drivers/regulator/mt6359-regulator.c +@@ -951,9 +951,12 @@ static int mt6359_regulator_probe(struct + struct regulator_config config = {}; + struct regulator_dev *rdev; + struct mt6359_regulator_info *mt6359_info; +- int i, hw_ver; ++ int i, hw_ver, ret; ++ ++ ret = regmap_read(mt6397->regmap, MT6359P_HWCID, &hw_ver); ++ if (ret) ++ return ret; + +- regmap_read(mt6397->regmap, MT6359P_HWCID, &hw_ver); + if (hw_ver >= MT6359P_CHIP_VER) + mt6359_info = mt6359p_regulators; + else diff --git a/queue-5.15/series b/queue-5.15/series index a98dade9281..e44f0a7d235 100644 --- a/queue-5.15/series +++ b/queue-5.15/series @@ -62,3 +62,8 @@ net-mlx5-dr-fix-crc32-calculation-to-work-on-big-endian-be-cpus.patch net-mlx5-dr-check-force-loopback-rc-qp-capability-independently-from-roce.patch net-mlx5-fix-error-message-when-failing-to-allocate-device-memory.patch net-mlx5-devcom-fix-error-flow-in-mlx5_devcom_register_device.patch +arm64-dts-imx8mn-var-som-fix-phy-detection-bug-by-adding-deassert-delay.patch +firmware-arm_ffa-set-reserved-mbz-fields-to-zero-in-the-memory-descriptors.patch +regulator-mt6359-add-read-check-for-pmic-mt6359.patch +3c589_cs-fix-an-error-handling-path-in-tc589_probe.patch +net-phy-mscc-add-vsc8502-to-module_device_table.patch