From 61be023775ab1ccef072bd8116f0ccf740bf8708 Mon Sep 17 00:00:00 2001 From: Uwe Kleine-König Date: Sun, 14 Mar 2021 16:47:46 +0100 Subject: v7a: barebox update 2020.09.0 -> 2021.02.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit One new patch is required to fix a regression for USB on rpi3. Also USB on rpi3 requires CONFIG_USB_NOP_XCEIV=y now which is enabled in the rpi2 config now. For the beaglebone two patches are added fixing a regression related to a dts sync from upstream. All three patches were already sent to the barebox mailing list. Acked-by: Ahmad Fatoum Signed-off-by: Uwe Kleine-König --- .../bcm283X-Select-OF-clock-providers.patch | 30 ++++++++++++++++ .../net-phy-fix-waiting-for-link.patch | 35 +++++++++++++++++++ ...base-probe-simple-pm-bus-children-as-well.patch | 40 ++++++++++++++++++++++ .../platform-v7a/patches/barebox-2021.02.0/series | 6 ++++ 4 files changed, 111 insertions(+) create mode 100644 configs/platform-v7a/patches/barebox-2021.02.0/bcm283X-Select-OF-clock-providers.patch create mode 100644 configs/platform-v7a/patches/barebox-2021.02.0/net-phy-fix-waiting-for-link.patch create mode 100644 configs/platform-v7a/patches/barebox-2021.02.0/of-base-probe-simple-pm-bus-children-as-well.patch create mode 100644 configs/platform-v7a/patches/barebox-2021.02.0/series (limited to 'configs/platform-v7a/patches/barebox-2021.02.0') diff --git a/configs/platform-v7a/patches/barebox-2021.02.0/bcm283X-Select-OF-clock-providers.patch b/configs/platform-v7a/patches/barebox-2021.02.0/bcm283X-Select-OF-clock-providers.patch new file mode 100644 index 0000000..8b08428 --- /dev/null +++ b/configs/platform-v7a/patches/barebox-2021.02.0/bcm283X-Select-OF-clock-providers.patch @@ -0,0 +1,30 @@ +From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= +Date: Thu, 11 Mar 2021 13:10:47 +0100 +Subject: [PATCH] bcm283X: Select OF clock providers +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This makes available the fixed clock needed on rpi3 for USB. + +USB stopped working when the dwc driver started to require an otg clock. + +Fixes: f73ca701bb85 ("usb: dwc2: add clk dependency for probe via oftree") +Signed-off-by: Uwe Kleine-König +Link: https://lore.pengutronix.de/20210312133030.521569-1-u.kleine-koenig@pengutronix.de +--- + arch/arm/Kconfig | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig +index ab0bf030131c..f9be9d42ecff 100644 +--- a/arch/arm/Kconfig ++++ b/arch/arm/Kconfig +@@ -44,6 +44,7 @@ config ARCH_BCM283X + select GPIOLIB + select CLKDEV_LOOKUP + select COMMON_CLK ++ select COMMON_CLK_OF_PROVIDER + select CLOCKSOURCE_BCM283X + select ARM_AMBA + select HAS_DEBUG_LL diff --git a/configs/platform-v7a/patches/barebox-2021.02.0/net-phy-fix-waiting-for-link.patch b/configs/platform-v7a/patches/barebox-2021.02.0/net-phy-fix-waiting-for-link.patch new file mode 100644 index 0000000..cf42798 --- /dev/null +++ b/configs/platform-v7a/patches/barebox-2021.02.0/net-phy-fix-waiting-for-link.patch @@ -0,0 +1,35 @@ +From: Sascha Hauer +Date: Fri, 12 Mar 2021 11:13:09 +0100 +Subject: [PATCH] net: phy: fix waiting for link + +phydev->adjust_link() is called only from phy_update_status() when the +link status changes during that function. phydev->link is also updated +in genphy_update_link() called from phy_wait_aneg_done(), so it can +happen that phydev->link changes outside of phy_update_status(), thus +phydev->adjust_link is never called and no link change notice is +printed. + +Instead of calling genphy_update_link() from phy_wait_aneg_done(), call +phy_update_status(). This makes sure that a link change is properly +noticed. + +Fixes: 8f75aa496dcb ("net: reply to ping requests") +Signed-off-by: Sascha Hauer +Link: https://lore.pengutronix.de/20210312101309.29650-1-s.hauer@pengutronix.de +--- + drivers/net/phy/phy.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c +index 622acbe40dd9..e8e8dad5bd25 100644 +--- a/drivers/net/phy/phy.c ++++ b/drivers/net/phy/phy.c +@@ -571,7 +571,7 @@ int phy_wait_aneg_done(struct phy_device *phydev) + } + + do { +- genphy_update_link(phydev); ++ phy_update_status(phydev); + if (phydev->link == 1) + return 0; + } while (!is_timeout(start, PHY_AN_TIMEOUT * SECOND)); diff --git a/configs/platform-v7a/patches/barebox-2021.02.0/of-base-probe-simple-pm-bus-children-as-well.patch b/configs/platform-v7a/patches/barebox-2021.02.0/of-base-probe-simple-pm-bus-children-as-well.patch new file mode 100644 index 0000000..7873666 --- /dev/null +++ b/configs/platform-v7a/patches/barebox-2021.02.0/of-base-probe-simple-pm-bus-children-as-well.patch @@ -0,0 +1,40 @@ +From: Ahmad Fatoum +Date: Fri, 12 Mar 2021 08:27:46 +0100 +Subject: [PATCH] of: base: probe simple-pm-bus children as well + +Upstream is migrating device trees like those of the am33xx to use +simple-pm-bus, where applicable. These are buses that reference a clock +or a power domain that needs to be enabled in order to use devices on it. + +As we didn't yet support this binding, this broke the Beaglebone +and all other am33xx board since v2021.02.0. + +Fix this by adding simple-pm-bus to the of_default_bus_match_table. +Note that this is only an adequate solution for when the power domain +and clocks referenced are already enabled prior to barebox startup. + +For all other cases, driver support must be available for the clock +and power domains in questions and this driver must be extended to +make use of them. For the am33xx, the relevant buses are powered +and clocked on boot up, so we leave general support to another day.. + +Fixes: 6ea3de1b8ce7 ("dts: update to v5.11-rc1") +Signed-off-by: Ahmad Fatoum +Link: https://lore.pengutronix.de/20210312082218.17058-1-a.fatoum@pengutronix.de +--- + drivers/of/base.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/drivers/of/base.c b/drivers/of/base.c +index 8759099d7480..6fe02649ee53 100644 +--- a/drivers/of/base.c ++++ b/drivers/of/base.c +@@ -2272,6 +2272,8 @@ const char *of_get_model(void) + const struct of_device_id of_default_bus_match_table[] = { + { + .compatible = "simple-bus", ++ }, { ++ .compatible = "simple-pm-bus", + }, { + .compatible = "simple-mfd", + }, { diff --git a/configs/platform-v7a/patches/barebox-2021.02.0/series b/configs/platform-v7a/patches/barebox-2021.02.0/series new file mode 100644 index 0000000..0654fa5 --- /dev/null +++ b/configs/platform-v7a/patches/barebox-2021.02.0/series @@ -0,0 +1,6 @@ +# generated by git-ptx-patches +#tag:base --start-number 1 +of-base-probe-simple-pm-bus-children-as-well.patch +net-phy-fix-waiting-for-link.patch +bcm283X-Select-OF-clock-providers.patch +# ad5056773d1eb319e6b321f55c67cc0c - git-ptx-patches magic -- cgit v1.2.3