From 29c94fe28ec6ec2f2cbd08e5af9a1b665587b3fe Mon Sep 17 00:00:00 2001 From: Paul Spooren Date: Wed, 2 Jun 2021 10:09:58 -1000 Subject: [PATCH 1/5] build/json: fix DEVICE_PACKAGES The variable was missing in the definition of DEFAULT_DEVICE_VARS which caused it to contain wrong values, messing up the resulting JSON files. This patch adds the variable DEVICE_PACKAGES to DEFAULT_DEVICE_VARS. Suggested-by: Baptiste Jonglez Signed-off-by: Paul Spooren --- include/image.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/image.mk b/include/image.mk index d93ce7f233..0d0e3eaba1 100644 --- a/include/image.mk +++ b/include/image.mk @@ -422,7 +422,7 @@ DEFAULT_DEVICE_VARS := \ DEVICE_IMG_PREFIX SOC BOARD_NAME UIMAGE_MAGIC UIMAGE_NAME \ SUPPORTED_DEVICES IMAGE_METADATA KERNEL_ENTRY KERNEL_LOADADDR \ UBOOT_PATH IMAGE_SIZE \ - DEVICE_COMPAT_VERSION DEVICE_COMPAT_MESSAGE \ + DEVICE_PACKAGES DEVICE_COMPAT_VERSION DEVICE_COMPAT_MESSAGE \ DEVICE_VENDOR DEVICE_MODEL DEVICE_VARIANT \ DEVICE_ALT0_VENDOR DEVICE_ALT0_MODEL DEVICE_ALT0_VARIANT \ DEVICE_ALT1_VENDOR DEVICE_ALT1_MODEL DEVICE_ALT1_VARIANT \ From 766e0f584a325b0b80a97bbc86ca515d97c63001 Mon Sep 17 00:00:00 2001 From: David Bauer Date: Wed, 2 Jun 2021 19:34:01 +0200 Subject: [PATCH 2/5] kernel: ar8216: add get_features method Modifying PHY capabilities in the probe function broke with upstream commit 92ed2eb7f4b7 ("net: phy: probe the PHY before determining the supported features"). AR8316 switches only support 10/100 Mbit/s link modes because of this change. Provide a get_features method for the PHY driver, so Gigabit link mode will be advertised to link partners again. Signed-off-by: David Bauer --- .../generic/files/drivers/net/phy/ar8216.c | 43 +++++++++---------- 1 file changed, 20 insertions(+), 23 deletions(-) diff --git a/target/linux/generic/files/drivers/net/phy/ar8216.c b/target/linux/generic/files/drivers/net/phy/ar8216.c index ef0fc54949..dbcb1c41c4 100644 --- a/target/linux/generic/files/drivers/net/phy/ar8216.c +++ b/target/linux/generic/files/drivers/net/phy/ar8216.c @@ -2552,6 +2552,18 @@ ar8xxx_phy_config_aneg(struct phy_device *phydev) return genphy_config_aneg(phydev); } +static int +ar8xxx_get_features(struct phy_device *phydev) +{ + struct ar8xxx_priv *priv = phydev->priv; + + linkmode_copy(phydev->supported, PHY_BASIC_FEATURES); + if (ar8xxx_has_gige(priv)) + linkmode_set_bit(ETHTOOL_LINK_MODE_1000baseT_Full_BIT, phydev->supported); + + return 0; +} + static const u32 ar8xxx_phy_ids[] = { 0x004dd033, 0x004dd034, /* AR8327 */ @@ -2649,29 +2661,14 @@ ar8xxx_phy_probe(struct phy_device *phydev) found: priv->use_count++; - if (phydev->mdio.addr == 0) { - linkmode_zero(phydev->supported); - if (ar8xxx_has_gige(priv)) - linkmode_set_bit(ETHTOOL_LINK_MODE_1000baseT_Full_BIT, phydev->supported); - else - linkmode_set_bit(ETHTOOL_LINK_MODE_100baseT_Full_BIT, phydev->supported); - linkmode_copy(phydev->advertising, phydev->supported); + if (phydev->mdio.addr == 0 && priv->chip->config_at_probe) { + priv->phy = phydev; - if (priv->chip->config_at_probe) { - priv->phy = phydev; - - ret = ar8xxx_start(priv); - if (ret) - goto err_unregister_switch; - } - } else { - if (ar8xxx_has_gige(priv)) { - linkmode_zero(phydev->supported); - linkmode_set_bit(ETHTOOL_LINK_MODE_1000baseT_Full_BIT, phydev->supported); - linkmode_copy(phydev->advertising, phydev->supported); - } - if (priv->chip->phy_rgmii_set) - priv->chip->phy_rgmii_set(priv, phydev); + ret = ar8xxx_start(priv); + if (ret) + goto err_unregister_switch; + } else if (priv->chip->phy_rgmii_set) { + priv->chip->phy_rgmii_set(priv, phydev); } phydev->priv = priv; @@ -2746,7 +2743,6 @@ static struct phy_driver ar8xxx_phy_driver[] = { .phy_id = 0x004d0000, .name = "Atheros AR8216/AR8236/AR8316", .phy_id_mask = 0xffff0000, - .features = PHY_BASIC_FEATURES, .probe = ar8xxx_phy_probe, .remove = ar8xxx_phy_remove, .detach = ar8xxx_phy_detach, @@ -2754,6 +2750,7 @@ static struct phy_driver ar8xxx_phy_driver[] = { .config_aneg = ar8xxx_phy_config_aneg, .read_status = ar8xxx_phy_read_status, .soft_reset = ar8xxx_phy_soft_reset, + .get_features = ar8xxx_get_features, } }; From c5a8b85b72c79e302da0297093be329b3216c57b Mon Sep 17 00:00:00 2001 From: David Bauer Date: Wed, 2 Jun 2021 23:46:06 +0200 Subject: [PATCH 3/5] kernel: ar8216: remove soft_reset ar8xxx_soft_reset is effectively a NOP function. In the PHY state machine, the availability and result of a soft_reset function makes no difference for the code flow. Thus, we can safely remove this method. Signed-off-by: David Bauer --- target/linux/generic/files/drivers/net/phy/ar8216.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/target/linux/generic/files/drivers/net/phy/ar8216.c b/target/linux/generic/files/drivers/net/phy/ar8216.c index dbcb1c41c4..11cb18e4f3 100644 --- a/target/linux/generic/files/drivers/net/phy/ar8216.c +++ b/target/linux/generic/files/drivers/net/phy/ar8216.c @@ -2731,13 +2731,6 @@ ar8xxx_phy_remove(struct phy_device *phydev) ar8xxx_free(priv); } -static int -ar8xxx_phy_soft_reset(struct phy_device *phydev) -{ - /* we don't need an extra reset */ - return 0; -} - static struct phy_driver ar8xxx_phy_driver[] = { { .phy_id = 0x004d0000, @@ -2749,7 +2742,6 @@ static struct phy_driver ar8xxx_phy_driver[] = { .config_init = ar8xxx_phy_config_init, .config_aneg = ar8xxx_phy_config_aneg, .read_status = ar8xxx_phy_read_status, - .soft_reset = ar8xxx_phy_soft_reset, .get_features = ar8xxx_get_features, } }; From 2cd1a108290f48fd35373f91056c05277c289687 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Thu, 3 Jun 2021 05:38:53 +0200 Subject: [PATCH 4/5] mac80211: fix typo Remove stray parenthesis Signed-off-by: Felix Fietkau --- package/kernel/mac80211/files/lib/wifi/mac80211.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/kernel/mac80211/files/lib/wifi/mac80211.sh b/package/kernel/mac80211/files/lib/wifi/mac80211.sh index 02eabd0506..5eb7cc4c61 100644 --- a/package/kernel/mac80211/files/lib/wifi/mac80211.sh +++ b/package/kernel/mac80211/files/lib/wifi/mac80211.sh @@ -70,7 +70,7 @@ BEGIN { if (channel) { mode="NOHT" if (ht) mode="HT20" - if (vht && band != "1:")) mode="VHT80" + if (vht && band != "1:") mode="VHT80" if (he) mode="HE80" if (he && band == "1:") mode="HE20" sub("\\[", "", channel) From 4f2243d40a400aa1ce6ae5d06325f93b4d9463a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20=C5=A0tetiar?= Date: Thu, 3 Jun 2021 09:49:58 +0200 Subject: [PATCH 5/5] ubus: update to version 2021-06-03 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This update contains following changes: * ubusd: protect against too-short messages * ubusd: add per-client tx queue limit * ubusd: convert tx_queue to linked list Fixes: FS#1525 Signed-off-by: Petr Štetiar --- package/system/ubus/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package/system/ubus/Makefile b/package/system/ubus/Makefile index 54839e5514..885307107b 100644 --- a/package/system/ubus/Makefile +++ b/package/system/ubus/Makefile @@ -5,9 +5,9 @@ PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=$(PROJECT_GIT)/project/ubus.git -PKG_SOURCE_DATE:=2021-02-15 -PKG_SOURCE_VERSION:=2537be01858710e714c329153760c64fe3f8a73e -PKG_MIRROR_HASH:=da1f4959fbe3d51cbc6b7c08b24307f43a80911b395cac834b9f4161c195152f +PKG_SOURCE_DATE:=2021-06-03 +PKG_SOURCE_VERSION:=a8cf678230ed163ff7a07eb1e2c872f9d655460a +PKG_MIRROR_HASH:=aee34cd1c1aa0f1a459dda0b2c6cbdb6b66e67147ebd1bcbb2a16a2ef923d008 PKG_ABI_VERSION:=$(call abi_version_str,$(PKG_SOURCE_DATE)) CMAKE_INSTALL:=1