U-Boot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Tom Rini <trini@konsulko.com>
To: Simon Glass <sjg@chromium.org>
Cc: "Raymond Mao" <raymond.mao@linaro.org>,
	"U-Boot Mailing List" <u-boot@lists.denx.de>,
	"Andrew Goodbody" <andrew.goodbody@linaro.org>,
	"Caleb Connolly" <caleb.connolly@linaro.org>,
	"Evgeny Bachinin" <EABachinin@salutedevices.com>,
	"Harrison Mutai" <harrison.mutai@arm.com>,
	"Jan Kiszka" <jan.kiszka@siemens.com>,
	"Jerry Van Baren" <vanbaren@cideas.com>,
	"Lad Prabhakar" <prabhakar.mahadev-lad.rj@bp.renesas.com>,
	"Levi Yun" <yeoreum.yun@arm.com>,
	"Marek Behún" <kabel@kernel.org>,
	"Marek Vasut" <marek.vasut+renesas@mailbox.org>,
	"Marek Vasut" <marex@denx.de>,
	"Matthias Brugger" <mbrugger@suse.com>,
	"Neil Armstrong" <neil.armstrong@linaro.org>,
	"Patrick Rudolph" <patrick.rudolph@9elements.com>,
	"Quentin Schulz" <quentin.schulz@cherry.de>,
	"Sumit Garg" <sumit.garg@kernel.org>,
	"This contributor prefers not to receive mails"
	<noreply@example.com>, mason1920 <mason1920@use.startmail.com>
Subject: Re: [PATCH 0/4] bloblist: fdt: Clean up the code
Date: Mon, 7 Apr 2025 08:30:56 -0600	[thread overview]
Message-ID: <20250407143056.GL5495@bill-the-cat> (raw)
In-Reply-To: <CAFLszTjLugnmipzzCcAttyvZqQdohNV==jDj_mGzs2_1eFJw1w@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 7223 bytes --]

