From: Andrey Skvortsov <andrej.skvortzov@gmail.com>
To: "Jernej Skrabec" <jernej.skrabec@gmail.com>,
"Samuel Holland" <samuel@sholland.org>,
"Jarrah Gosbell" <kernel@undef.tools>,
"Arnaud Ferraris" <arnaud.ferraris@collabora.com>,
"Pavel Machek" <pavel@ucw.cz>,
"Andre Przywara" <andre.przywara@arm.com>,
u-boot@lists.denx.de,
"Detlev Casanova" <detlev.casanova@collabora.com>,
"Frédéric Danis" <frederic.danis@collabora.com>
Cc: Andrey Skvortsov <andrej.skvortzov@gmail.com>
Subject: [PATCH] pstore: Use root address-cells/size-cells as defaults for reserved-memory
Date: Sat, 26 Aug 2023 15:16:52 +0300 [thread overview]
Message-ID: <20230826121652.2487643-1-andrej.skvortzov@gmail.com> (raw)
u-boot adds reserve-memory node, if it's missing, with following
properties:
```
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
}
```
But with these default address-cells and size-cells values, pstore
isn't working on A64. Root node for A64 defines 'address-cells' and
'size-cells' as 1.
dtc complains if reserved-memory has different address-cells and
size-cells.
```
Warning (ranges_format): /reserved-memory:ranges: empty "ranges"
property but its #address-cells (2) differs from / (1)
```
This patch takes into account address-cells and size-cells of the root
node and uses them as values for new reserved-memory node.
Signed-off-by: Andrey Skvortsov <andrej.skvortzov@gmail.com>
---
cmd/pstore.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/cmd/pstore.c b/cmd/pstore.c
index cd6f6feb2f..9795eea2db 100644
--- a/cmd/pstore.c
+++ b/cmd/pstore.c
@@ -486,6 +486,8 @@ void fdt_fixup_pstore(void *blob)
{
char node[32];
int nodeoffset; /* node offset from libfdt */
+ u32 addr_cells_root;
+ u32 size_cells_root;
u32 addr_cells;
u32 size_cells;
@@ -495,6 +497,8 @@ void fdt_fixup_pstore(void *blob)
log_err("fdt_path_offset() returned %s\n", fdt_strerror(nodeoffset));
return;
}
+ addr_cells_root = fdt_getprop_u32_default_node(blob, nodeoffset, 0, "#address-cells", 2);
+ size_cells_root = fdt_getprop_u32_default_node(blob, nodeoffset, 0, "#size-cells", 2);
nodeoffset = fdt_find_or_add_subnode(blob, nodeoffset, "reserved-memory");
if (nodeoffset < 0) {
@@ -503,8 +507,10 @@ void fdt_fixup_pstore(void *blob)
return;
}
- addr_cells = fdt_getprop_u32_default_node(blob, nodeoffset, 0, "#address-cells", 2);
- size_cells = fdt_getprop_u32_default_node(blob, nodeoffset, 0, "#size-cells", 2);
+ addr_cells = fdt_getprop_u32_default_node(blob, nodeoffset, 0,
+ "#address-cells", addr_cells_root);
+ size_cells = fdt_getprop_u32_default_node(blob, nodeoffset, 0,
+ "#size-cells", size_cells_root);
fdt_setprop_u32(blob, nodeoffset, "#address-cells", addr_cells);
fdt_setprop_u32(blob, nodeoffset, "#size-cells", size_cells);
--
2.40.1
next reply other threads:[~2023-08-26 12:17 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-26 12:16 Andrey Skvortsov [this message]
2023-08-26 13:10 ` [PATCH] pstore: Use root address-cells/size-cells as defaults for reserved-memory Heinrich Schuchardt
2023-08-26 18:41 ` Andre Przywara
2023-10-16 12:23 ` Andrey Skvortsov
2023-08-26 20:06 ` Andrey Skvortsov
2023-10-24 23:16 ` Tom Rini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230826121652.2487643-1-andrej.skvortzov@gmail.com \
--to=andrej.skvortzov@gmail.com \
--cc=andre.przywara@arm.com \
--cc=arnaud.ferraris@collabora.com \
--cc=detlev.casanova@collabora.com \
--cc=frederic.danis@collabora.com \
--cc=jernej.skrabec@gmail.com \
--cc=kernel@undef.tools \
--cc=pavel@ucw.cz \
--cc=samuel@sholland.org \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.