summaryrefslogtreecommitdiffstats
path: root/configs/platform-v7a/patches
diff options
context:
space:
mode:
authorAhmad Fatoum <a.fatoum@pengutronix.de>2022-01-18 11:56:36 +0100
committerRobert Schwebel <r.schwebel@pengutronix.de>2022-01-22 11:48:09 +0100
commitd1703c49df158863b5530e6d88a9860cf510b784 (patch)
tree85c6164e800aceb32e0d1bc0848f4da2742cbace /configs/platform-v7a/patches
parent0231b0d9dfd76dec4fefdcb5a5b1c3cbfe1097a1 (diff)
downloadDistroKit-d1703c49df158863b5530e6d88a9860cf510b784.tar.gz
DistroKit-d1703c49df158863b5530e6d88a9860cf510b784.tar.xz
v7a: barebox: update v2021.11.0 → v2022.01.0
Freshest barebox release incorporates the OMAP patches we have in the BSP. Bump up the release and drop these two patches in return. The release also introduced CONFIG_STM32_BSEC_WRITE, which enables blowing e-fuses on STM32MP1 SoCs, e.g. to persist an Ethernet address. We support a couple of STM32MP1 boards, so it makes sense to enable this option. All other Kconfig changes are those of olddefconfig. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Diffstat (limited to 'configs/platform-v7a/patches')
-rw-r--r--configs/platform-v7a/patches/barebox-2021.11.0/0001-net-cpsw-add-support-for-new-binding-in-Linux-v5.15-.patch210
-rw-r--r--configs/platform-v7a/patches/barebox-2021.11.0/0002-Revert-ARM-beaglebone-init-MPU-speed-to-800Mhz.patch45
-rw-r--r--configs/platform-v7a/patches/barebox-2021.11.0/series2
3 files changed, 0 insertions, 257 deletions
diff --git a/configs/platform-v7a/patches/barebox-2021.11.0/0001-net-cpsw-add-support-for-new-binding-in-Linux-v5.15-.patch b/configs/platform-v7a/patches/barebox-2021.11.0/0001-net-cpsw-add-support-for-new-binding-in-Linux-v5.15-.patch
deleted file mode 100644
index 287f052..0000000
--- a/configs/platform-v7a/patches/barebox-2021.11.0/0001-net-cpsw-add-support-for-new-binding-in-Linux-v5.15-.patch
+++ /dev/null
@@ -1,210 +0,0 @@
-From ed7f3fd5b5e2088f04d2f5d615d71cf6e6507509 Mon Sep 17 00:00:00 2001
-From: Ahmad Fatoum <a.fatoum@pengutronix.de>
-Date: Fri, 3 Dec 2021 21:50:35 +0100
-Subject: [PATCH 1/2] net: cpsw: add support for new binding in Linux v5.15-rc1
- DTs
-
-As is customary, upstream OMAP DTs have yet again added a new binding
-breaking compatibility with a barebox driver. This time, the old Ethernet
-node was disabled in favor of a new node that is matched by the new Linux
-cpsw driver introduced with Linux commit ed3525eda4c4 ("net: ethernet:
-ti: introduce cpsw switchdev based driver part 1 - dual-emac").
-
-Add support for the new binding to restore working Beaglebone Black
-networking. These changes have been tested against both the old and new
-bindings.
-
-Fixes: 618948e4e5b3 ("dts: update to v5.15-rc1")
-Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
-Link: https://lore.barebox.org/20211203205035.555285-1-a.fatoum@pengutronix.de
-Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
----
- drivers/net/cpsw.c | 120 +++++++++++++++++++++++++++++++++------------
- 1 file changed, 89 insertions(+), 31 deletions(-)
-
-diff --git a/drivers/net/cpsw.c b/drivers/net/cpsw.c
-index 4a8f9e67d6f0..6725c7b9bdb4 100644
---- a/drivers/net/cpsw.c
-+++ b/drivers/net/cpsw.c
-@@ -592,7 +592,12 @@ static int cpsw_mdio_probe(struct device_d *dev)
-
- priv = xzalloc(sizeof(*priv));
-
-+ /* If we can't request I/O memory region, we'll assume parent did
-+ * it for us
-+ */
- iores = dev_request_mem_resource(dev, 0);
-+ if (IS_ERR(iores) && PTR_ERR(iores) == -EBUSY)
-+ iores = dev_get_resource(dev, IORESOURCE_MEM, 0);
- if (IS_ERR(iores))
- return PTR_ERR(iores);
- priv->mdio_regs = IOMEM(iores->start);
-@@ -1214,11 +1219,27 @@ static void cpsw_gmii_sel_am335x(struct cpsw_slave *slave)
- writel(reg, phy_sel_addr);
- }
-
--static int cpsw_probe_dt(struct cpsw_priv *priv)
-+static void cpsw_add_slave(struct cpsw_slave *slave, struct device_node *child, int i)
-+{
-+ uint32_t phy_id[2] = {-1, -1};
-+ int ret;
-+
-+ if (!of_find_node_by_name(child, "fixed-link")) {
-+ ret = of_property_read_u32_array(child, "phy_id", phy_id, 2);
-+ if (!ret)
-+ dev_warn(slave->cpsw->dev, "phy_id is deprecated, use phy-handle\n");
-+ }
-+
-+ slave->dev.device_node = child;
-+ slave->phy_id = phy_id[1];
-+ slave->phy_if = of_get_phy_mode(child);
-+ slave->slave_num = i;
-+}
-+
-+static int cpsw_legacy_probe_dt(struct cpsw_priv *priv)
- {
- struct device_d *dev = priv->dev;
- struct device_node *np = dev->device_node, *child;
-- struct device_node *physel;
- int ret, i = 0;
-
- ret = of_property_read_u32(np, "slaves", &priv->num_slaves);
-@@ -1227,15 +1248,6 @@ static int cpsw_probe_dt(struct cpsw_priv *priv)
-
- priv->slaves = xzalloc(sizeof(struct cpsw_slave) * priv->num_slaves);
-
-- physel = of_find_compatible_node(NULL, NULL, "ti,am3352-phy-gmii-sel");
-- if (!physel) {
-- dev_err(dev, "Cannot find ti,am3352-phy-gmii-sel node\n");
-- return -EINVAL;
-- }
-- ret = cpsw_phy_sel_init(priv, physel);
-- if (ret)
-- return ret;
--
- for_each_child_of_node(np, child) {
- if (of_device_is_compatible(child, "ti,davinci_mdio")) {
- ret = of_pinctrl_select_state_default(child);
-@@ -1244,29 +1256,73 @@ static int cpsw_probe_dt(struct cpsw_priv *priv)
- }
-
- if (i < priv->num_slaves && !strncmp(child->name, "slave", 5)) {
-- struct cpsw_slave *slave = &priv->slaves[i];
-- uint32_t phy_id[2] = {-1, -1};
-+ cpsw_add_slave(&priv->slaves[i], child, i);
-+ i++;
-+ }
-+ }
-
-- if (!of_find_node_by_name(child, "fixed-link")) {
-- ret = of_property_read_u32_array(child, "phy_id", phy_id, 2);
-- if (!ret)
-- dev_warn(dev, "phy_id is deprecated, use phy-handle\n");
-- }
-+ return 0;
-+}
-+
-+static int cpsw_switch_probe_dt(struct cpsw_priv *priv)
-+{
-+ struct device_d *dev = priv->dev;
-+ struct device_node *np = dev->device_node, *child;
-+ struct device_node *ports = NULL;
-+ int ret, i = 0;
-
-- slave->dev.device_node = child;
-- slave->phy_id = phy_id[1];
-- slave->phy_if = of_get_phy_mode(child);
-- slave->slave_num = i;
-+ for_each_child_of_node(np, child) {
-+ if (of_device_is_compatible(child, "ti,davinci_mdio")) {
-+ ret = of_pinctrl_select_state_default(child);
-+ if (ret)
-+ return ret;
-+ }
-
-- i++;
-+ if (!strcmp(child->name, "ethernet-ports")) {
-+ ports = child;
-+ priv->num_slaves = of_get_available_child_count(ports);
- }
- }
-
-- for (i = 0; i < priv->num_slaves; i++) {
-- struct cpsw_slave *slave = &priv->slaves[i];
-+ if (!ports)
-+ return -EINVAL;
-+
-+ priv->slaves = xzalloc(sizeof(struct cpsw_slave) * priv->num_slaves);
-+
-+ for_each_available_child_of_node(ports, child) {
-+ cpsw_add_slave(&priv->slaves[i], child, i);
-+ i++;
-+ }
-+
-+ return 0;
-+}
-
-- cpsw_gmii_sel_am335x(slave);
-+static int cpsw_probe_dt(struct cpsw_priv *priv)
-+{
-+ struct device_d *dev = priv->dev;
-+ struct device_node *physel;
-+ int (*probe_slaves_dt)(struct cpsw_priv *priv);
-+ int ret, i = 0;
-+
-+ physel = of_find_compatible_node(NULL, NULL, "ti,am3352-phy-gmii-sel");
-+ if (!physel) {
-+ dev_err(dev, "Cannot find ti,am3352-phy-gmii-sel node\n");
-+ return -EINVAL;
- }
-+ ret = cpsw_phy_sel_init(priv, physel);
-+ if (ret)
-+ return ret;
-+
-+ probe_slaves_dt = device_get_match_data(dev);
-+ if (!probe_slaves_dt)
-+ return -EINVAL;
-+
-+ ret = probe_slaves_dt(priv);
-+ if (ret < 0)
-+ return ret;
-+
-+ for (i = 0; i < priv->num_slaves; i++)
-+ cpsw_gmii_sel_am335x(&priv->slaves[i]);
-
- return 0;
- }
-@@ -1282,15 +1338,15 @@ static int cpsw_probe(struct device_d *dev)
-
- dev_dbg(dev, "* %s\n", __func__);
-
-- ret = of_platform_populate(dev->device_node, NULL, dev);
-- if (ret)
-- return ret;
--
- iores = dev_request_mem_resource(dev, 0);
- if (IS_ERR(iores))
- return PTR_ERR(iores);
- regs = IOMEM(iores->start);
-
-+ ret = of_platform_populate(dev->device_node, NULL, dev);
-+ if (ret)
-+ return ret;
-+
- priv = xzalloc(sizeof(*priv));
- priv->dev = dev;
-
-@@ -1371,7 +1427,9 @@ static void cpsw_remove(struct device_d *dev)
-
- static __maybe_unused struct of_device_id cpsw_dt_ids[] = {
- {
-- .compatible = "ti,cpsw",
-+ .compatible = "ti,cpsw", .data = cpsw_legacy_probe_dt
-+ }, {
-+ .compatible = "ti,cpsw-switch", .data = cpsw_switch_probe_dt
- }, {
- /* sentinel */
- }
---
-2.30.2
-
diff --git a/configs/platform-v7a/patches/barebox-2021.11.0/0002-Revert-ARM-beaglebone-init-MPU-speed-to-800Mhz.patch b/configs/platform-v7a/patches/barebox-2021.11.0/0002-Revert-ARM-beaglebone-init-MPU-speed-to-800Mhz.patch
deleted file mode 100644
index 10bfb83..0000000
--- a/configs/platform-v7a/patches/barebox-2021.11.0/0002-Revert-ARM-beaglebone-init-MPU-speed-to-800Mhz.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 9c1a78f959dd751c9b8ceb31e44926afc89d7769 Mon Sep 17 00:00:00 2001
-From: Ahmad Fatoum <a.fatoum@pengutronix.de>
-Date: Fri, 3 Dec 2021 19:51:54 +0100
-Subject: [PATCH 2/2] Revert "ARM: beaglebone: init MPU speed to 800Mhz"
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Commit 130c7d6715e9 ("ARM: beaglebone: init MPU speed to 800Mhz") causes
-warm reboot from within Linux v5.14.0 to no longer succeed.
-barebox MLO is entered, but hangs. Reset from within barebox is
-unaffected.
-This can be reproduced using DistroKit 949c5ef2b9a6 ("v7a: barebox:
-version bump v2021.08.0 → v2021.11.0") on a Beaglebone Black.
-Until that's figured out, revert the commit; functional reboot is more
-important than the quicker boot up.
-
-This reverts commit 130c7d6715e932a1e0b3e026fea97f700ab33ea9.
-
-Fixes: 130c7d6715e9 ("ARM: beaglebone: init MPU speed to 800Mhz")
-Reported-by: arwie # IRC
-Cc: Marc Reilly <marc@cpdesign.com.au>
-Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
-Link: https://lore.barebox.org/20211203185154.388145-1-a.fatoum@pengutronix.de
-Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
----
- arch/arm/boards/beaglebone/lowlevel.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/arch/arm/boards/beaglebone/lowlevel.c b/arch/arm/boards/beaglebone/lowlevel.c
-index 31211448f5e8..91d143e4150b 100644
---- a/arch/arm/boards/beaglebone/lowlevel.c
-+++ b/arch/arm/boards/beaglebone/lowlevel.c
-@@ -126,7 +126,7 @@ static noinline int beaglebone_sram_init(void)
-
- /* Setup the PLLs and the clocks for the peripherals */
- if (is_beaglebone_black()) {
-- am33xx_pll_init(MPUPLL_M_800, DDRPLL_M_400);
-+ am33xx_pll_init(MPUPLL_M_500, DDRPLL_M_400);
- am335x_sdram_init(0x18B, &ddr3_cmd_ctrl, &ddr3_regs,
- &ddr3_data);
- } else {
---
-2.30.2
-
diff --git a/configs/platform-v7a/patches/barebox-2021.11.0/series b/configs/platform-v7a/patches/barebox-2021.11.0/series
deleted file mode 100644
index ba7c27d..0000000
--- a/configs/platform-v7a/patches/barebox-2021.11.0/series
+++ /dev/null
@@ -1,2 +0,0 @@
-0001-net-cpsw-add-support-for-new-binding-in-Linux-v5.15-.patch
-0002-Revert-ARM-beaglebone-init-MPU-speed-to-800Mhz.patch