On Mon, Apr 07, 2025 at 12:35:15PM +1200, Simon Glass wrote:
> Hi Tom,
> 
> On Mon, 7 Apr 2025 at 10:38, Tom Rini <trini@konsulko.com> wrote:
> >
> > On Mon, Apr 07, 2025 at 10:06:07AM +1200, Simon Glass wrote:
> > > Hi Tom,
> > >
> > > On Sat, 5 Apr 2025 at 06:57, Tom Rini <trini@konsulko.com> wrote:
> > > >
> > > > On Sat, Apr 05, 2025 at 06:39:39AM +1300, Simon Glass wrote:
> > > > > Hi Tom,
> > > > >
> > > > > On Fri, 4 Apr 2025 at 11:51, Tom Rini <trini@konsulko.com> wrote:
> > > > > >
> > > > > > On Fri, Apr 04, 2025 at 11:41:08AM +1300, Simon Glass wrote:
> > > > > > > Hi Tom,
> > > > > > >
> > > > > > > On Fri, 4 Apr 2025 at 10:52, Tom Rini <trini@konsulko.com> wrote:
> > > > > > > >
> > > > > > > > On Fri, Apr 04, 2025 at 09:40:29AM +1300, Simon Glass wrote:
> > > > > > > > > Hi Raymond,
> > > > > > > > >
> > > > > > > > > On Fri, 4 Apr 2025 at 08:54, Raymond Mao <raymond.mao@linaro.org> wrote:
> > > > > > > > > >
> > > > > > > > > > Hi Simon,
> > > > > > > > > >
> > > > > > > > > > On Thu, 3 Apr 2025 at 14:18, Simon Glass <sjg@chromium.org> wrote:
> > > > > > > > > > >
> > > > > > > > > > > Hi Raymond,
> > > > > > > > > > >
> > > > > > > > > > > On Fri, 4 Apr 2025 at 07:13, Raymond Mao <raymond.mao@linaro.org> wrote:
> > > > > > > > > > > >
> > > > > > > > > > > > Hi Simon,
> > > > > > > > > > > >
> > > > > > > > > > > > On Thu, 3 Apr 2025 at 13:57, Simon Glass <sjg@chromium.org> wrote:
> > > > > > > > > > > > >
> > > > > > > > > > > > > Hi Raymond,
> > > > > > > > > > > > >
> > > > > > > > > > > > > On Fri, 4 Apr 2025 at 03:09, Raymond Mao <raymond.mao@linaro.org> wrote:
> > > > > > > > > > > > > >
> > > > > > > > > > > > > > Hi Simon,
> > > > > > > > > > > > > >
> > > > > > > > > > > > > > On Fri, 28 Mar 2025 at 11:44, Simon Glass <sjg@chromium.org> wrote:
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > The bloblist code took what I consider to be a wrong turn a year or so
> > > > > > > > > > > > > > > ago. As discussed with Tom, this series proposes a way to arrange things
> > > > > > > > > > > > > > > so that it is simpler to understand and manage.
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > - Unwind some of the nesting in bloblist_init()
> > > > > > > > > > > > > > > - Avoid needing to init the bloblist just to get the FDT
> > > > > > > > > > > > > > > - Create a deterministic OF_BLOBLIST option rather than using guesswork
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > We now have a kconfig BLOBLIST_PASSAGE_MANDATORY which means
> > > > > > > > > > > > > > mandatorily use bloblist to hand over everything between boot stages
> > > > > > > > > > > > > > including fdt, creating OF_BLOBLIST is not necessary.
> > > > > > > > > > > > >
> > > > > > > > > > > > > Yes, I noticed that, but BLOBLIST_PASSAGE_MANDATORY indicates that
> > > > > > > > > > > > > there must be a bloblist, not that it must contain a devicetree. So I
> > > > > > > > > > > > > wasn't sure about removing it.
> > > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > See my comments to your [2/4] patch, if BLOBLIST_PASSAGE_MANDATORY is
> > > > > > > > > > > > selected, we can override any fdt from board or env with the one from
> > > > > > > > > > > > the bloblist.
> > > > > > > > > > >
> > > > > > > > > > > Yes, but we should be explicit about what is going on here. With
> > > > > > > > > > > OF_BLOBLIST we indicate that the devicetree is coming from the
> > > > > > > > > > > bloblist. It becomes one of the sources for devicetree, like
> > > > > > > > > > > OF_SEPARATE and OF_EMBED
> > > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > BLOBLIST_PASSAGE_MANDATORY indicates the fdt from bloblist will be
> > > > > > > > > > mandatorily used and override other fdt sources like from the board or
> > > > > > > > > > env variables.
> > > > > > > > >
> > > > > > > > > So long as you are OK with OF_BLOBLIST as well, I have no objection to
> > > > > > > > > keeping BLOBLIST_PASSAGE_MANDATORY, although I don't like the name
> > > > > > > > > very much. But I can see why it is called that as my standard passage
> > > > > > > > > series was actually never applied. So I suppose I'll need to have
> > > > > > > > > another try at that.
> > > > > > > > >
> > > > > > > > > So to be clear, I want a separate option for devicetree, called
> > > > > > > > > OF_BLOBLIST, which I can enable/disable as needed, without affecting
> > > > > > > > > your option.
> > > > > > > >
> > > > > > > > Sigh. Can I ask what the use case for this will be? And we are going to
> > > > > > > > get rid of BLOBLIST_FIXED at some point, yes?
> > > > > > >
> > > > > > > I thought we agreed that this was acceptable. We argued the toss for
> > > > > > > months on this point and I would rather not revisit it.
> > > > > > >
> > > > > > > Yes, I will look at removing BLOBLIST_FIXED once this is in. I'm
> > > > > > > pretty sure it can be done. The only tricky bit is coming up with a
> > > > > > > bloblist protocol for x86.
> > > > > >
> > > > > > Yes, I'm stuck between being "flexible and saying yes" and how long we
> > > > > > have to live with what I also think are bad designs.
> > > > > >
> > > > > > So maybe the pre-requisite here is that with "bloblist" and "standard
> > > > > > passage" being divorced, what is the requirement for bloblist again?
> > > > > > Because in practice, all of the problems we've had come down to looking
> > > > > > in fixed address locations before they're valid. You want to handle this
> > > > > > by saying "Ah, we won't look before it's valid with other CONFIG flags"
> > > > > > and I say we should handle this by not using a fixed address to start
> > > > > > with.
> > > > > >
> > > > > > If we have to add OF_BLOBLIST now and delete it in a few months, sigh,
> > > > > > OK. But it shouldn't need to exist long term.
> > > > >
> > > > > For me, OF_BLOBLIST is needed for x86 devices which don't pass the
> > > > > devicetree in the bloblist.
> > > >
> > > > I don't understand why that would become the case when it's not true
> > > > today.
> > >
> > > If you look at the top obbfdtdec_setup() in your tree you can see the
> > > special-case code related to TPL, that I'm wanting to get rid of.
> >
> > OK, but all of that too is for the case of a fixed bloblist being in
> > uninitialized memory. Which is why I don't like BLOBLIST_FIXED and want
> > to see passing of the bloblist from xPL -> PPL be implemented and so xPL
> > can allocate a bloblist (or grow a passed one if needed).
> 
> We are going around in circles though. Having it is registers doesn't
> help with the problem that there isn't an FDT in the bloblist.

Sure it does. If we're passed a bloblist in a register we can then see
if it has a DT (and use it) or not (and move to the next DT location).

> Also, I thought you decided that I could maintain bloblist. Have you
> changed your mind?

You just mis-understood me. Yes, you can maintain bloblist. But also,
Yes, I need to understand what you're doing. The root of the OF_BLOBLIST
problems is that no one understood you.

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

  reply	other threads:[~2025-04-07 14:31 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-28 15:43 [PATCH 0/4] bloblist: fdt: Clean up the code Simon Glass
2025-03-28 15:43 ` [PATCH 1/4] bloblist: Simplify bloblist init Simon Glass
2025-03-28 15:43 ` [PATCH 2/4] fdt: Introduce OF_BLOBLIST Simon Glass
2025-04-03 15:34   ` Raymond Mao
2025-04-03 17:57     ` Simon Glass
2025-03-28 15:43 ` [PATCH 3/4] bloblist: Provide access to the FDT address Simon Glass
2025-03-28 15:43 ` [PATCH 4/4] fdt: Obtain the FDT from bloblist without parsing it Simon Glass
2025-03-28 16:18 ` [PATCH 0/4] bloblist: fdt: Clean up the code Tom Rini
2025-03-28 23:38   ` Simon Glass
2025-03-29  0:02     ` Tom Rini
2025-03-29  1:00       ` Raymond Mao
2025-04-04 14:48         ` Raymond Mao
2025-04-04 14:53           ` Raymond Mao
2025-04-04 17:40           ` Simon Glass
2025-04-04 17:55             ` Tom Rini
2025-04-04 18:09             ` Raymond Mao
2025-04-06 22:06               ` Simon Glass
2025-04-06 22:35                 ` Tom Rini
2025-04-07 14:07                 ` Raymond Mao
2025-04-13 21:13                   ` Simon Glass
2025-04-14 13:07                     ` Raymond Mao
2025-04-14 19:34                       ` Simon Glass
2025-04-14 19:43                         ` Raymond Mao
2025-04-14 20:05                           ` Simon Glass
2025-04-14 20:16                             ` Raymond Mao
2025-04-14 20:41                               ` Simon Glass
2025-04-14 20:47                                 ` Simon Glass
2025-04-15  0:32                                   ` Raymond Mao
2025-04-17 13:14                                     ` Simon Glass
2025-04-03 14:09 ` Raymond Mao
2025-04-03 17:57   ` Simon Glass
2025-04-03 18:12     ` Raymond Mao
2025-04-03 18:18       ` Simon Glass
2025-04-03 19:54         ` Raymond Mao
2025-04-03 20:40           ` Simon Glass
2025-04-03 21:52             ` Tom Rini
2025-04-03 22:41               ` Simon Glass
2025-04-03 22:50                 ` Tom Rini
2025-04-04 17:39                   ` Simon Glass
2025-04-04 17:57                     ` Tom Rini
2025-04-06 22:06                       ` Simon Glass
2025-04-06 22:38                         ` Tom Rini
2025-04-07  0:35                           ` Simon Glass
2025-04-07 14:30                             ` Tom Rini [this message]
2025-04-07 15:24                               ` Simon Glass
2025-04-07 18:22                                 ` Tom Rini
2025-04-07 20:17                                   ` Simon Glass
2025-04-07 20:34                                     ` Tom Rini
2025-04-14 19:34                               ` Simon Glass
2025-04-14 20:34                                 ` Tom Rini
2025-04-17 13:14                                   ` Simon Glass
2025-04-17 14:14                                     ` Tom Rini
2025-04-17 21:24                                       ` Simon Glass
2025-04-17 21:58                                         ` Tom Rini
2025-04-17 22:02                                           ` Simon Glass
2025-04-17 22:14                                             ` Tom Rini
2025-04-17 22:28                                               ` Simon Glass
2025-04-17 22:37                                                 ` 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=20250407143056.GL5495@bill-the-cat \
    --to=trini@konsulko.com \
    --cc=EABachinin@salutedevices.com \
    --cc=andrew.goodbody@linaro.org \
    --cc=caleb.connolly@linaro.org \
    --cc=harrison.mutai@arm.com \
    --cc=jan.kiszka@siemens.com \
    --cc=kabel@kernel.org \
    --cc=marek.vasut+renesas@mailbox.org \
    --cc=marex@denx.de \
    --cc=mason1920@use.startmail.com \
    --cc=mbrugger@suse.com \
    --cc=neil.armstrong@linaro.org \
    --cc=noreply@example.com \
    --cc=patrick.rudolph@9elements.com \
    --cc=prabhakar.mahadev-lad.rj@bp.renesas.com \
    --cc=quentin.schulz@cherry.de \
    --cc=raymond.mao@linaro.org \
    --cc=sjg@chromium.org \
    --cc=sumit.garg@kernel.org \
    --cc=u-boot@lists.denx.de \
    --cc=vanbaren@cideas.com \
    --cc=yeoreum.yun@arm.com \
    /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