* [DistroKit] [PATCH] v7a: barebox: fix regression in AM335x USB
@ 2020-03-02 9:46 Ahmad Fatoum
2020-03-05 16:42 ` Robert Schwebel
0 siblings, 1 reply; 2+ messages in thread
From: Ahmad Fatoum @ 2020-03-02 9:46 UTC (permalink / raw)
To: distrokit; +Cc: Ahmad Fatoum
Kernel commit 0782e8572c ("ARM: dts: Probe am335x musb with ti-sysc")
which barebox pulled in during the v2020.02.0 dts/ sync moved the USB nodes
to be under a ti-sysc bus instead of ti,am33xx-usb.
This broke am335x USB under barebox, because the MUSB drivers couldn't
cope with the now different device probe order.
Import the two patches fixing this out of barebox master branch.
These can be dropped when moving to barebox v2020.03.0.
Fixes: 1d84e5419f50 ("v7a: barebox: version bump 2020.01.0 -> 2020.02.0")
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
---
.../platform-v7a/barebox-am335x-mlo.config | 2 +-
configs/platform-v7a/barebox-am335x.config | 2 +-
.../platform-v7a/barebox-am335x.config.diff | 2 +-
configs/platform-v7a/barebox-mx6.config | 2 +-
configs/platform-v7a/barebox-mx6.config.diff | 2 +-
configs/platform-v7a/barebox-rpi2.config | 2 +-
configs/platform-v7a/barebox-rpi2.config.diff | 2 +-
configs/platform-v7a/barebox-vexpress.config | 2 +-
.../platform-v7a/barebox-vexpress.config.diff | 2 +-
configs/platform-v7a/barebox.config | 2 +-
...Y-scrap-singleton-am335x_get_usb_phy.patch | 136 ++++++++++++
...-defer-driver-probes-where-necessary.patch | 201 ++++++++++++++++++
...0-customers-pengutronix-distrokit-v7.patch | 22 ++
.../patches/barebox-2020.02.0/series | 12 ++
14 files changed, 381 insertions(+), 10 deletions(-)
create mode 100644 configs/platform-v7a/patches/barebox-2020.02.0/0001-USB-MUSB-PHY-scrap-singleton-am335x_get_usb_phy.patch
create mode 100644 configs/platform-v7a/patches/barebox-2020.02.0/0002-USB-MUSB-defer-driver-probes-where-necessary.patch
create mode 100644 configs/platform-v7a/patches/barebox-2020.02.0/0101-Release-2020.02.0-customers-pengutronix-distrokit-v7.patch
create mode 100644 configs/platform-v7a/patches/barebox-2020.02.0/series
diff --git a/configs/platform-v7a/barebox-am335x-mlo.config b/configs/platform-v7a/barebox-am335x-mlo.config
index cc656cb4abbd..909b51860df1 100644
--- a/configs/platform-v7a/barebox-am335x-mlo.config
+++ b/configs/platform-v7a/barebox-am335x-mlo.config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.02.0 Configuration
+# Barebox/arm 2020.02.0-20200302-1 Configuration
#
CONFIG_ARM=y
CONFIG_ARM_USE_COMPRESSED_DTB=y
diff --git a/configs/platform-v7a/barebox-am335x.config b/configs/platform-v7a/barebox-am335x.config
index 2ae88bc974ca..dcd70e2503be 100644
--- a/configs/platform-v7a/barebox-am335x.config
+++ b/configs/platform-v7a/barebox-am335x.config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.02.0 Configuration
+# Barebox/arm 2020.02.0-20200302-1 Configuration
#
CONFIG_ARM=y
CONFIG_ARM_LINUX=y
diff --git a/configs/platform-v7a/barebox-am335x.config.diff b/configs/platform-v7a/barebox-am335x.config.diff
index 3e09a8f2a256..355e45d3fa3e 100644
--- a/configs/platform-v7a/barebox-am335x.config.diff
+++ b/configs/platform-v7a/barebox-am335x.config.diff
@@ -1,4 +1,4 @@
-db955f3172c4b8a13e81f242e249009a
+3535341c60838c5a3a5b02da35648d4a
# CONFIG_AM33XX_NET_BOOT is not set
CONFIG_ARCH_AM33XX=y
# CONFIG_ARCH_BCM283X is not set
diff --git a/configs/platform-v7a/barebox-mx6.config b/configs/platform-v7a/barebox-mx6.config
index 5c441e56e2aa..7a549a4bba9e 100644
--- a/configs/platform-v7a/barebox-mx6.config
+++ b/configs/platform-v7a/barebox-mx6.config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.02.0 Configuration
+# Barebox/arm 2020.02.0-20200302-1 Configuration
#
CONFIG_ARM=y
CONFIG_ARM_LINUX=y
diff --git a/configs/platform-v7a/barebox-mx6.config.diff b/configs/platform-v7a/barebox-mx6.config.diff
index 9e92bc2400f4..ac181dc2fb34 100644
--- a/configs/platform-v7a/barebox-mx6.config.diff
+++ b/configs/platform-v7a/barebox-mx6.config.diff
@@ -1,4 +1,4 @@
-db955f3172c4b8a13e81f242e249009a
+3535341c60838c5a3a5b02da35648d4a
# CONFIG_ARCH_BCM283X is not set
CONFIG_ARCH_HAS_FEC_IMX=y
CONFIG_ARCH_HAS_IMX_GPT=y
diff --git a/configs/platform-v7a/barebox-rpi2.config b/configs/platform-v7a/barebox-rpi2.config
index b61437280357..39592eeadbe5 100644
--- a/configs/platform-v7a/barebox-rpi2.config
+++ b/configs/platform-v7a/barebox-rpi2.config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.02.0 Configuration
+# Barebox/arm 2020.02.0-20200302-1 Configuration
#
CONFIG_ARM=y
CONFIG_ARM_LINUX=y
diff --git a/configs/platform-v7a/barebox-rpi2.config.diff b/configs/platform-v7a/barebox-rpi2.config.diff
index a31040403715..ca89c225f63d 100644
--- a/configs/platform-v7a/barebox-rpi2.config.diff
+++ b/configs/platform-v7a/barebox-rpi2.config.diff
@@ -1,4 +1,4 @@
-db955f3172c4b8a13e81f242e249009a
+3535341c60838c5a3a5b02da35648d4a
CONFIG_ARM_ASM_UNIFIED=y
CONFIG_BOOTM_INITRD=y
# CONFIG_CMD_I2C is undefined
diff --git a/configs/platform-v7a/barebox-vexpress.config b/configs/platform-v7a/barebox-vexpress.config
index f21828a05a8d..ce701a6c5000 100644
--- a/configs/platform-v7a/barebox-vexpress.config
+++ b/configs/platform-v7a/barebox-vexpress.config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.02.0 Configuration
+# Barebox/arm 2020.02.0-20200302-1 Configuration
#
CONFIG_ARM=y
CONFIG_ARM_LINUX=y
diff --git a/configs/platform-v7a/barebox-vexpress.config.diff b/configs/platform-v7a/barebox-vexpress.config.diff
index c9e4b30cd312..867fa47b9321 100644
--- a/configs/platform-v7a/barebox-vexpress.config.diff
+++ b/configs/platform-v7a/barebox-vexpress.config.diff
@@ -1,4 +1,4 @@
-db955f3172c4b8a13e81f242e249009a
+3535341c60838c5a3a5b02da35648d4a
CONFIG_AMBA_SP804=y
# CONFIG_ARCH_BCM283X is not set
CONFIG_ARCH_VEXPRESS=y
diff --git a/configs/platform-v7a/barebox.config b/configs/platform-v7a/barebox.config
index bd4c2b8eec3f..c0fc25066c11 100644
--- a/configs/platform-v7a/barebox.config
+++ b/configs/platform-v7a/barebox.config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.02.0 Configuration
+# Barebox/arm 2020.02.0-20200302-1 Configuration
#
CONFIG_ARM=y
CONFIG_ARM_LINUX=y
diff --git a/configs/platform-v7a/patches/barebox-2020.02.0/0001-USB-MUSB-PHY-scrap-singleton-am335x_get_usb_phy.patch b/configs/platform-v7a/patches/barebox-2020.02.0/0001-USB-MUSB-PHY-scrap-singleton-am335x_get_usb_phy.patch
new file mode 100644
index 000000000000..2250399200d1
--- /dev/null
+++ b/configs/platform-v7a/patches/barebox-2020.02.0/0001-USB-MUSB-PHY-scrap-singleton-am335x_get_usb_phy.patch
@@ -0,0 +1,136 @@
+From: Ahmad Fatoum <a.fatoum@pengutronix.de>
+Date: Tue, 25 Feb 2020 17:57:30 +0100
+Subject: [PATCH] USB: MUSB: PHY: scrap singleton am335x_get_usb_phy()
+
+am335x_get_usb_phy() retrieves the last probed USB phy. On the BeagleBone
+with both PHYs enabled, this means that dependent on probe order, both
+MUSB instances could end up with the same PHY.
+
+Remove the global variable and have the MUSB driver parse the "phys"
+property instead.
+
+The cleaner way to achieve this would be to migrate phy-am335x.c
+and phy-am335x-control.c to the generic phy framework and have MUSB use
+of_phy_get, alas, even Linux hasn't done this so far and we need
+a short patch for master anyway, thus just do it the easy way.
+
+Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
+Tested-by: Yegor Yefremov <yegorslists@googlemail.com>
+Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
+---
+ drivers/usb/musb/musb_dsps.c | 16 +++++++++++-----
+ drivers/usb/musb/phy-am335x.c | 11 ++---------
+ drivers/usb/musb/phy-am335x.h | 6 ------
+ 3 files changed, 13 insertions(+), 20 deletions(-)
+ delete mode 100644 drivers/usb/musb/phy-am335x.h
+
+diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
+index 3b76b6cc610d..f30672914830 100644
+--- a/drivers/usb/musb/musb_dsps.c
++++ b/drivers/usb/musb/musb_dsps.c
+@@ -39,7 +39,6 @@
+ #include <linux/barebox-wrapper.h>
+
+ #include "musb_core.h"
+-#include "phy-am335x.h"
+
+ static __maybe_unused struct of_device_id musb_dsps_dt_ids[];
+
+@@ -217,10 +216,6 @@ static int dsps_musb_init(struct musb *musb)
+ const struct dsps_musb_wrapper *wrp = glue->wrp;
+ u32 rev, val, mode;
+
+- musb->xceiv = am335x_get_usb_phy();
+- if (IS_ERR(musb->xceiv))
+- return PTR_ERR(musb->xceiv);
+-
+ /* Returns zero if e.g. not clocked */
+ rev = dsps_readl(musb->ctrl_base, wrp->revision);
+ if (!rev)
+@@ -324,6 +319,8 @@ static int dsps_probe(struct device_d *dev)
+ struct musb_hdrc_config *config;
+ struct device_node *dn = dev->device_node;
+ const struct dsps_musb_wrapper *wrp;
++ struct device_node *phy_node;
++ struct device_d *phy_dev;
+ struct dsps_glue *glue;
+ int ret;
+
+@@ -337,6 +334,14 @@ static int dsps_probe(struct device_d *dev)
+ return -ENODEV;
+ }
+
++ phy_node = of_parse_phandle(dn, "phys", 0);
++ if (!phy_node)
++ return -ENODEV;
++
++ phy_dev = of_find_device_by_node(phy_node);
++ if (!phy_dev || !phy_dev->priv)
++ return -EPROBE_DEFER;
++
+ /* allocate glue */
+ glue = kzalloc(sizeof(*glue), GFP_KERNEL);
+ if (!glue) {
+@@ -360,6 +365,7 @@ static int dsps_probe(struct device_d *dev)
+ glue->musb.ctrl_base = IOMEM(iores->start);
+
+ glue->musb.controller = dev;
++ glue->musb.xceiv = phy_dev->priv;
+
+ config = &glue->config;
+
+diff --git a/drivers/usb/musb/phy-am335x.c b/drivers/usb/musb/phy-am335x.c
+index df31255d891c..6991f4402d3f 100644
+--- a/drivers/usb/musb/phy-am335x.c
++++ b/drivers/usb/musb/phy-am335x.c
+@@ -5,7 +5,6 @@
+ #include <linux/err.h>
+ #include "am35x-phy-control.h"
+ #include "musb_core.h"
+-#include "phy-am335x.h"
+
+ struct am335x_usbphy {
+ void __iomem *base;
+@@ -14,13 +13,6 @@ struct am335x_usbphy {
+ struct usb_phy phy;
+ };
+
+-static struct am335x_usbphy *am_usbphy;
+-
+-struct usb_phy *am335x_get_usb_phy(void)
+-{
+- return &am_usbphy->phy;
+-}
+-
+ static int am335x_init(struct usb_phy *phy)
+ {
+ struct am335x_usbphy *am_usbphy = container_of(phy, struct am335x_usbphy, phy);
+@@ -31,6 +23,7 @@ static int am335x_init(struct usb_phy *phy)
+
+ static int am335x_phy_probe(struct device_d *dev)
+ {
++ struct am335x_usbphy *am_usbphy;
+ struct resource *iores;
+ int ret;
+
+@@ -54,7 +47,7 @@ static int am335x_phy_probe(struct device_d *dev)
+ }
+
+ am_usbphy->phy.init = am335x_init;
+- dev->priv = am_usbphy;
++ dev->priv = &am_usbphy->phy;
+
+ dev_info(dev, "am_usbphy %p enabled\n", &am_usbphy->phy);
+
+diff --git a/drivers/usb/musb/phy-am335x.h b/drivers/usb/musb/phy-am335x.h
+deleted file mode 100644
+index 27da2e3b1057..000000000000
+--- a/drivers/usb/musb/phy-am335x.h
++++ /dev/null
+@@ -1,6 +0,0 @@
+-#ifndef _PHY_AM335x_H_
+-#define _PHY_AM335x_H_
+-
+-struct usb_phy *am335x_get_usb_phy(void);
+-
+-#endif
diff --git a/configs/platform-v7a/patches/barebox-2020.02.0/0002-USB-MUSB-defer-driver-probes-where-necessary.patch b/configs/platform-v7a/patches/barebox-2020.02.0/0002-USB-MUSB-defer-driver-probes-where-necessary.patch
new file mode 100644
index 000000000000..504e4d29bb94
--- /dev/null
+++ b/configs/platform-v7a/patches/barebox-2020.02.0/0002-USB-MUSB-defer-driver-probes-where-necessary.patch
@@ -0,0 +1,201 @@
+From: Ahmad Fatoum <a.fatoum@pengutronix.de>
+Date: Tue, 25 Feb 2020 17:57:31 +0100
+Subject: [PATCH] USB: MUSB: defer driver probes where necessary
+
+Kernel commit 0782e8572c ("ARM: dts: Probe am335x musb with ti-sysc")
+which we pulled in during the v2020.02.0 dts/ sync moved the USB nodes
+to be under a ti-sysc bus instead of ti,am33xx-usb.
+
+This new probe order broke am335x USB under barebox, because the MUSB
+drivers couldn't cope with the now different device probe order.
+
+Pepper some -EPROBE_DEFER around to make USB work again.
+
+Fixes: 574eed3f6f ("dts: update to v5.5-rc1")
+Reported-by: Yegor Yefremov <yegorslists@googlemail.com>
+Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
+Tested-by: Yegor Yefremov <yegorslists@googlemail.com>
+Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
+---
+ drivers/usb/musb/musb_core.c | 5 +++--
+ drivers/usb/musb/musb_dsps.c | 39 +++++++++++++++++++++++++----------
+ drivers/usb/musb/phy-am335x-control.c | 25 +++++++++++++++-------
+ drivers/usb/musb/phy-am335x.c | 11 +++++++---
+ 4 files changed, 57 insertions(+), 23 deletions(-)
+
+diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
+index 4c11e6580c0f..b84da5516c4a 100644
+--- a/drivers/usb/musb/musb_core.c
++++ b/drivers/usb/musb/musb_core.c
+@@ -1136,8 +1136,9 @@ fail2:
+ musb_platform_exit(musb);
+
+ fail1:
+- dev_err(musb->controller,
+- "musb_init_controller failed with status %d\n", status);
++ if (status != -EPROBE_DEFER)
++ dev_err(musb->controller,
++ "musb_init_controller failed with status %d\n", status);
+
+ musb_free(musb);
+
+diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
+index f30672914830..d54a663e9d8b 100644
+--- a/drivers/usb/musb/musb_dsps.c
++++ b/drivers/usb/musb/musb_dsps.c
+@@ -314,7 +314,7 @@ static int dsps_set_mode(void *ctx, enum usb_dr_mode mode)
+
+ static int dsps_probe(struct device_d *dev)
+ {
+- struct resource *iores;
++ struct resource *iores[2];
+ struct musb_hdrc_platform_data *pdata;
+ struct musb_hdrc_config *config;
+ struct device_node *dn = dev->device_node;
+@@ -354,15 +354,19 @@ static int dsps_probe(struct device_d *dev)
+
+ pdata = &glue->pdata;
+
+- iores = dev_request_mem_resource(dev, 0);
+- if (IS_ERR(iores))
+- return PTR_ERR(iores);
+- glue->musb.mregs = IOMEM(iores->start);
++ iores[0] = dev_request_mem_resource(dev, 0);
++ if (IS_ERR(iores[0])) {
++ ret = PTR_ERR(iores[0]);
++ goto free_glue;
++ }
++ glue->musb.mregs = IOMEM(iores[0]->start);
+
+- iores = dev_request_mem_resource(dev, 1);
+- if (IS_ERR(iores))
+- return PTR_ERR(iores);
+- glue->musb.ctrl_base = IOMEM(iores->start);
++ iores[1] = dev_request_mem_resource(dev, 1);
++ if (IS_ERR(iores[1])) {
++ ret = PTR_ERR(iores[1]);
++ goto release_iores0;
++ }
++ glue->musb.ctrl_base = IOMEM(iores[1]->start);
+
+ glue->musb.controller = dev;
+ glue->musb.xceiv = phy_dev->priv;
+@@ -383,11 +387,24 @@ static int dsps_probe(struct device_d *dev)
+ if (pdata->mode == MUSB_PORT_MODE_DUAL_ROLE) {
+ ret = usb_register_otg_device(dev, dsps_set_mode, glue);
+ if (ret)
+- return ret;
++ goto release_iores1;
+ return 0;
+ }
+
+- return musb_init_controller(&glue->musb, pdata);
++ ret = musb_init_controller(&glue->musb, pdata);
++ if (ret)
++ goto release_iores1;
++
++ return 0;
++
++release_iores1:
++ release_region(iores[1]);
++release_iores0:
++ release_region(iores[0]);
++free_glue:
++ free(glue);
++
++ return ret;
+ }
+
+ static const struct dsps_musb_wrapper am33xx_driver_data = {
+diff --git a/drivers/usb/musb/phy-am335x-control.c b/drivers/usb/musb/phy-am335x-control.c
+index c84525ec7eb4..41a3689ed3f9 100644
+--- a/drivers/usb/musb/phy-am335x-control.c
++++ b/drivers/usb/musb/phy-am335x-control.c
+@@ -109,15 +109,15 @@ struct phy_control *am335x_get_phy_control(struct device_d *dev)
+
+ node = of_parse_phandle(dev->device_node, "ti,ctrl_mod", 0);
+ if (!node)
+- return NULL;
++ return ERR_PTR(-ENOENT);
+
+ dev = of_find_device_by_node(node);
+ if (!dev)
+- return NULL;
++ return ERR_PTR(-EPROBE_DEFER);
+
+ ctrl_usb = dev->priv;
+ if (!ctrl_usb)
+- return NULL;
++ return ERR_PTR(-EPROBE_DEFER);
+
+ return &ctrl_usb->phy_ctrl;
+ }
+@@ -141,13 +141,17 @@ static int am335x_control_usb_probe(struct device_d *dev)
+ ctrl_usb->dev = dev;
+
+ iores = dev_request_mem_resource(dev, 0);
+- if (IS_ERR(iores))
+- return PTR_ERR(iores);
++ if (IS_ERR(iores)) {
++ ret = PTR_ERR(iores);
++ goto free_ctrl;
++ }
+ ctrl_usb->phy_reg = IOMEM(iores->start);
+
+ iores = dev_request_mem_resource(dev, 1);
+- if (IS_ERR(iores))
+- return PTR_ERR(iores);
++ if (IS_ERR(iores)) {
++ ret = PTR_ERR(iores);
++ goto release_resource;
++ }
+ ctrl_usb->wkup = IOMEM(iores->start);
+
+ spin_lock_init(&ctrl_usb->lock);
+@@ -155,6 +159,13 @@ static int am335x_control_usb_probe(struct device_d *dev)
+
+ dev->priv = ctrl_usb;
+ return 0;
++
++release_resource:
++ release_region(iores);
++free_ctrl:
++ free(ctrl_usb);
++
++ return 0;
+ };
+
+ static struct driver_d am335x_control_driver = {
+diff --git a/drivers/usb/musb/phy-am335x.c b/drivers/usb/musb/phy-am335x.c
+index 6991f4402d3f..f2e870d7ee61 100644
+--- a/drivers/usb/musb/phy-am335x.c
++++ b/drivers/usb/musb/phy-am335x.c
+@@ -37,13 +37,16 @@ static int am335x_phy_probe(struct device_d *dev)
+ am_usbphy->base = IOMEM(iores->start);
+
+ am_usbphy->phy_ctrl = am335x_get_phy_control(dev);
+- if (!am_usbphy->phy_ctrl)
+- return -ENODEV;
++ if (IS_ERR(am_usbphy->phy_ctrl)) {
++ ret = PTR_ERR(am_usbphy->phy_ctrl);
++ goto err_release;
++ }
+
+ am_usbphy->id = of_alias_get_id(dev->device_node, "phy");
+ if (am_usbphy->id < 0) {
+ dev_err(dev, "Missing PHY id: %d\n", am_usbphy->id);
+- return am_usbphy->id;
++ ret = am_usbphy->id;
++ goto err_release;
+ }
+
+ am_usbphy->phy.init = am335x_init;
+@@ -53,6 +56,8 @@ static int am335x_phy_probe(struct device_d *dev)
+
+ return 0;
+
++err_release:
++ release_region(iores);
+ err_free:
+ free(am_usbphy);
+
diff --git a/configs/platform-v7a/patches/barebox-2020.02.0/0101-Release-2020.02.0-customers-pengutronix-distrokit-v7.patch b/configs/platform-v7a/patches/barebox-2020.02.0/0101-Release-2020.02.0-customers-pengutronix-distrokit-v7.patch
new file mode 100644
index 000000000000..f6d964c983fc
--- /dev/null
+++ b/configs/platform-v7a/patches/barebox-2020.02.0/0101-Release-2020.02.0-customers-pengutronix-distrokit-v7.patch
@@ -0,0 +1,22 @@
+From: Ahmad Fatoum <a.fatoum@pengutronix.de>
+Date: Mon, 2 Mar 2020 10:29:27 +0100
+Subject: [PATCH] Release
+ 2020.02.0/customers/pengutronix/distrokit-v7a/20200302-1
+
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index ef98910c0bcd..dbc7d3fe5610 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,7 +1,7 @@
+ VERSION = 2020
+ PATCHLEVEL = 02
+ SUBLEVEL = 0
+-EXTRAVERSION =
++EXTRAVERSION =-20200302-1
+ NAME = None
+
+ # *DOCUMENTATION*
diff --git a/configs/platform-v7a/patches/barebox-2020.02.0/series b/configs/platform-v7a/patches/barebox-2020.02.0/series
new file mode 100644
index 000000000000..e9ae25888a11
--- /dev/null
+++ b/configs/platform-v7a/patches/barebox-2020.02.0/series
@@ -0,0 +1,12 @@
+# umpf-base: v2020.02.0
+# umpf-name: 2020.02.0/customers/pengutronix/distrokit-v7a
+# umpf-version: 2020.02.0/customers/pengutronix/distrokit-v7a/20200302-1
+# umpf-topic: v2020.02.0/topic/am335x-usb-fix
+# umpf-hashinfo: b7314bc58ef983ea308f10710fdc3330e03fbacd
+# umpf-topic-range: 849b2f8b958a19d28715c187a0d6dca23ccba6b5..668810be409187d7ea1dfb43aae151792aabaa25
+0001-USB-MUSB-PHY-scrap-singleton-am335x_get_usb_phy.patch
+0002-USB-MUSB-defer-driver-probes-where-necessary.patch
+# umpf-release: 2020.02.0/customers/pengutronix/distrokit-v7a/20200302-1
+# umpf-topic-range: 668810be409187d7ea1dfb43aae151792aabaa25..1ddfaff751466a5673322f551ff80acab5cb36ae
+0101-Release-2020.02.0-customers-pengutronix-distrokit-v7.patch
+# umpf-end
--
2.25.0
_______________________________________________
DistroKit mailing list
DistroKit@pengutronix.de
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [DistroKit] [PATCH] v7a: barebox: fix regression in AM335x USB
2020-03-02 9:46 [DistroKit] [PATCH] v7a: barebox: fix regression in AM335x USB Ahmad Fatoum
@ 2020-03-05 16:42 ` Robert Schwebel
0 siblings, 0 replies; 2+ messages in thread
From: Robert Schwebel @ 2020-03-05 16:42 UTC (permalink / raw)
To: Ahmad Fatoum; +Cc: distrokit
On Mon, Mar 02, 2020 at 10:46:36AM +0100, Ahmad Fatoum wrote:
> Kernel commit 0782e8572c ("ARM: dts: Probe am335x musb with ti-sysc")
> which barebox pulled in during the v2020.02.0 dts/ sync moved the USB nodes
> to be under a ti-sysc bus instead of ti,am33xx-usb.
>
> This broke am335x USB under barebox, because the MUSB drivers couldn't
> cope with the now different device probe order.
>
> Import the two patches fixing this out of barebox master branch.
> These can be dropped when moving to barebox v2020.03.0.
>
> Fixes: 1d84e5419f50 ("v7a: barebox: version bump 2020.01.0 -> 2020.02.0")
> Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Applied to next.
rsc
--
Pengutronix e.K. | Dipl.-Ing. Robert Schwebel |
Steuerwalder Str. 21 | https://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
DistroKit mailing list
DistroKit@pengutronix.de
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-03-05 16:42 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-02 9:46 [DistroKit] [PATCH] v7a: barebox: fix regression in AM335x USB Ahmad Fatoum
2020-03-05 16:42 ` Robert Schwebel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox