diff mbox series

[2/2] arm: mvebu: turris_omnia: Increase fdt size in fixup_mtd_partitions

Message ID 20220801100220.24017-2-pali@kernel.org
State Accepted
Commit e6c5e975b53958f7780746648363187d23aea358
Delegated to: Stefan Roese
Headers show
Series [1/2] arm: mvebu: turris_omnia: Do not fail in fixup_mtd_partitions when partitions do not exist | expand

Commit Message

Pali Rohár Aug. 1, 2022, 10:02 a.m. UTC
Sometimes fixup_mtd_partitions() prints during booting kernel error
"Failed fixing SPI NOR partitions!" because it does not have enough space
for creating all paritions nodes. So increase fdt size.

Fixes: 92f36c8e74c1 ("arm: mvebu: turris_omnia: fixup MTD partitions in Linux' DTB")
Signed-off-by: Pali Rohár <pali@kernel.org>
---
 board/CZ.NIC/turris_omnia/turris_omnia.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Stefan Roese Aug. 1, 2022, 11:55 a.m. UTC | #1
On 01.08.22 12:02, Pali Rohár wrote:
> Sometimes fixup_mtd_partitions() prints during booting kernel error
> "Failed fixing SPI NOR partitions!" because it does not have enough space
> for creating all paritions nodes. So increase fdt size.
> 
> Fixes: 92f36c8e74c1 ("arm: mvebu: turris_omnia: fixup MTD partitions in Linux' DTB")
> Signed-off-by: Pali Rohár <pali@kernel.org>

Reviewed-by: Stefan Roese <sr@denx.de>

Thanks,
Stefan

> ---
>   board/CZ.NIC/turris_omnia/turris_omnia.c | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/board/CZ.NIC/turris_omnia/turris_omnia.c b/board/CZ.NIC/turris_omnia/turris_omnia.c
> index d836ac94ec29..108d160f486d 100644
> --- a/board/CZ.NIC/turris_omnia/turris_omnia.c
> +++ b/board/CZ.NIC/turris_omnia/turris_omnia.c
> @@ -979,6 +979,9 @@ static bool fixup_mtd_partitions(void *blob, int offset, struct mtd_info *mtd)
>   			return false;
>   	}
>   
> +	if (fdt_increase_size(blob, 512) < 0)
> +		return false;
> +
>   	parts = fdt_add_subnode(blob, offset, "partitions");
>   	if (parts < 0)
>   		return false;

Viele Grüße,
Stefan Roese
Marek Behún Aug. 1, 2022, 3:54 p.m. UTC | #2
On Mon,  1 Aug 2022 12:02:20 +0200
Pali Rohár <pali@kernel.org> wrote:

> Sometimes fixup_mtd_partitions() prints during booting kernel error
> "Failed fixing SPI NOR partitions!" because it does not have enough space
> for creating all paritions nodes. So increase fdt size.
> 
> Fixes: 92f36c8e74c1 ("arm: mvebu: turris_omnia: fixup MTD partitions in Linux' DTB")
> Signed-off-by: Pali Rohár <pali@kernel.org>

Reviewed-by: Marek Behún <kabel@kernel.org>
Stefan Roese Aug. 9, 2022, 11:32 a.m. UTC | #3
On 01.08.22 12:02, Pali Rohár wrote:
> Sometimes fixup_mtd_partitions() prints during booting kernel error
> "Failed fixing SPI NOR partitions!" because it does not have enough space
> for creating all paritions nodes. So increase fdt size.
> 
> Fixes: 92f36c8e74c1 ("arm: mvebu: turris_omnia: fixup MTD partitions in Linux' DTB")
> Signed-off-by: Pali Rohár <pali@kernel.org>

Applied to u-boot-marvell/master

Thanks,
Stefan

> ---
>   board/CZ.NIC/turris_omnia/turris_omnia.c | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/board/CZ.NIC/turris_omnia/turris_omnia.c b/board/CZ.NIC/turris_omnia/turris_omnia.c
> index d836ac94ec29..108d160f486d 100644
> --- a/board/CZ.NIC/turris_omnia/turris_omnia.c
> +++ b/board/CZ.NIC/turris_omnia/turris_omnia.c
> @@ -979,6 +979,9 @@ static bool fixup_mtd_partitions(void *blob, int offset, struct mtd_info *mtd)
>   			return false;
>   	}
>   
> +	if (fdt_increase_size(blob, 512) < 0)
> +		return false;
> +
>   	parts = fdt_add_subnode(blob, offset, "partitions");
>   	if (parts < 0)
>   		return false;

Viele Grüße,
Stefan Roese
diff mbox series

Patch

diff --git a/board/CZ.NIC/turris_omnia/turris_omnia.c b/board/CZ.NIC/turris_omnia/turris_omnia.c
index d836ac94ec29..108d160f486d 100644
--- a/board/CZ.NIC/turris_omnia/turris_omnia.c
+++ b/board/CZ.NIC/turris_omnia/turris_omnia.c
@@ -979,6 +979,9 @@  static bool fixup_mtd_partitions(void *blob, int offset, struct mtd_info *mtd)
 			return false;
 	}
 
+	if (fdt_increase_size(blob, 512) < 0)
+		return false;
+
 	parts = fdt_add_subnode(blob, offset, "partitions");
 	if (parts < 0)
 		return false;