public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Andrey Skvortsov <andrej.skvortzov@gmail.com>
To: Heinrich Schuchardt <xypron.glpk@gmx.de>
Cc: "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>
Subject: Re: [PATCH] pstore: Use root address-cells/size-cells as defaults for reserved-memory
Date: Sat, 26 Aug 2023 23:06:17 +0300	[thread overview]
Message-ID: <ZOpbOcsTUFkxdh/5@skv.local> (raw)
In-Reply-To: <f9fc81a5-1505-4cb3-8b65-798ddf16e1aa@gmx.de>

Hi Heinrich,

On 23-08-26 15:10, Heinrich Schuchardt wrote:
> On 8/26/23 14:16, Andrey Skvortsov wrote:
> > u-boot adds reserve-memory node, if it's missing, with following
> > properties:
> > 
> > ```
> >      reserved-memory {
> >           #address-cells = <2>;
> >           #size-cells = <2>;
> 
> This defines the size of cells for the children of reserved-memory and
> and for the ranges property. If you set the cell sizes to 1 you can no
> longer encode 64 bit addresses.

This will be limited to 32 bit only for platforms, that don't support
64 bit. These platforms explicitly defines #address-cells = 1 and #size-cells = 1 in
root node.


> >           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)
> 
> I cannot find any such requirement in the Devicetree Specification 1.4.
> Is this a dtc bug?

This is current behavior of Linux kernel. When root #address-cells and
reserved-memory #address-cells don't match, then reserved-memory
region is ignored. See [1].

dmesg output:
```
 OF: fdt: Reserved memory: unsupported node format, ignoring
```

> > This patch takes into account address-cells and size-cells of the root
> > node and uses them as values for new reserved-memory node.
> 
> Reservations may be above 4 GiB. How does your patch consider this?

It's entirely possible to do on platforms, that support that. Default
fallback value is still 2 for #address-cells and #size-cells.


1. https://elixir.bootlin.com/linux/latest/source/drivers/of/fdt.c#L548

-- 
Best regards,
Andrey Skvortsov

  parent reply	other threads:[~2023-08-26 20:06 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-26 12:16 [PATCH] pstore: Use root address-cells/size-cells as defaults for reserved-memory Andrey Skvortsov
2023-08-26 13:10 ` Heinrich Schuchardt
2023-08-26 18:41   ` Andre Przywara
2023-10-16 12:23     ` Andrey Skvortsov
2023-08-26 20:06   ` Andrey Skvortsov [this message]
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=ZOpbOcsTUFkxdh/5@skv.local \
    --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 \
    --cc=xypron.glpk@gmx.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox