diff mbox series

net: ti: am65-cpsw: Cleanup resources before jump to kernel

Message ID 20220128055119.1181115-1-vigneshr@ti.com
State Accepted
Commit 83fe92f3cfd426429f10a37d93b8c04cd05d8c3a
Delegated to: Tom Rini
Headers show
Series net: ti: am65-cpsw: Cleanup resources before jump to kernel | expand

Commit Message

Raghavendra, Vignesh Jan. 28, 2022, 5:51 a.m. UTC
In case fastboot over Ethernet, am65_cpsw_stop() is not called unless
DM_FLAG_OS_PREPARE is set. Without call to am65_cpsw_stop(), DMA
resources are not released thus leading to failures in kernel.
Fix this by adding DM_FLAG_OS_PREPARE flag to am65_cpsw_nuss_port
driver.

Reported-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
---
 drivers/net/ti/am65-cpsw-nuss.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Ramon Fried Feb. 3, 2022, 8:32 a.m. UTC | #1
On Fri, Jan 28, 2022 at 7:51 AM Vignesh Raghavendra <vigneshr@ti.com> wrote:
>
> In case fastboot over Ethernet, am65_cpsw_stop() is not called unless
> DM_FLAG_OS_PREPARE is set. Without call to am65_cpsw_stop(), DMA
> resources are not released thus leading to failures in kernel.
> Fix this by adding DM_FLAG_OS_PREPARE flag to am65_cpsw_nuss_port
> driver.
>
> Reported-by: Christian Gmeiner <christian.gmeiner@gmail.com>
> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
> ---
>  drivers/net/ti/am65-cpsw-nuss.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/ti/am65-cpsw-nuss.c b/drivers/net/ti/am65-cpsw-nuss.c
> index 454986ff15..87f51b3b99 100644
> --- a/drivers/net/ti/am65-cpsw-nuss.c
> +++ b/drivers/net/ti/am65-cpsw-nuss.c
> @@ -817,5 +817,5 @@ U_BOOT_DRIVER(am65_cpsw_nuss_port) = {
>         .ops    = &am65_cpsw_ops,
>         .priv_auto      = sizeof(struct am65_cpsw_priv),
>         .plat_auto      = sizeof(struct eth_pdata),
> -       .flags = DM_FLAG_ALLOC_PRIV_DMA,
> +       .flags = DM_FLAG_ALLOC_PRIV_DMA | DM_FLAG_OS_PREPARE,
>  };
> --
> 2.35.0
>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Tom Rini Feb. 4, 2022, 12:40 a.m. UTC | #2
On Fri, Jan 28, 2022 at 11:21:19AM +0530, Vignesh Raghavendra wrote:

> In case fastboot over Ethernet, am65_cpsw_stop() is not called unless
> DM_FLAG_OS_PREPARE is set. Without call to am65_cpsw_stop(), DMA
> resources are not released thus leading to failures in kernel.
> Fix this by adding DM_FLAG_OS_PREPARE flag to am65_cpsw_nuss_port
> driver.
> 
> Reported-by: Christian Gmeiner <christian.gmeiner@gmail.com>
> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/drivers/net/ti/am65-cpsw-nuss.c b/drivers/net/ti/am65-cpsw-nuss.c
index 454986ff15..87f51b3b99 100644
--- a/drivers/net/ti/am65-cpsw-nuss.c
+++ b/drivers/net/ti/am65-cpsw-nuss.c
@@ -817,5 +817,5 @@  U_BOOT_DRIVER(am65_cpsw_nuss_port) = {
 	.ops	= &am65_cpsw_ops,
 	.priv_auto	= sizeof(struct am65_cpsw_priv),
 	.plat_auto	= sizeof(struct eth_pdata),
-	.flags = DM_FLAG_ALLOC_PRIV_DMA,
+	.flags = DM_FLAG_ALLOC_PRIV_DMA | DM_FLAG_OS_PREPARE,
 };